sufia-models 6.2.0 → 6.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (81) hide show
  1. checksums.yaml +4 -4
  2. data/app/actors/sufia/generic_file/actor.rb +4 -7
  3. data/app/jobs/active_fedora_id_based_job.rb +1 -1
  4. data/app/jobs/active_fedora_pid_based_job.rb +1 -2
  5. data/app/jobs/audit_job.rb +1 -1
  6. data/app/jobs/batch_update_job.rb +6 -6
  7. data/app/jobs/create_derivatives_job.rb +2 -3
  8. data/app/jobs/import_url_job.rb +8 -5
  9. data/app/jobs/ingest_local_file_job.rb +1 -1
  10. data/app/models/batch.rb +15 -21
  11. data/app/models/checksum_audit_log.rb +0 -1
  12. data/app/models/concerns/sufia/ability.rb +5 -0
  13. data/app/models/concerns/sufia/collection_behavior.rb +3 -2
  14. data/app/models/concerns/sufia/file_stat_utils.rb +19 -21
  15. data/app/models/concerns/sufia/generic_file/batches.rb +1 -3
  16. data/app/models/concerns/sufia/generic_file/characterization.rb +11 -16
  17. data/app/models/concerns/sufia/generic_file/content.rb +0 -1
  18. data/app/models/concerns/sufia/generic_file/derivatives.rb +2 -2
  19. data/app/models/concerns/sufia/generic_file/export.rb +50 -59
  20. data/app/models/concerns/sufia/generic_file/full_text_indexing.rb +15 -18
  21. data/app/models/concerns/sufia/generic_file/metadata.rb +0 -2
  22. data/app/models/concerns/sufia/generic_file/mime_types.rb +9 -9
  23. data/app/models/concerns/sufia/generic_file/permissions.rb +0 -1
  24. data/app/models/concerns/sufia/generic_file/proxy_deposit.rb +0 -1
  25. data/app/models/concerns/sufia/generic_file/querying.rb +9 -5
  26. data/app/models/concerns/sufia/generic_file/trophies.rb +1 -1
  27. data/app/models/concerns/sufia/generic_file/versions.rb +0 -4
  28. data/app/models/concerns/sufia/model_methods.rb +0 -1
  29. data/app/models/concerns/sufia/user.rb +15 -15
  30. data/app/models/concerns/sufia/user_usage_stats.rb +0 -2
  31. data/app/models/datastreams/fits_datastream.rb +25 -25
  32. data/app/models/domain_term.rb +2 -3
  33. data/app/models/featured_work.rb +3 -5
  34. data/app/models/file_download_stat.rb +3 -4
  35. data/app/models/file_usage.rb +10 -11
  36. data/app/models/file_view_stat.rb +3 -3
  37. data/app/models/follow.rb +1 -1
  38. data/app/models/geo_names_resource.rb +3 -3
  39. data/app/models/group.rb +1 -3
  40. data/app/models/local_authority.rb +26 -28
  41. data/app/models/proxy_deposit_request.rb +9 -9
  42. data/app/models/single_use_link.rb +10 -18
  43. data/app/models/sufia/download.rb +2 -2
  44. data/app/models/sufia/pageview.rb +1 -1
  45. data/app/models/trophy.rb +2 -4
  46. data/app/services/sufia/analytics.rb +10 -11
  47. data/app/services/sufia/generic_file_audit_service.rb +11 -12
  48. data/app/services/sufia/repository_audit_service.rb +1 -1
  49. data/config/locales/sufia.en.yml +2 -0
  50. data/lib/generators/sufia/models/abstract_migration_generator.rb +7 -6
  51. data/lib/generators/sufia/models/install_generator.rb +3 -3
  52. data/lib/generators/sufia/models/templates/config/arkivo_constraint.rb +1 -1
  53. data/lib/generators/sufia/models/templates/config/clamav.rb +1 -1
  54. data/lib/generators/sufia/models/templates/config/redis_config.rb +13 -5
  55. data/lib/generators/sufia/models/templates/config/resque_admin.rb +2 -2
  56. data/lib/generators/sufia/models/templates/config/resque_config.rb +1 -1
  57. data/lib/generators/sufia/models/templates/config/sufia.rb +10 -4
  58. data/lib/generators/sufia/models/templates/migrations/create_checksum_audit_logs.rb +1 -1
  59. data/lib/generators/sufia/models/templates/migrations/create_file_download_stats.rb +1 -1
  60. data/lib/generators/sufia/models/templates/migrations/create_file_view_stats.rb +1 -1
  61. data/lib/generators/sufia/models/templates/migrations/create_local_authorities.rb +1 -1
  62. data/lib/generators/sufia/models/update_content_blocks_generator.rb +0 -1
  63. data/lib/generators/sufia/models/upgrade600_generator.rb +0 -1
  64. data/lib/generators/sufia/models/user_stats_generator.rb +2 -2
  65. data/lib/sufia/messages.rb +17 -17
  66. data/lib/sufia/models.rb +1 -1
  67. data/lib/sufia/models/active_fedora/redis.rb +1 -4
  68. data/lib/sufia/models/active_record/redis.rb +2 -3
  69. data/lib/sufia/models/engine.rb +12 -7
  70. data/lib/sufia/models/file_content/versions.rb +0 -1
  71. data/lib/sufia/models/resque.rb +2 -2
  72. data/lib/sufia/models/stats/user_stat_importer.rb +65 -67
  73. data/lib/sufia/models/user_local_directory_behavior.rb +9 -13
  74. data/lib/sufia/models/utils.rb +1 -2
  75. data/lib/sufia/models/version.rb +1 -1
  76. data/lib/sufia/permissions.rb +0 -1
  77. data/lib/sufia/permissions/readable.rb +0 -1
  78. data/lib/sufia/permissions/writable.rb +20 -23
  79. data/lib/tasks/sufia-models_tasks.rake +18 -0
  80. data/sufia-models.gemspec +1 -1
  81. metadata +5 -5
@@ -2,7 +2,7 @@ module Sufia
2
2
  class RepositoryAuditService
3
3
  def self.audit_everything
4
4
  ::GenericFile.find_each do |gf|
5
- gf.audit
5
+ Sufia::GenericFileAuditService.new(gf).audit
6
6
  end
7
7
  end
8
8
  end
@@ -4,3 +4,5 @@ en:
4
4
  product_twitter_handle: "@HydraSphere"
5
5
  institution_name: "Institution Name"
6
6
  institution_name_full: "The Institution Name"
7
+ sort_label: "Sort the listing of items"
8
+
@@ -11,7 +11,8 @@ class Sufia::Models::AbstractMigrationGenerator < Rails::Generators::Base
11
11
  if @prev_migration_nr
12
12
  @prev_migration_nr += 1
13
13
  else
14
- if last_migration = Dir[File.join(path, '*.rb')].sort.last
14
+ last_migration = Dir[File.join(path, '*.rb')].sort.last
15
+ if last_migration
15
16
  @prev_migration_nr = last_migration.sub(File.join(path, '/'), '').to_i + 1
16
17
  else
17
18
  @prev_migration_nr = Time.now.utc.strftime("%Y%m%d%H%M%S").to_i
@@ -22,9 +23,9 @@ class Sufia::Models::AbstractMigrationGenerator < Rails::Generators::Base
22
23
 
23
24
  protected
24
25
 
25
- def better_migration_template(file)
26
- migration_template "migrations/#{file}", "db/migrate/#{file}"
27
- rescue Rails::Generators::Error => e
28
- say_status("error", e.message, :red)
29
- end
26
+ def better_migration_template(file)
27
+ migration_template "migrations/#{file}", "db/migrate/#{file}"
28
+ rescue Rails::Generators::Error => e
29
+ say_status("error", e.message, :red)
30
+ end
30
31
  end
@@ -2,7 +2,7 @@ require_relative 'abstract_migration_generator'
2
2
 
3
3
  class Sufia::Models::InstallGenerator < Sufia::Models::AbstractMigrationGenerator
4
4
  source_root File.expand_path('../templates', __FILE__)
5
- argument :model_name, type: :string , default: "user"
5
+ argument :model_name, type: :string, default: "user"
6
6
  desc """
7
7
  This generator makes the following changes to your application:
8
8
  1. Creates several database migrations if they do not exist in /db/migrate
@@ -46,7 +46,7 @@ This generator makes the following changes to your application:
46
46
  # Add behaviors to the user model
47
47
  def inject_sufia_user_behavior
48
48
  file_path = "app/models/#{model_name.underscore}.rb"
49
- if File.exists?(file_path)
49
+ if File.exist?(file_path)
50
50
  inject_into_file file_path, after: /include Hydra\:\:User.*$/ do
51
51
  "# Connects this user object to Sufia behaviors. " +
52
52
  "\n include Sufia::User\n"
@@ -58,7 +58,7 @@ This generator makes the following changes to your application:
58
58
 
59
59
  def create_configuration_files
60
60
  append_file 'config/initializers/mime_types.rb',
61
- "\nMime::Type.register 'application/x-endnote-refer', :endnote", {verbose: false }
61
+ "\nMime::Type.register 'application/x-endnote-refer', :endnote", verbose: false
62
62
  copy_file 'config/sufia.rb', 'config/initializers/sufia.rb'
63
63
  copy_file 'config/redis.yml', 'config/redis.yml'
64
64
  copy_file 'config/resque-pool.yml', 'config/resque-pool.yml'
@@ -1,6 +1,6 @@
1
1
  module Sufia
2
2
  class ArkivoConstraint
3
- def self.matches?(request)
3
+ def self.matches?(_request)
4
4
  # Add your own logic here to authorize trusted connections to
5
5
  # the API e.g., if your installation of Arkivo runs on a host
6
6
  # with the 10.0.0.3 IP address, you could use:
@@ -1 +1 @@
1
- ClamAV.instance.loaddb() if defined? ClamAV
1
+ ClamAV.instance.loaddb if defined? ClamAV
@@ -4,24 +4,32 @@ if defined?(PhusionPassenger)
4
4
  if forked
5
5
  # Re-establish redis connection
6
6
  require 'redis'
7
- config = YAML::load(ERB.new(IO.read(File.join(Rails.root, 'config', 'redis.yml'))).result)[Rails.env].with_indifferent_access
7
+ config = YAML.load(ERB.new(IO.read(File.join(Rails.root, 'config', 'redis.yml'))).result)[Rails.env].with_indifferent_access
8
8
 
9
9
  # The important two lines
10
10
  $redis.client.disconnect if $redis
11
- $redis = Redis.new(host: config[:host], port: config[:port], thread_safe: true) rescue nil
11
+ $redis = begin
12
+ Redis.new(host: config[:host], port: config[:port], thread_safe: true)
13
+ rescue
14
+ nil
15
+ end
12
16
  Resque.redis = $redis
13
17
  Resque.redis.client.reconnect if Resque.redis
14
18
  Resque.redis.namespace = "#{Sufia.config.redis_namespace}:#{Rails.env}"
15
19
  end
16
20
  end
17
21
  else
18
- config = YAML::load(ERB.new(IO.read(File.join(Rails.root, 'config', 'redis.yml'))).result)[Rails.env].with_indifferent_access
19
- $redis = Redis.new(host: config[:host], port: config[:port], thread_safe: true) rescue nil
22
+ config = YAML.load(ERB.new(IO.read(File.join(Rails.root, 'config', 'redis.yml'))).result)[Rails.env].with_indifferent_access
23
+ $redis = begin
24
+ Redis.new(host: config[:host], port: config[:port], thread_safe: true)
25
+ rescue
26
+ nil
27
+ end
20
28
  end
21
29
 
22
30
  # Code borrowed from Obie's Redis patterns talk at RailsConf'12
23
31
  Nest.class_eval do
24
- def initialize(key, redis=$redis)
32
+ def initialize(key, redis = $redis)
25
33
  super(key.to_param)
26
34
  @redis = redis
27
35
  end
@@ -3,8 +3,8 @@ module Sufia
3
3
  def self.matches?(request)
4
4
  current_user = request.env['warden'].user
5
5
  return false if current_user.blank?
6
- # TODO code a group here that makes sense
7
- #current_user.groups.include? 'umg/up.dlt.scholarsphere-admin'
6
+ # TODO: code a group here that makes sense
7
+ # current_user.groups.include? 'umg/up.dlt.scholarsphere-admin'
8
8
  end
9
9
  end
10
10
  end
@@ -1,4 +1,4 @@
1
- config = YAML::load(ERB.new(IO.read(File.join(Rails.root, 'config', 'redis.yml'))).result)[Rails.env].with_indifferent_access
1
+ config = YAML.load(ERB.new(IO.read(File.join(Rails.root, 'config', 'redis.yml'))).result)[Rails.env].with_indifferent_access
2
2
  Resque.redis = Redis.new(host: config[:host], port: config[:port], thread_safe: true)
3
3
 
4
4
  Resque.inline = Rails.env.test?
@@ -42,7 +42,7 @@ Sufia.config do |config|
42
42
  "Research Paper" => "Research Paper",
43
43
  "Software or Program Code" => "Software or Program Code",
44
44
  "Video" => "Video",
45
- "Other" => "Other",
45
+ "Other" => "Other"
46
46
  }
47
47
 
48
48
  config.resource_types_to_schema = {
@@ -65,11 +65,11 @@ Sufia.config do |config|
65
65
  "Research Paper" => "http://schema.org/ScholarlyArticle",
66
66
  "Software or Program Code" => "http://schema.org/Code",
67
67
  "Video" => "http://schema.org/VideoObject",
68
- "Other" => "http://schema.org/CreativeWork",
68
+ "Other" => "http://schema.org/CreativeWork"
69
69
  }
70
70
 
71
71
  config.permission_levels = {
72
- "Choose Access"=>"none",
72
+ "Choose Access" => "none",
73
73
  "View/Download" => "read",
74
74
  "Edit" => "edit"
75
75
  }
@@ -107,6 +107,13 @@ Sufia.config do |config|
107
107
  # Specify a different template for your repository's NOID IDs
108
108
  # config.noid_template = ".reeddeeddk"
109
109
 
110
+ # Store identifier minter's state in a file for later replayability
111
+ # config.minter_statefile = '/tmp/minter-state'
112
+
113
+ # Process for translating Fedora URIs to identifiers and vice versa
114
+ # config.translate_uri_to_id = ActiveFedora::Noid.config.translate_uri_to_id
115
+ # config.translate_id_to_uri = ActiveFedora::Noid.config.translate_id_to_uri
116
+
110
117
  # Specify the prefix for Redis keys:
111
118
  # config.redis_namespace = "sufia"
112
119
 
@@ -135,7 +142,6 @@ Sufia.config do |config|
135
142
  rescue Errno::ENOENT
136
143
  config.browse_everything = nil
137
144
  end
138
-
139
145
  end
140
146
 
141
147
  Date::DATE_FORMATS[:standard] = "%m/%d/%Y"
@@ -9,7 +9,7 @@ class CreateChecksumAuditLogs < ActiveRecord::Migration
9
9
  t.string :actual_result
10
10
  t.timestamps
11
11
  end
12
- add_index :checksum_audit_logs, [:pid, :dsid], name: 'by_pid_and_dsid', order: {created_at: "DESC" }
12
+ add_index :checksum_audit_logs, [:pid, :dsid], name: 'by_pid_and_dsid', order: { created_at: "DESC" }
13
13
  end
14
14
 
15
15
  def self.down
@@ -3,7 +3,7 @@ class CreateFileDownloadStats < ActiveRecord::Migration
3
3
  create_table :file_download_stats do |t|
4
4
  t.datetime :date
5
5
  t.integer :downloads
6
- t.string :file_id
6
+ t.string :file_id
7
7
 
8
8
  t.timestamps
9
9
  end
@@ -3,7 +3,7 @@ class CreateFileViewStats < ActiveRecord::Migration
3
3
  create_table :file_view_stats do |t|
4
4
  t.datetime :date
5
5
  t.integer :views
6
- t.string :file_id
6
+ t.string :file_id
7
7
 
8
8
  t.timestamps
9
9
  end
@@ -20,7 +20,7 @@ class CreateLocalAuthorities < ActiveRecord::Migration
20
20
  t.integer :local_authority_id, foreign_key: true
21
21
  end
22
22
 
23
- create_table :subject_local_authority_entries, force: true do |t|
23
+ create_table :subject_local_authority_entries, force: true do |t|
24
24
  t.string :label
25
25
  t.string :lowerLabel
26
26
  t.string :url
@@ -14,5 +14,4 @@ This generator creates a database migration to add an external_key column to the
14
14
  def copy_migrations
15
15
  better_migration_template 'add_external_key_to_content_blocks.rb'
16
16
  end
17
-
18
17
  end
@@ -18,4 +18,3 @@ This generator for upgrading sufia-models to 6.0 makes the following changes to
18
18
  end
19
19
  end
20
20
  end
21
-
@@ -2,7 +2,7 @@ require_relative 'abstract_migration_generator'
2
2
 
3
3
  class Sufia::Models::UserStatsGenerator < Sufia::Models::AbstractMigrationGenerator
4
4
  source_root File.expand_path('../templates', __FILE__)
5
- argument :model_name, type: :string , default: "user"
5
+ argument :model_name, type: :string, default: "user"
6
6
 
7
7
  desc """
8
8
  This generator adds usage stats methods to the user model in your application:
@@ -20,7 +20,7 @@ This generator adds usage stats methods to the user model in your application:
20
20
  def add_stats_mixin_to_user_model
21
21
  file_path = "app/models/#{model_name.underscore}.rb"
22
22
 
23
- if File.exists?(file_path)
23
+ if File.exist?(file_path)
24
24
  inject_into_file file_path, after: /include Sufia\:\:User.*$/ do
25
25
  "\n include Sufia::UserUsageStats"
26
26
  end
@@ -15,52 +15,52 @@ module Sufia
15
15
  I18n.t("sufia.messages.failure.subject")
16
16
  end
17
17
 
18
- def single_success id, file
19
- content_tag :span, id: "ss-"+id do
18
+ def single_success(id, file)
19
+ content_tag :span, id: "ss-" + id do
20
20
  [link_to_file(file), I18n.t("sufia.messages.success.single")].join(" ").html_safe
21
21
  end
22
22
  end
23
23
 
24
- def multiple_success id, files
25
- content_tag :span, id: "ss-"+id do
24
+ def multiple_success(id, files)
25
+ content_tag :span, id: "ss-" + id do
26
26
  [success_link(files), I18n.t("sufia.messages.success.multiple.tag")].join(" ").html_safe
27
27
  end
28
28
  end
29
29
 
30
- def single_failure id, file
31
- content_tag :span, id: "ss-"+id do
30
+ def single_failure(id, file)
31
+ content_tag :span, id: "ss-" + id do
32
32
  [link_to_file(file), I18n.t("sufia.messages.failure.single")].join(" ").html_safe
33
33
  end
34
34
  end
35
35
 
36
- def multiple_failure id, files
37
- content_tag :span, id: "ss-"+id do
36
+ def multiple_failure(id, files)
37
+ content_tag :span, id: "ss-" + id do
38
38
  [failure_link(files), I18n.t("sufia.messages.failure.multiple.tag")].join(" ").html_safe
39
39
  end
40
40
  end
41
41
 
42
42
  # Double-quotes are replaced with single ones so this list can be included in a data block. Ex:
43
43
  # <a href="#" data-content="<a href='#'>embedded link</a>" rel="popover">Click me</a>
44
- def file_list files
45
- files.map { |gf| link_to_file(gf) }.join(', ').gsub(/"/, "'")
44
+ def file_list(files)
45
+ files.map { |gf| link_to_file(gf) }.join(', ').tr("\"", "'")
46
46
  end
47
47
 
48
- def link_to_file file
48
+ def link_to_file(file)
49
49
  link_to(file.to_s, Sufia::Engine.routes.url_helpers.generic_file_path(file))
50
50
  end
51
51
 
52
52
  private
53
53
 
54
- def success_link files
54
+ def success_link(files)
55
55
  link_to I18n.t("sufia.messages.success.multiple.link"), "#",
56
- rel: "popover",
57
- data: { content: file_list(files).html_safe, title: I18n.t("sufia.messages.success.title") }
56
+ rel: "popover",
57
+ data: { content: file_list(files).html_safe, title: I18n.t("sufia.messages.success.title") }
58
58
  end
59
59
 
60
- def failure_link files
60
+ def failure_link(files)
61
61
  link_to I18n.t("sufia.messages.failure.multiple.link"), "#",
62
- rel: "popover",
63
- data: { content: file_list(files).html_safe, title: I18n.t("sufia.messages.failure.title") }
62
+ rel: "popover",
63
+ data: { content: file_list(files).html_safe, title: I18n.t("sufia.messages.failure.title") }
64
64
  end
65
65
  end
66
66
  end
data/lib/sufia/models.rb CHANGED
@@ -29,6 +29,6 @@ module Sufia
29
29
 
30
30
  yield @@config if block
31
31
 
32
- return @@config
32
+ @@config
33
33
  end
34
34
  end
@@ -12,7 +12,7 @@ module ActiveFedora
12
12
  nil
13
13
  end
14
14
 
15
- def events(size=-1)
15
+ def events(size = -1)
16
16
  stream[:event].lrange(0, size).map do |event_id|
17
17
  {
18
18
  action: $redis.hget("events:#{event_id}", "action"),
@@ -38,6 +38,3 @@ module ActiveFedora
38
38
  end
39
39
  end
40
40
  end
41
-
42
-
43
-
@@ -11,7 +11,7 @@ ActiveRecord::Base.class_eval do
11
11
  nil
12
12
  end
13
13
 
14
- def events(size=-1)
14
+ def events(size = -1)
15
15
  stream[:event].lrange(0, size).map do |event_id|
16
16
  {
17
17
  action: $redis.hget("events:#{event_id}", "action"),
@@ -22,7 +22,7 @@ ActiveRecord::Base.class_eval do
22
22
  []
23
23
  end
24
24
 
25
- def profile_events(size=-1)
25
+ def profile_events(size = -1)
26
26
  stream[:event][:profile].lrange(0, size).map do |event_id|
27
27
  {
28
28
  action: $redis.hget("events:#{event_id}", "action"),
@@ -53,4 +53,3 @@ ActiveRecord::Base.class_eval do
53
53
  nil
54
54
  end
55
55
  end
56
-
@@ -5,11 +5,12 @@ module Sufia
5
5
 
6
6
  yield @@config if block
7
7
 
8
- return @@config
8
+ @@config
9
9
  end
10
10
 
11
11
  class Engine < ::Rails::Engine
12
12
  require 'sufia/models/resque'
13
+ require 'active_fedora/noid'
13
14
 
14
15
  # Set some configuration defaults
15
16
  config.persistent_hostpath = "http://localhost/files/"
@@ -17,9 +18,6 @@ module Sufia
17
18
  config.ffmpeg_path = 'ffmpeg'
18
19
  config.fits_message_length = 5
19
20
  config.temp_file_base = nil
20
- config.enable_noids = true
21
- config.noid_template = '.reeddeeddk'
22
- config.minter_statefile = '/tmp/minter-state'
23
21
  config.redis_namespace = "sufia"
24
22
  config.fits_path = "fits.sh"
25
23
  config.enable_contact_form_delivery = false
@@ -28,10 +26,17 @@ module Sufia
28
26
  config.analytics = false
29
27
  config.queue = Sufia::Resque::Queue
30
28
  config.max_notifications_for_dashboard = 5
31
- config.activity_to_show_default_seconds_since_now = 24*60*60
29
+ config.activity_to_show_default_seconds_since_now = 24 * 60 * 60
32
30
  config.arkivo_api = false
33
31
  config.retry_unless_sleep = 0.0
34
32
 
33
+ # Noid identifiers
34
+ config.enable_noids = true
35
+ config.noid_template = '.reeddeeddk'
36
+ config.minter_statefile = '/tmp/minter-state'
37
+ config.translate_uri_to_id = ActiveFedora::Noid.config.translate_uri_to_id
38
+ config.translate_id_to_uri = ActiveFedora::Noid.config.translate_id_to_uri
39
+
35
40
  # Defaulting analytic start date to whenever the file was uploaded by leaving it blank
36
41
  config.analytic_start_date = nil
37
42
 
@@ -68,8 +73,8 @@ module Sufia
68
73
  Hydra::Derivatives.fits_path = c.fits_path
69
74
  Hydra::Derivatives.enable_ffmpeg = c.enable_ffmpeg
70
75
 
71
- ActiveFedora::Base.translate_uri_to_id = ActiveFedora::Noid.config.translate_uri_to_id
72
- ActiveFedora::Base.translate_id_to_uri = ActiveFedora::Noid.config.translate_id_to_uri
76
+ ActiveFedora::Base.translate_uri_to_id = c.translate_uri_to_id
77
+ ActiveFedora::Base.translate_id_to_uri = c.translate_id_to_uri
73
78
  ActiveFedora::Noid.config.template = c.noid_template
74
79
  ActiveFedora::Noid.config.statefile = c.minter_statefile
75
80
  end
@@ -1,7 +1,6 @@
1
1
  module Sufia
2
2
  module FileContent
3
3
  module Versions
4
-
5
4
  def latest_version
6
5
  versions.last unless versions.empty?
7
6
  end
@@ -18,9 +18,9 @@ module Sufia
18
18
  ActiveFedora::Base.logger.error "Redis is down!"
19
19
  rescue Redis::TimeoutError => error
20
20
  ActiveFedora::Base.logger.warn "Redis Timed out. Trying again! #{job.inspect}"
21
- push_tries+=1
21
+ push_tries += 1
22
22
  # fail for good if the tries is greater than 3
23
- raise error if push_tries >=3
23
+ raise error if push_tries >= 3
24
24
  sleep 0.01
25
25
  retry
26
26
  end