sufia-models 4.0.0.rc1 → 4.0.0.rc2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (41) hide show
  1. checksums.yaml +4 -4
  2. data/app/actors/sufia/generic_file/actor.rb +14 -5
  3. data/{lib/sufia/models → app}/jobs/active_fedora_pid_based_job.rb +0 -0
  4. data/{lib/sufia/models → app}/jobs/audit_job.rb +4 -10
  5. data/{lib/sufia/models → app}/jobs/batch_update_job.rb +22 -18
  6. data/{lib/sufia/models → app}/jobs/characterize_job.rb +0 -0
  7. data/{lib/sufia/models → app}/jobs/create_derivatives_job.rb +0 -0
  8. data/{lib/sufia/models → app}/jobs/import_url_job.rb +0 -0
  9. data/{lib/sufia/models → app}/jobs/resolrize_job.rb +0 -0
  10. data/app/models/collection.rb +1 -39
  11. data/{lib → app/models/concerns}/sufia/ability.rb +0 -0
  12. data/app/models/concerns/sufia/collection.rb +55 -0
  13. data/app/models/concerns/sufia/generic_file.rb +5 -11
  14. data/app/models/concerns/sufia/generic_file/audit.rb +1 -2
  15. data/app/models/concerns/sufia/generic_file/characterization.rb +4 -2
  16. data/app/models/concerns/sufia/generic_file/full_text_indexing.rb +27 -0
  17. data/app/models/concerns/sufia/generic_file/mime_types.rb +1 -0
  18. data/app/models/concerns/sufia/generic_file/permissions.rb +2 -49
  19. data/{lib/sufia/models → app/models/concerns/sufia}/model_methods.rb +0 -0
  20. data/app/models/concerns/sufia/user.rb +8 -1
  21. data/app/models/sufia/avatar_uploader.rb +2 -3
  22. data/app/services/sufia/noid.rb +9 -0
  23. data/config/locales/sufia.en.yml +1 -0
  24. data/lib/generators/sufia/models/fulltext_generator.rb +27 -0
  25. data/lib/generators/sufia/models/install_generator.rb +7 -0
  26. data/lib/generators/sufia/models/templates/config/analytics.yml +5 -5
  27. data/lib/generators/sufia/models/templates/config/solrconfig.xml +177 -0
  28. data/lib/generators/sufia/models/templates/config/sufia.rb +3 -1
  29. data/lib/generators/sufia/models/upgrade400_generator.rb +7 -0
  30. data/lib/sufia/messages.rb +67 -0
  31. data/lib/sufia/models.rb +2 -0
  32. data/lib/sufia/models/active_fedora/redis.rb +0 -6
  33. data/lib/sufia/models/engine.rb +1 -3
  34. data/lib/sufia/models/resque.rb +1 -1
  35. data/lib/sufia/models/version.rb +1 -1
  36. data/lib/sufia/permissions.rb +9 -0
  37. data/lib/sufia/permissions/readable.rb +20 -0
  38. data/lib/sufia/permissions/writable.rb +56 -0
  39. data/lib/tasks/sufia-models_tasks.rake +58 -2
  40. data/sufia-models.gemspec +11 -11
  41. metadata +45 -38
@@ -25,11 +25,10 @@ module Sufia
25
25
  config.enable_local_ingest = nil
26
26
  config.analytics = false
27
27
  config.queue = Sufia::Resque::Queue
28
+ config.max_notifications_for_dashboard = 5
28
29
 
29
30
  config.autoload_paths += %W(
30
- #{config.root}/lib/sufia/models/jobs
31
31
  #{config.root}/app/models/datastreams
32
- #{config.root}/app/models/concerns
33
32
  )
34
33
 
35
34
  rake_tasks do
@@ -44,7 +43,6 @@ module Sufia
44
43
  initializer 'requires' do
45
44
  require 'activerecord-import'
46
45
  require 'hydra/derivatives'
47
- require 'sufia/models/model_methods'
48
46
  require 'sufia/models/file_content'
49
47
  require 'sufia/models/file_content/versions'
50
48
  require 'sufia/models/user_local_directory_behavior'
@@ -14,7 +14,7 @@ module Sufia
14
14
  begin
15
15
  ::Resque.enqueue_to queue, MarshaledJob, Base64.encode64(Marshal.dump(job))
16
16
  rescue Redis::CannotConnectError
17
- logger.error "Redis is down!"
17
+ ActiveFedora::Base.logger.error "Redis is down!"
18
18
  end
19
19
  end
20
20
  end
@@ -1,5 +1,5 @@
1
1
  module Sufia
2
2
  module Models
3
- VERSION = "4.0.0.rc1"
3
+ VERSION = "4.0.0.rc2"
4
4
  end
5
5
  end
@@ -0,0 +1,9 @@
1
+ module Sufia
2
+ module Permissions
3
+ extend ActiveSupport::Autoload
4
+
5
+ autoload :Writable
6
+ autoload :Readable
7
+
8
+ end
9
+ end
@@ -0,0 +1,20 @@
1
+ module Sufia
2
+ module Permissions
3
+ module Readable
4
+ extend ActiveSupport::Concern
5
+
6
+ def public?
7
+ read_groups.include?('public')
8
+ end
9
+
10
+ def registered?
11
+ read_groups.include?('registered')
12
+ end
13
+
14
+ def private?
15
+ !(public? || registered?)
16
+ end
17
+
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,56 @@
1
+ module Sufia
2
+ module Permissions
3
+ module Writable
4
+ extend ActiveSupport::Concern
5
+
6
+ #we're overriding the permissions= method which is in Hydra::AccessControls::Permissions
7
+ include Hydra::AccessControls::Permissions
8
+ include Hydra::AccessControls::Visibility
9
+
10
+ included do
11
+ has_metadata "rightsMetadata", type: ParanoidRightsDatastream
12
+ validate :paranoid_permissions
13
+ end
14
+
15
+ def paranoid_permissions
16
+ # let the rightsMetadata ds make this determination
17
+ # - the object instance is passed in for easier access to the props ds
18
+ rightsMetadata.validate(self)
19
+ end
20
+
21
+ ## Updates those permissions that are provided to it. Does not replace any permissions unless they are provided
22
+ def permissions=(params)
23
+ perm_hash = permission_hash
24
+ params[:new_user_name].each { |name, access| perm_hash['person'][name] = access } if params[:new_user_name].present?
25
+ params[:new_group_name].each { |name, access| perm_hash['group'][name] = access } if params[:new_group_name].present?
26
+
27
+ params[:user].each { |name, access| perm_hash['person'][name] = access} if params[:user]
28
+ params[:group].each { |name, access| perm_hash['group'][name] = access if ['read', 'edit'].include?(access)} if params[:group]
29
+
30
+ rightsMetadata.update_permissions(perm_hash)
31
+ end
32
+
33
+ def permissions
34
+ perms = super
35
+ perms.map {|p| { name: p.name, access: p.access, type:p.type } }
36
+ end
37
+
38
+ private
39
+
40
+ def permission_hash
41
+ old_perms = self.permissions
42
+ user_perms = {}
43
+ old_perms.select{|r| r[:type] == 'user'}.each do |r|
44
+ user_perms[r[:name]] = r[:access]
45
+ end
46
+ user_perms
47
+ group_perms = {}
48
+ old_perms.select{|r| r[:type] == 'group'}.each do |r|
49
+ group_perms[r[:name]] = r[:access]
50
+ end
51
+ {'person'=>user_perms, 'group'=>group_perms}
52
+ end
53
+
54
+ end
55
+ end
56
+ end
@@ -1,7 +1,63 @@
1
1
  namespace :solr do
2
-
3
2
  desc "Enqueue a job to resolrize the repository objects"
4
3
  task reindex: :environment do
5
4
  Sufia.queue.push(ResolrizeJob.new)
6
5
  end
7
- end
6
+ end
7
+
8
+ namespace :sufia do
9
+ namespace :jetty do
10
+ desc 'Configure jetty with full-text indexing'
11
+ task config: :download_jars do
12
+ Rake::Task['jetty:config'].invoke
13
+ end
14
+
15
+ desc 'Download Solr full-text extraction jars'
16
+ task :download_jars do
17
+ puts "Downloading full-text jars from maven.org ..."
18
+ url_prefix = 'http://search.maven.org/remotecontent?filepath='
19
+ fulltext_dir = 'jetty/solr/lib/contrib/extraction/lib'
20
+ jars = %w(
21
+ org/apache/james/apache-mime4j-core/0.7.2/apache-mime4j-core-0.7.2.jar
22
+ org/apache/james/apache-mime4j-dom/0.7.2/apache-mime4j-dom-0.7.2.jar
23
+ org/apache/solr/solr-cell/4.0.0/solr-cell-4.0.0.jar
24
+ org/bouncycastle/bcmail-jdk15/1.45/bcmail-jdk15-1.45.jar
25
+ org/bouncycastle/bcprov-jdk15/1.45/bcprov-jdk15-1.45.jar
26
+ de/l3s/boilerpipe/boilerpipe/1.1.0/boilerpipe-1.1.0.jar
27
+ org/apache/commons/commons-compress/1.4.1/commons-compress-1.4.1.jar
28
+ dom4j/dom4j/1.6.1/dom4j-1.6.1.jar
29
+ org/apache/pdfbox/fontbox/1.7.0/fontbox-1.7.0.jar
30
+ com/ibm/icu/icu4j/49.1/icu4j-49.1.jar
31
+ com/googlecode/mp4parser/isoparser/1.0-RC-1/isoparser-1.0-RC-1.jar
32
+ jdom/jdom/1.0/jdom-1.0.jar
33
+ org/apache/pdfbox/jempbox/1.7.0/jempbox-1.7.0.jar
34
+ com/googlecode/juniversalchardet/juniversalchardet/1.0.3/juniversalchardet-1.0.3.jar
35
+ com/drewnoakes/metadata-extractor/2.4.0-beta-1/metadata-extractor-2.4.0-beta-1.jar
36
+ edu/ucar/netcdf/4.2-min/netcdf-4.2-min.jar
37
+ org/apache/pdfbox/pdfbox/1.7.0/pdfbox-1.7.0.jar
38
+ org/apache/poi/poi/3.8/poi-3.8.jar
39
+ org/apache/poi/poi-ooxml/3.8/poi-ooxml-3.8.jar
40
+ org/apache/poi/poi-ooxml-schemas/3.8/poi-ooxml-schemas-3.8.jar
41
+ org/apache/poi/poi-scratchpad/3.8/poi-scratchpad-3.8.jar
42
+ rome/rome/0.9/rome-0.9.jar
43
+ org/ccil/cowan/tagsoup/tagsoup/1.2.1/tagsoup-1.2.1.jar
44
+ org/apache/tika/tika-core/1.2/tika-core-1.2.jar
45
+ org/apache/tika/tika-parsers/1.2/tika-parsers-1.2.jar
46
+ org/gagravarr/vorbis-java-core/0.1/vorbis-java-core-0.1.jar
47
+ org/gagravarr/vorbis-java-tika/0.1/vorbis-java-tika-0.1.jar
48
+ xerces/xercesImpl/2.9.1/xercesImpl-2.9.1.jar
49
+ org/apache/xmlbeans/xmlbeans/2.3.0/xmlbeans-2.3.0.jar
50
+ org/tukaani/xz/1.0/xz-1.0.jar
51
+ )
52
+ FileUtils.mkdir_p(fulltext_dir) unless File.directory?(fulltext_dir)
53
+ Dir.chdir(fulltext_dir) do
54
+ jars.each do |jar|
55
+ url = url_prefix + jar
56
+ jarfile = jar.split('/').last
57
+ puts "Fetching #{url}" unless File.exists?(jarfile)
58
+ system "wget --quiet --no-clobber #{url} -O #{jarfile}"
59
+ end
60
+ end
61
+ end
62
+ end
63
+ end
data/sufia-models.gemspec CHANGED
@@ -24,22 +24,22 @@ Gem::Specification.new do |spec|
24
24
  spec.require_paths = ["lib"]
25
25
 
26
26
  spec.add_development_dependency "bundler", "~> 1.3"
27
- spec.add_development_dependency "rake"
27
+ spec.add_development_dependency "rake", "~> 10.3"
28
28
 
29
29
  spec.add_dependency 'rails', '~> 4.0', '< 5.0.0'
30
- spec.add_dependency 'activeresource', "~>4.0.0" # No longer a dependency of rails 4.0
30
+ spec.add_dependency 'activeresource', "~> 4.0" # No longer a dependency of rails 4.0
31
31
 
32
32
  spec.add_dependency "hydra-head", "~> 7.0"
33
- spec.add_dependency 'nest', '~> 1.1.1'
33
+ spec.add_dependency 'nest', '~> 1.1'
34
34
  spec.add_dependency 'resque', '~> 1.23'
35
- spec.add_dependency 'resque-pool', '~> 0.3.0'
36
- spec.add_dependency 'noid', '~> 0.6.6'
37
- spec.add_dependency 'mailboxer', '~> 0.12.0'
35
+ spec.add_dependency 'resque-pool', '~> 0.3'
36
+ spec.add_dependency 'noid', '~> 0.6'
37
+ spec.add_dependency 'mailboxer', '~> 0.12'
38
38
  spec.add_dependency 'acts_as_follower', '>= 0.1.1', '< 0.3'
39
- spec.add_dependency 'carrierwave', '~> 0.9.0'
39
+ spec.add_dependency 'carrierwave', '~> 0.9'
40
40
  spec.add_dependency 'hydra-derivatives', '~> 0.1'
41
- spec.add_dependency 'oauth2', '~> 0.9.3'
42
- spec.add_dependency 'google-api-client', '~> 0.7.1'
43
- spec.add_dependency 'legato', '~> 0.3.0'
44
- spec.add_dependency 'activerecord-import'
41
+ spec.add_dependency 'oauth2', '~> 0.9'
42
+ spec.add_dependency 'google-api-client', '~> 0.7'
43
+ spec.add_dependency 'legato', '~> 0.3'
44
+ spec.add_dependency 'activerecord-import', '~> 0.5'
45
45
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sufia-models
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.0.rc1
4
+ version: 4.0.0.rc2
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-06-06 00:00:00.000000000 Z
11
+ date: 2014-08-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -28,16 +28,16 @@ dependencies:
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ">="
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0'
33
+ version: '10.3'
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
- version: '0'
40
+ version: '10.3'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rails
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -64,14 +64,14 @@ dependencies:
64
64
  requirements:
65
65
  - - "~>"
66
66
  - !ruby/object:Gem::Version
67
- version: 4.0.0
67
+ version: '4.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
- version: 4.0.0
74
+ version: '4.0'
75
75
  - !ruby/object:Gem::Dependency
76
76
  name: hydra-head
77
77
  requirement: !ruby/object:Gem::Requirement
@@ -92,14 +92,14 @@ dependencies:
92
92
  requirements:
93
93
  - - "~>"
94
94
  - !ruby/object:Gem::Version
95
- version: 1.1.1
95
+ version: '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
- version: 1.1.1
102
+ version: '1.1'
103
103
  - !ruby/object:Gem::Dependency
104
104
  name: resque
105
105
  requirement: !ruby/object:Gem::Requirement
@@ -120,42 +120,42 @@ dependencies:
120
120
  requirements:
121
121
  - - "~>"
122
122
  - !ruby/object:Gem::Version
123
- version: 0.3.0
123
+ version: '0.3'
124
124
  type: :runtime
125
125
  prerelease: false
126
126
  version_requirements: !ruby/object:Gem::Requirement
127
127
  requirements:
128
128
  - - "~>"
129
129
  - !ruby/object:Gem::Version
130
- version: 0.3.0
130
+ version: '0.3'
131
131
  - !ruby/object:Gem::Dependency
132
132
  name: noid
133
133
  requirement: !ruby/object:Gem::Requirement
134
134
  requirements:
135
135
  - - "~>"
136
136
  - !ruby/object:Gem::Version
137
- version: 0.6.6
137
+ version: '0.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
- version: 0.6.6
144
+ version: '0.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
- version: 0.12.0
151
+ version: '0.12'
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
- version: 0.12.0
158
+ version: '0.12'
159
159
  - !ruby/object:Gem::Dependency
160
160
  name: acts_as_follower
161
161
  requirement: !ruby/object:Gem::Requirement
@@ -182,14 +182,14 @@ dependencies:
182
182
  requirements:
183
183
  - - "~>"
184
184
  - !ruby/object:Gem::Version
185
- version: 0.9.0
185
+ version: '0.9'
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
- version: 0.9.0
192
+ version: '0.9'
193
193
  - !ruby/object:Gem::Dependency
194
194
  name: hydra-derivatives
195
195
  requirement: !ruby/object:Gem::Requirement
@@ -210,56 +210,56 @@ dependencies:
210
210
  requirements:
211
211
  - - "~>"
212
212
  - !ruby/object:Gem::Version
213
- version: 0.9.3
213
+ version: '0.9'
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
- version: 0.9.3
220
+ version: '0.9'
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
- version: 0.7.1
227
+ version: '0.7'
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
- version: 0.7.1
234
+ version: '0.7'
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
- version: 0.3.0
241
+ version: '0.3'
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
- version: 0.3.0
248
+ version: '0.3'
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
- version: '0'
255
+ version: '0.5'
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
- version: '0'
262
+ version: '0.5'
263
263
  description: Models and services for sufia
264
264
  email:
265
265
  - jeremy.n.friesen@gmail.com
@@ -273,9 +273,18 @@ files:
273
273
  - README.md
274
274
  - Rakefile
275
275
  - app/actors/sufia/generic_file/actor.rb
276
+ - app/jobs/active_fedora_pid_based_job.rb
277
+ - app/jobs/audit_job.rb
278
+ - app/jobs/batch_update_job.rb
279
+ - app/jobs/characterize_job.rb
280
+ - app/jobs/create_derivatives_job.rb
281
+ - app/jobs/import_url_job.rb
282
+ - app/jobs/resolrize_job.rb
276
283
  - app/models/batch.rb
277
284
  - app/models/checksum_audit_log.rb
278
285
  - app/models/collection.rb
286
+ - app/models/concerns/sufia/ability.rb
287
+ - app/models/concerns/sufia/collection.rb
279
288
  - app/models/concerns/sufia/generic_file.rb
280
289
  - app/models/concerns/sufia/generic_file/accessible_attributes.rb
281
290
  - app/models/concerns/sufia/generic_file/audit.rb
@@ -283,6 +292,7 @@ files:
283
292
  - app/models/concerns/sufia/generic_file/derivatives.rb
284
293
  - app/models/concerns/sufia/generic_file/export.rb
285
294
  - app/models/concerns/sufia/generic_file/featured.rb
295
+ - app/models/concerns/sufia/generic_file/full_text_indexing.rb
286
296
  - app/models/concerns/sufia/generic_file/metadata.rb
287
297
  - app/models/concerns/sufia/generic_file/mime_types.rb
288
298
  - app/models/concerns/sufia/generic_file/permissions.rb
@@ -291,6 +301,7 @@ files:
291
301
  - app/models/concerns/sufia/generic_file/versions.rb
292
302
  - app/models/concerns/sufia/generic_file/virus_check.rb
293
303
  - app/models/concerns/sufia/generic_file/web_form.rb
304
+ - app/models/concerns/sufia/model_methods.rb
294
305
  - app/models/concerns/sufia/properties_datastream_behavior.rb
295
306
  - app/models/concerns/sufia/user.rb
296
307
  - app/models/datastreams/batch_rdf_datastream.rb
@@ -320,6 +331,7 @@ files:
320
331
  - app/services/sufia/id_service.rb
321
332
  - app/services/sufia/noid.rb
322
333
  - config/locales/sufia.en.yml
334
+ - lib/generators/sufia/models/fulltext_generator.rb
323
335
  - lib/generators/sufia/models/install_generator.rb
324
336
  - lib/generators/sufia/models/templates/config/analytics.yml
325
337
  - lib/generators/sufia/models/templates/config/clamav.rb
@@ -330,6 +342,7 @@ files:
330
342
  - lib/generators/sufia/models/templates/config/resque_admin.rb
331
343
  - lib/generators/sufia/models/templates/config/resque_config.rb
332
344
  - lib/generators/sufia/models/templates/config/setup_mail.rb
345
+ - lib/generators/sufia/models/templates/config/solrconfig.xml
333
346
  - lib/generators/sufia/models/templates/config/sufia.rb
334
347
  - lib/generators/sufia/models/templates/migrations/acts_as_follower_migration.rb
335
348
  - lib/generators/sufia/models/templates/migrations/add_avatars_to_users.rb
@@ -347,26 +360,21 @@ files:
347
360
  - lib/generators/sufia/models/templates/migrations/create_version_committers.rb
348
361
  - lib/generators/sufia/models/upgrade400_generator.rb
349
362
  - lib/generators/sufia/models/usagestats_generator.rb
350
- - lib/sufia/ability.rb
363
+ - lib/sufia/messages.rb
351
364
  - lib/sufia/models.rb
352
365
  - lib/sufia/models/active_fedora/redis.rb
353
366
  - lib/sufia/models/active_record/redis.rb
354
367
  - lib/sufia/models/engine.rb
355
368
  - lib/sufia/models/file_content.rb
356
369
  - lib/sufia/models/file_content/versions.rb
357
- - lib/sufia/models/jobs/active_fedora_pid_based_job.rb
358
- - lib/sufia/models/jobs/audit_job.rb
359
- - lib/sufia/models/jobs/batch_update_job.rb
360
- - lib/sufia/models/jobs/characterize_job.rb
361
- - lib/sufia/models/jobs/create_derivatives_job.rb
362
- - lib/sufia/models/jobs/import_url_job.rb
363
- - lib/sufia/models/jobs/resolrize_job.rb
364
- - lib/sufia/models/model_methods.rb
365
370
  - lib/sufia/models/resque.rb
366
371
  - lib/sufia/models/user_local_directory_behavior.rb
367
372
  - lib/sufia/models/utils.rb
368
373
  - lib/sufia/models/version.rb
369
374
  - lib/sufia/models/virus_found_error.rb
375
+ - lib/sufia/permissions.rb
376
+ - lib/sufia/permissions/readable.rb
377
+ - lib/sufia/permissions/writable.rb
370
378
  - lib/tasks/resque.rake
371
379
  - lib/tasks/sufia-models_tasks.rake
372
380
  - sufia-models.gemspec
@@ -395,4 +403,3 @@ signing_key:
395
403
  specification_version: 4
396
404
  summary: Models and services for sufia
397
405
  test_files: []
398
- has_rdoc: