sufia-models 4.0.0.beta2 → 4.0.0.beta3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/app/actors/sufia/generic_file/actor.rb +118 -0
  3. data/app/models/batch.rb +3 -3
  4. data/app/models/checksum_audit_log.rb +3 -3
  5. data/app/models/collection.rb +41 -0
  6. data/{lib/sufia/models → app/models/concerns/sufia}/generic_file.rb +33 -43
  7. data/{lib/sufia/models → app/models/concerns/sufia}/generic_file/accessible_attributes.rb +3 -3
  8. data/{lib/sufia/models → app/models/concerns/sufia}/generic_file/audit.rb +12 -18
  9. data/{lib/sufia/models → app/models/concerns/sufia}/generic_file/characterization.rb +1 -8
  10. data/app/models/concerns/sufia/generic_file/derivatives.rb +26 -0
  11. data/{lib/sufia/models → app/models/concerns/sufia}/generic_file/export.rb +13 -13
  12. data/{lib/sufia/models → app/models/concerns/sufia}/generic_file/featured.rb +0 -0
  13. data/{lib/sufia/models → app/models/concerns/sufia}/generic_file/metadata.rb +0 -0
  14. data/{lib/sufia/models → app/models/concerns/sufia}/generic_file/mime_types.rb +15 -1
  15. data/{lib/sufia/models → app/models/concerns/sufia}/generic_file/permissions.rb +5 -1
  16. data/{lib/sufia/models → app/models/concerns/sufia}/generic_file/reload_on_save.rb +0 -0
  17. data/{lib/sufia/models → app/models/concerns/sufia}/generic_file/trophies.rb +0 -0
  18. data/app/models/concerns/sufia/generic_file/versions.rb +16 -0
  19. data/{lib/sufia/models → app/models/concerns/sufia}/generic_file/virus_check.rb +2 -3
  20. data/{lib/sufia/models → app/models/concerns/sufia}/generic_file/web_form.rb +9 -2
  21. data/app/models/concerns/sufia/properties_datastream_behavior.rb +3 -4
  22. data/app/models/concerns/sufia/user.rb +2 -2
  23. data/app/models/datastreams/fits_datastream.rb +137 -136
  24. data/app/models/datastreams/generic_file_rdf_datastream.rb +6 -0
  25. data/app/models/datastreams/paranoid_rights_datastream.rb +3 -3
  26. data/app/models/file_usage.rb +53 -0
  27. data/app/models/follow.rb +2 -4
  28. data/app/models/geo_names_resource.rb +5 -7
  29. data/app/models/local_authority.rb +14 -14
  30. data/app/models/single_use_link.rb +1 -1
  31. data/app/models/sufia/download.rb +9 -0
  32. data/app/models/trophy.rb +1 -1
  33. data/app/services/sufia/{usage_statistics.rb → analytics.rb} +1 -24
  34. data/app/services/sufia/id_service.rb +2 -2
  35. data/lib/generators/sufia/models/install_generator.rb +5 -2
  36. data/lib/generators/sufia/models/templates/config/setup_mail.rb +1 -1
  37. data/lib/generators/sufia/models/templates/config/sufia.rb +5 -3
  38. data/lib/generators/sufia/models/templates/migrations/acts_as_follower_migration.rb +6 -6
  39. data/lib/generators/sufia/models/templates/migrations/create_checksum_audit_logs.rb +2 -3
  40. data/lib/generators/sufia/models/templates/migrations/create_local_authorities.rb +20 -20
  41. data/lib/sufia/ability.rb +1 -1
  42. data/lib/sufia/models/engine.rb +3 -9
  43. data/lib/sufia/models/file_content/versions.rb +3 -3
  44. data/lib/sufia/models/jobs/active_fedora_pid_based_job.rb +6 -2
  45. data/lib/sufia/models/jobs/batch_update_job.rb +6 -10
  46. data/lib/sufia/models/jobs/characterize_job.rb +1 -13
  47. data/lib/sufia/models/jobs/create_derivatives_job.rb +14 -0
  48. data/lib/sufia/models/jobs/import_url_job.rb +27 -23
  49. data/lib/sufia/models/version.rb +1 -1
  50. data/lib/tasks/sufia-models_tasks.rake +1 -1
  51. data/sufia-models.gemspec +1 -1
  52. metadata +65 -64
  53. data/lib/sufia/models/generic_file/actions.rb +0 -50
  54. data/lib/sufia/models/generic_file/derivatives.rb +0 -31
  55. data/lib/sufia/models/generic_file/thumbnail.rb +0 -37
  56. data/lib/sufia/models/generic_file/versions.rb +0 -16
  57. data/lib/sufia/models/jobs/transcode_audio_job.rb +0 -15
  58. data/lib/sufia/models/jobs/transcode_video_job.rb +0 -15
  59. data/lib/sufia/models/solr_document_behavior.rb +0 -118
@@ -23,6 +23,7 @@ module Sufia
23
23
  config.enable_contact_form_delivery = false
24
24
  config.browse_everything = nil
25
25
  config.enable_local_ingest = nil
26
+ config.usage_statistics = nil
26
27
  config.queue = Sufia::Resque::Queue
27
28
 
28
29
  config.autoload_paths += %W(
@@ -46,19 +47,12 @@ module Sufia
46
47
  require 'sufia/models/model_methods'
47
48
  require 'sufia/models/file_content'
48
49
  require 'sufia/models/file_content/versions'
49
- require 'sufia/models/generic_file/audit'
50
- require 'sufia/models/generic_file/characterization'
51
- require 'sufia/models/generic_file/derivatives'
52
- require 'sufia/models/generic_file/export'
53
- require 'sufia/models/generic_file/mime_types'
54
- require 'sufia/models/generic_file/thumbnail'
55
- require 'sufia/models/generic_file'
56
50
  require 'sufia/models/user_local_directory_behavior'
57
- require 'sufia/models/solr_document_behavior'
58
51
  require 'sufia/noid'
59
52
  require 'sufia/id_service'
60
- require 'sufia/usage_statistics'
53
+ require 'sufia/analytics'
61
54
  require 'sufia/pageview'
55
+ require 'sufia/download'
62
56
  end
63
57
 
64
58
  initializer 'configure' do
@@ -10,9 +10,9 @@ module Sufia
10
10
  end
11
11
 
12
12
  def version_committer(version)
13
- vc = VersionCommitter.where(:obj_id => version.pid,
14
- :datastream_id => version.dsid,
15
- :version_id => version.versionID)
13
+ vc = VersionCommitter.where(obj_id: version.pid,
14
+ datastream_id: version.dsid,
15
+ version_id: version.versionID)
16
16
  return vc.empty? ? nil : vc.first.committer_login
17
17
  end
18
18
 
@@ -4,11 +4,15 @@ class ActiveFedoraPidBasedJob
4
4
  end
5
5
 
6
6
  attr_accessor :pid
7
+
7
8
  def initialize(pid)
8
9
  self.pid = pid
9
10
  end
11
+
10
12
  def object
11
- @object ||= ActiveFedora::Base.find(pid, cast:true).tap{|f| f.reload_on_save = true}
13
+ @object ||= ActiveFedora::Base.find(pid, cast: true).tap do |f|
14
+ f.reload_on_save = true
15
+ end
12
16
  end
13
17
  alias_method :generic_file, :object
14
18
  alias_method :generic_file_id, :pid
@@ -16,4 +20,4 @@ class ActiveFedoraPidBasedJob
16
20
  def run
17
21
  raise RuntimeError, "Define #run in a subclass"
18
22
  end
19
- end
23
+ end
@@ -1,6 +1,6 @@
1
1
  class BatchUpdateJob
2
2
  include Hydra::PermissionsQuery
3
- include Rails.application.routes.url_helpers
3
+ include Rails.application.routes.url_helpers
4
4
 
5
5
  def queue_name
6
6
  :batch_update
@@ -14,7 +14,6 @@ class BatchUpdateJob
14
14
  self.file_attributes = params[:generic_file]
15
15
  self.visibility = params[:visibility]
16
16
  self.batch_id = params[:id]
17
-
18
17
  end
19
18
 
20
19
  def run
@@ -27,15 +26,14 @@ class BatchUpdateJob
27
26
  update_file(gf, user)
28
27
  end
29
28
  batch.update_attributes({status:["Complete"]})
30
-
29
+
31
30
  job_user = User.batchuser()
32
-
31
+
33
32
  message = '<span class="batchid ui-helper-hidden">ss-'+batch.noid+'</span>The file(s) '+ file_list(@saved)+ " have been saved." unless @saved.empty?
34
33
  job_user.send_message(user, message, 'Batch upload complete') unless @saved.empty?
35
-
34
+
36
35
  message = '<span class="batchid ui-helper-hidden">'+batch.noid+'</span>The file(s) '+ file_list(@denied)+" could not be updated. You do not have sufficient privileges to edit it." unless @denied.empty?
37
36
  job_user.send_message(user, message, 'Batch upload permission denied') unless @denied.empty?
38
-
39
37
  end
40
38
 
41
39
  def update_file(gf, user)
@@ -62,10 +60,8 @@ class BatchUpdateJob
62
60
  Sufia.queue.push(ContentUpdateEventJob.new(gf.pid, login))
63
61
  @saved << gf
64
62
  end
65
-
63
+
66
64
  def file_list ( files)
67
- return files.map {|gf| '<a href="'+Sufia::Engine.routes.url_helpers.generic_files_path+'/'+gf.noid+'">'+gf.to_s+'</a>'}.join(', ')
68
-
65
+ files.map { |gf| '<a href="'+Sufia::Engine.routes.url_helpers.generic_files_path+'/'+gf.noid+'">'+gf.to_s+'</a>' }.join(', ')
69
66
  end
70
-
71
67
  end
@@ -1,22 +1,10 @@
1
1
  class CharacterizeJob < ActiveFedoraPidBasedJob
2
-
3
2
  def queue_name
4
3
  :characterize
5
4
  end
6
5
 
7
6
  def run
8
7
  generic_file.characterize
9
- after_characterize
10
- end
11
-
12
- def after_characterize
13
- if generic_file.pdf? || generic_file.image? || generic_file.video?
14
- generic_file.create_thumbnail
15
- end
16
- if generic_file.video?
17
- Sufia.queue.push(TranscodeVideoJob.new(generic_file_id))
18
- elsif generic_file.audio?
19
- Sufia.queue.push(TranscodeAudioJob.new(generic_file_id))
20
- end
8
+ Sufia.queue.push(CreateDerivativesJob.new(generic_file.id))
21
9
  end
22
10
  end
@@ -0,0 +1,14 @@
1
+ class CreateDerivativesJob < ActiveFedoraPidBasedJob
2
+ def queue_name
3
+ :derivatives
4
+ end
5
+
6
+ def run
7
+ return unless generic_file.content.has_content?
8
+ if generic_file.video?
9
+ return unless Sufia.config.enable_ffmpeg
10
+ end
11
+ generic_file.create_derivatives
12
+ generic_file.save
13
+ end
14
+ end
@@ -12,32 +12,36 @@ class ImportUrlJob < ActiveFedoraPidBasedJob
12
12
  user = User.find_by_user_key(generic_file.depositor)
13
13
 
14
14
  Tempfile.open(self.pid) do |f|
15
- f.binmode
16
-
17
- # download file from url
18
- uri = URI(generic_file.import_url)
19
- http = Net::HTTP.new(uri.host, uri.port)
20
- http.use_ssl = uri.scheme == "https" # enable SSL/TLS
21
- http.verify_mode = OpenSSL::SSL::VERIFY_NONE
22
-
23
- http.start do
24
- http.request_get(uri.request_uri) do |resp|
25
- resp.read_body do |segment|
26
- f.write(segment)
27
- end
28
- end
15
+ path = copy_remote_file(generic_file.import_url, f)
16
+ # attach downloaded file to generic file stubbed out
17
+ if Sufia::GenericFile::Actor.new(generic_file, user).create_content(f, path, 'content')
18
+ # add message to user for downloaded file
19
+ message = "The file (#{File.basename(path)}) was successfully imported."
20
+ job_user.send_message(user, message, 'File Import')
21
+ else
22
+ job_user.send_message(user, generic_file.errors.full_messages.join(', '), 'File Import Error')
29
23
  end
24
+ end
25
+ end
30
26
 
31
- f.rewind
32
- # attach downloaded file to generic file stubbed out
33
- Sufia::GenericFile::Actions.create_content(generic_file, f, File.basename(uri.path), 'content', user)
34
- Sufia.queue.push(ContentDepositEventJob.new(generic_file.pid, generic_file.depositor))
35
- # add message to user for downloaded file
36
- message = "The file (#{File.basename(uri.path)}) was successfully imported."
37
- job_user.send_message(user, message, 'File Import')
27
+ def copy_remote_file(import_url, f)
28
+ f.binmode
29
+ # download file from url
30
+ uri = URI(generic_file.import_url)
31
+ http = Net::HTTP.new(uri.host, uri.port)
32
+ http.use_ssl = uri.scheme == "https" # enable SSL/TLS
33
+ http.verify_mode = OpenSSL::SSL::VERIFY_NONE
34
+
35
+ http.start do
36
+ http.request_get(uri.request_uri) do |resp|
37
+ resp.read_body do |segment|
38
+ f.write(segment)
39
+ end
40
+ end
38
41
  end
39
- rescue => error
40
- job_user.send_message(user, error.message, 'File Import Error')
42
+
43
+ f.rewind
44
+ uri.path
41
45
  end
42
46
 
43
47
  def job_user
@@ -1,5 +1,5 @@
1
1
  module Sufia
2
2
  module Models
3
- VERSION = "4.0.0.beta2"
3
+ VERSION = "4.0.0.beta3"
4
4
  end
5
5
  end
@@ -1,7 +1,7 @@
1
1
  namespace :solr do
2
2
 
3
3
  desc "Enqueue a job to resolrize the repository objects"
4
- task :reindex => :environment do
4
+ task reindex: :environment do
5
5
  Sufia.queue.push(ResolrizeJob.new)
6
6
  end
7
7
  end
@@ -37,7 +37,7 @@ Gem::Specification.new do |spec|
37
37
  spec.add_dependency 'mailboxer', '~> 0.12.0.rc1'
38
38
  spec.add_dependency 'acts_as_follower', '>= 0.1.1', '< 0.3'
39
39
  spec.add_dependency 'carrierwave', '~> 0.9.0'
40
- spec.add_dependency 'hydra-derivatives', '~> 0.0.5'
40
+ spec.add_dependency 'hydra-derivatives', '~> 0.1'
41
41
  spec.add_dependency 'oauth2', '~> 0.9.3'
42
42
  spec.add_dependency 'google-api-client', '~> 0.7.1'
43
43
  spec.add_dependency 'legato', '~> 0.3.0'
metadata CHANGED
@@ -1,117 +1,117 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sufia-models
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.0.beta2
4
+ version: 4.0.0.beta3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeremy Friesen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-05-05 00:00:00.000000000 Z
11
+ date: 2014-05-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.3'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.3'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '>='
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - '>='
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rails
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ~>
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
47
  version: '4.0'
48
- - - <
48
+ - - "<"
49
49
  - !ruby/object:Gem::Version
50
50
  version: 5.0.0
51
51
  type: :runtime
52
52
  prerelease: false
53
53
  version_requirements: !ruby/object:Gem::Requirement
54
54
  requirements:
55
- - - ~>
55
+ - - "~>"
56
56
  - !ruby/object:Gem::Version
57
57
  version: '4.0'
58
- - - <
58
+ - - "<"
59
59
  - !ruby/object:Gem::Version
60
60
  version: 5.0.0
61
61
  - !ruby/object:Gem::Dependency
62
62
  name: activeresource
63
63
  requirement: !ruby/object:Gem::Requirement
64
64
  requirements:
65
- - - ~>
65
+ - - "~>"
66
66
  - !ruby/object:Gem::Version
67
67
  version: 4.0.0
68
68
  type: :runtime
69
69
  prerelease: false
70
70
  version_requirements: !ruby/object:Gem::Requirement
71
71
  requirements:
72
- - - ~>
72
+ - - "~>"
73
73
  - !ruby/object:Gem::Version
74
74
  version: 4.0.0
75
75
  - !ruby/object:Gem::Dependency
76
76
  name: hydra-head
77
77
  requirement: !ruby/object:Gem::Requirement
78
78
  requirements:
79
- - - ~>
79
+ - - "~>"
80
80
  - !ruby/object:Gem::Version
81
81
  version: 7.0.1
82
82
  type: :runtime
83
83
  prerelease: false
84
84
  version_requirements: !ruby/object:Gem::Requirement
85
85
  requirements:
86
- - - ~>
86
+ - - "~>"
87
87
  - !ruby/object:Gem::Version
88
88
  version: 7.0.1
89
89
  - !ruby/object:Gem::Dependency
90
90
  name: nest
91
91
  requirement: !ruby/object:Gem::Requirement
92
92
  requirements:
93
- - - ~>
93
+ - - "~>"
94
94
  - !ruby/object:Gem::Version
95
95
  version: 1.1.1
96
96
  type: :runtime
97
97
  prerelease: false
98
98
  version_requirements: !ruby/object:Gem::Requirement
99
99
  requirements:
100
- - - ~>
100
+ - - "~>"
101
101
  - !ruby/object:Gem::Version
102
102
  version: 1.1.1
103
103
  - !ruby/object:Gem::Dependency
104
104
  name: resque
105
105
  requirement: !ruby/object:Gem::Requirement
106
106
  requirements:
107
- - - ~>
107
+ - - "~>"
108
108
  - !ruby/object:Gem::Version
109
109
  version: '1.23'
110
110
  type: :runtime
111
111
  prerelease: false
112
112
  version_requirements: !ruby/object:Gem::Requirement
113
113
  requirements:
114
- - - ~>
114
+ - - "~>"
115
115
  - !ruby/object:Gem::Version
116
116
  version: '1.23'
117
117
  - !ruby/object:Gem::Dependency
@@ -132,132 +132,132 @@ dependencies:
132
132
  name: noid
133
133
  requirement: !ruby/object:Gem::Requirement
134
134
  requirements:
135
- - - ~>
135
+ - - "~>"
136
136
  - !ruby/object:Gem::Version
137
137
  version: 0.6.6
138
138
  type: :runtime
139
139
  prerelease: false
140
140
  version_requirements: !ruby/object:Gem::Requirement
141
141
  requirements:
142
- - - ~>
142
+ - - "~>"
143
143
  - !ruby/object:Gem::Version
144
144
  version: 0.6.6
145
145
  - !ruby/object:Gem::Dependency
146
146
  name: mailboxer
147
147
  requirement: !ruby/object:Gem::Requirement
148
148
  requirements:
149
- - - ~>
149
+ - - "~>"
150
150
  - !ruby/object:Gem::Version
151
151
  version: 0.12.0.rc1
152
152
  type: :runtime
153
153
  prerelease: false
154
154
  version_requirements: !ruby/object:Gem::Requirement
155
155
  requirements:
156
- - - ~>
156
+ - - "~>"
157
157
  - !ruby/object:Gem::Version
158
158
  version: 0.12.0.rc1
159
159
  - !ruby/object:Gem::Dependency
160
160
  name: acts_as_follower
161
161
  requirement: !ruby/object:Gem::Requirement
162
162
  requirements:
163
- - - '>='
163
+ - - ">="
164
164
  - !ruby/object:Gem::Version
165
165
  version: 0.1.1
166
- - - <
166
+ - - "<"
167
167
  - !ruby/object:Gem::Version
168
168
  version: '0.3'
169
169
  type: :runtime
170
170
  prerelease: false
171
171
  version_requirements: !ruby/object:Gem::Requirement
172
172
  requirements:
173
- - - '>='
173
+ - - ">="
174
174
  - !ruby/object:Gem::Version
175
175
  version: 0.1.1
176
- - - <
176
+ - - "<"
177
177
  - !ruby/object:Gem::Version
178
178
  version: '0.3'
179
179
  - !ruby/object:Gem::Dependency
180
180
  name: carrierwave
181
181
  requirement: !ruby/object:Gem::Requirement
182
182
  requirements:
183
- - - ~>
183
+ - - "~>"
184
184
  - !ruby/object:Gem::Version
185
185
  version: 0.9.0
186
186
  type: :runtime
187
187
  prerelease: false
188
188
  version_requirements: !ruby/object:Gem::Requirement
189
189
  requirements:
190
- - - ~>
190
+ - - "~>"
191
191
  - !ruby/object:Gem::Version
192
192
  version: 0.9.0
193
193
  - !ruby/object:Gem::Dependency
194
194
  name: hydra-derivatives
195
195
  requirement: !ruby/object:Gem::Requirement
196
196
  requirements:
197
- - - ~>
197
+ - - "~>"
198
198
  - !ruby/object:Gem::Version
199
- version: 0.0.5
199
+ version: '0.1'
200
200
  type: :runtime
201
201
  prerelease: false
202
202
  version_requirements: !ruby/object:Gem::Requirement
203
203
  requirements:
204
- - - ~>
204
+ - - "~>"
205
205
  - !ruby/object:Gem::Version
206
- version: 0.0.5
206
+ version: '0.1'
207
207
  - !ruby/object:Gem::Dependency
208
208
  name: oauth2
209
209
  requirement: !ruby/object:Gem::Requirement
210
210
  requirements:
211
- - - ~>
211
+ - - "~>"
212
212
  - !ruby/object:Gem::Version
213
213
  version: 0.9.3
214
214
  type: :runtime
215
215
  prerelease: false
216
216
  version_requirements: !ruby/object:Gem::Requirement
217
217
  requirements:
218
- - - ~>
218
+ - - "~>"
219
219
  - !ruby/object:Gem::Version
220
220
  version: 0.9.3
221
221
  - !ruby/object:Gem::Dependency
222
222
  name: google-api-client
223
223
  requirement: !ruby/object:Gem::Requirement
224
224
  requirements:
225
- - - ~>
225
+ - - "~>"
226
226
  - !ruby/object:Gem::Version
227
227
  version: 0.7.1
228
228
  type: :runtime
229
229
  prerelease: false
230
230
  version_requirements: !ruby/object:Gem::Requirement
231
231
  requirements:
232
- - - ~>
232
+ - - "~>"
233
233
  - !ruby/object:Gem::Version
234
234
  version: 0.7.1
235
235
  - !ruby/object:Gem::Dependency
236
236
  name: legato
237
237
  requirement: !ruby/object:Gem::Requirement
238
238
  requirements:
239
- - - ~>
239
+ - - "~>"
240
240
  - !ruby/object:Gem::Version
241
241
  version: 0.3.0
242
242
  type: :runtime
243
243
  prerelease: false
244
244
  version_requirements: !ruby/object:Gem::Requirement
245
245
  requirements:
246
- - - ~>
246
+ - - "~>"
247
247
  - !ruby/object:Gem::Version
248
248
  version: 0.3.0
249
249
  - !ruby/object:Gem::Dependency
250
250
  name: activerecord-import
251
251
  requirement: !ruby/object:Gem::Requirement
252
252
  requirements:
253
- - - '>='
253
+ - - ">="
254
254
  - !ruby/object:Gem::Version
255
255
  version: '0'
256
256
  type: :runtime
257
257
  prerelease: false
258
258
  version_requirements: !ruby/object:Gem::Requirement
259
259
  requirements:
260
- - - '>='
260
+ - - ">="
261
261
  - !ruby/object:Gem::Version
262
262
  version: '0'
263
263
  description: Models and services for sufia
@@ -267,13 +267,30 @@ executables: []
267
267
  extensions: []
268
268
  extra_rdoc_files: []
269
269
  files:
270
- - .gitignore
270
+ - ".gitignore"
271
271
  - Gemfile
272
272
  - LICENSE.md
273
273
  - README.md
274
274
  - Rakefile
275
+ - app/actors/sufia/generic_file/actor.rb
275
276
  - app/models/batch.rb
276
277
  - app/models/checksum_audit_log.rb
278
+ - app/models/collection.rb
279
+ - app/models/concerns/sufia/generic_file.rb
280
+ - app/models/concerns/sufia/generic_file/accessible_attributes.rb
281
+ - app/models/concerns/sufia/generic_file/audit.rb
282
+ - app/models/concerns/sufia/generic_file/characterization.rb
283
+ - app/models/concerns/sufia/generic_file/derivatives.rb
284
+ - app/models/concerns/sufia/generic_file/export.rb
285
+ - app/models/concerns/sufia/generic_file/featured.rb
286
+ - app/models/concerns/sufia/generic_file/metadata.rb
287
+ - app/models/concerns/sufia/generic_file/mime_types.rb
288
+ - app/models/concerns/sufia/generic_file/permissions.rb
289
+ - app/models/concerns/sufia/generic_file/reload_on_save.rb
290
+ - app/models/concerns/sufia/generic_file/trophies.rb
291
+ - app/models/concerns/sufia/generic_file/versions.rb
292
+ - app/models/concerns/sufia/generic_file/virus_check.rb
293
+ - app/models/concerns/sufia/generic_file/web_form.rb
277
294
  - app/models/concerns/sufia/properties_datastream_behavior.rb
278
295
  - app/models/concerns/sufia/user.rb
279
296
  - app/models/datastreams/batch_rdf_datastream.rb
@@ -284,6 +301,7 @@ files:
284
301
  - app/models/datastreams/properties_datastream.rb
285
302
  - app/models/domain_term.rb
286
303
  - app/models/featured_work.rb
304
+ - app/models/file_usage.rb
287
305
  - app/models/follow.rb
288
306
  - app/models/generic_file.rb
289
307
  - app/models/geo_names_resource.rb
@@ -294,12 +312,13 @@ files:
294
312
  - app/models/subject_local_authority_entry.rb
295
313
  - app/models/sufia/avatar_uploader.rb
296
314
  - app/models/sufia/avatar_validator.rb
315
+ - app/models/sufia/download.rb
297
316
  - app/models/sufia/pageview.rb
298
317
  - app/models/trophy.rb
299
318
  - app/models/version_committer.rb
319
+ - app/services/sufia/analytics.rb
300
320
  - app/services/sufia/id_service.rb
301
321
  - app/services/sufia/noid.rb
302
- - app/services/sufia/usage_statistics.rb
303
322
  - config/locales/sufia.en.yml
304
323
  - lib/generators/sufia/models/install_generator.rb
305
324
  - lib/generators/sufia/models/templates/config/analytics.yml
@@ -334,34 +353,15 @@ files:
334
353
  - lib/sufia/models/engine.rb
335
354
  - lib/sufia/models/file_content.rb
336
355
  - lib/sufia/models/file_content/versions.rb
337
- - lib/sufia/models/generic_file.rb
338
- - lib/sufia/models/generic_file/accessible_attributes.rb
339
- - lib/sufia/models/generic_file/actions.rb
340
- - lib/sufia/models/generic_file/audit.rb
341
- - lib/sufia/models/generic_file/characterization.rb
342
- - lib/sufia/models/generic_file/derivatives.rb
343
- - lib/sufia/models/generic_file/export.rb
344
- - lib/sufia/models/generic_file/featured.rb
345
- - lib/sufia/models/generic_file/metadata.rb
346
- - lib/sufia/models/generic_file/mime_types.rb
347
- - lib/sufia/models/generic_file/permissions.rb
348
- - lib/sufia/models/generic_file/reload_on_save.rb
349
- - lib/sufia/models/generic_file/thumbnail.rb
350
- - lib/sufia/models/generic_file/trophies.rb
351
- - lib/sufia/models/generic_file/versions.rb
352
- - lib/sufia/models/generic_file/virus_check.rb
353
- - lib/sufia/models/generic_file/web_form.rb
354
356
  - lib/sufia/models/jobs/active_fedora_pid_based_job.rb
355
357
  - lib/sufia/models/jobs/audit_job.rb
356
358
  - lib/sufia/models/jobs/batch_update_job.rb
357
359
  - lib/sufia/models/jobs/characterize_job.rb
360
+ - lib/sufia/models/jobs/create_derivatives_job.rb
358
361
  - lib/sufia/models/jobs/import_url_job.rb
359
362
  - lib/sufia/models/jobs/resolrize_job.rb
360
- - lib/sufia/models/jobs/transcode_audio_job.rb
361
- - lib/sufia/models/jobs/transcode_video_job.rb
362
363
  - lib/sufia/models/model_methods.rb
363
364
  - lib/sufia/models/resque.rb
364
- - lib/sufia/models/solr_document_behavior.rb
365
365
  - lib/sufia/models/user_local_directory_behavior.rb
366
366
  - lib/sufia/models/utils.rb
367
367
  - lib/sufia/models/version.rb
@@ -379,12 +379,12 @@ require_paths:
379
379
  - lib
380
380
  required_ruby_version: !ruby/object:Gem::Requirement
381
381
  requirements:
382
- - - '>='
382
+ - - ">="
383
383
  - !ruby/object:Gem::Version
384
384
  version: '0'
385
385
  required_rubygems_version: !ruby/object:Gem::Requirement
386
386
  requirements:
387
- - - '>'
387
+ - - ">"
388
388
  - !ruby/object:Gem::Version
389
389
  version: 1.3.1
390
390
  requirements: []
@@ -394,3 +394,4 @@ signing_key:
394
394
  specification_version: 4
395
395
  summary: Models and services for sufia
396
396
  test_files: []
397
+ has_rdoc: