ddr-models 1.8.1 → 1.9.0

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 (38) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +1 -1
  3. data/app/controllers/users/omniauth_callbacks_controller.rb +11 -0
  4. data/app/controllers/users/sessions_controller.rb +7 -0
  5. data/app/controllers/users/sessions_controller.rb~ +11 -0
  6. data/config/initializers/devise.rb +15 -1
  7. data/config/routes.rb +4 -0
  8. data/lib/ddr/auth/user.rb +17 -4
  9. data/lib/ddr/managers/#index_manager.rb# +21 -0
  10. data/lib/ddr/models/#index_fields.rb# +13 -0
  11. data/lib/ddr/models/engine.rb +3 -22
  12. data/lib/ddr/models/version.rb +1 -1
  13. data/spec/dummy/config/routes.rb +0 -54
  14. data/spec/dummy/db/development.sqlite3 +0 -0
  15. data/spec/dummy/log/development.log +4702 -0
  16. data/spec/dummy/log/production.log +5 -0
  17. data/spec/dummy/log/test.log +50543 -0
  18. data/spec/dummy/tmp/cache/assets/development/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
  19. data/spec/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
  20. data/spec/dummy/tmp/cache/assets/development/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
  21. data/spec/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
  22. data/spec/dummy/tmp/cache/assets/development/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
  23. data/spec/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
  24. metadata +44 -26
  25. data/db/migrate/20150109192134_drop_workflow_state.rb~ +0 -11
  26. data/db/migrate/20150110023410_drop_workflow_states.rb~ +0 -4
  27. data/lib/ddr/datastreams/admin_metadata_datastream.rb~ +0 -13
  28. data/lib/ddr/index.rb~ +0 -8
  29. data/lib/ddr/managers/index_manager.rb~ +0 -7
  30. data/lib/ddr/managers/manager.rb~ +0 -14
  31. data/lib/ddr/managers/role_manager.rb~ +0 -21
  32. data/lib/ddr/managers/workflow_manager.rb~ +0 -33
  33. data/lib/ddr/models/#index.rb# +0 -25
  34. data/lib/ddr/models/#indexing.rb# +0 -108
  35. data/lib/ddr/models/has_admin_metadata.rb~ +0 -34
  36. data/lib/ddr/vocab.rb~ +0 -9
  37. data/lib/ddr/vocab/workflow.rb~ +0 -7
  38. data/spec/models/has_admin_metadata_spec.rb~ +0 -144
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ddr-models
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.8.1
4
+ version: 1.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jim Coble
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-01-13 00:00:00.000000000 Z
12
+ date: 2015-01-26 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
@@ -96,19 +96,33 @@ dependencies:
96
96
  - !ruby/object:Gem::Version
97
97
  version: 1.3.1
98
98
  - !ruby/object:Gem::Dependency
99
- name: devise-remote-user
99
+ name: devise
100
100
  requirement: !ruby/object:Gem::Requirement
101
101
  requirements:
102
- - - ">="
102
+ - - "~>"
103
103
  - !ruby/object:Gem::Version
104
- version: '0'
104
+ version: '3.4'
105
105
  type: :runtime
106
106
  prerelease: false
107
107
  version_requirements: !ruby/object:Gem::Requirement
108
108
  requirements:
109
- - - ">="
109
+ - - "~>"
110
110
  - !ruby/object:Gem::Version
111
- version: '0'
111
+ version: '3.4'
112
+ - !ruby/object:Gem::Dependency
113
+ name: omniauth-shibboleth
114
+ requirement: !ruby/object:Gem::Requirement
115
+ requirements:
116
+ - - "~>"
117
+ - !ruby/object:Gem::Version
118
+ version: 1.2.0
119
+ type: :runtime
120
+ prerelease: false
121
+ version_requirements: !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - "~>"
124
+ - !ruby/object:Gem::Version
125
+ version: 1.2.0
112
126
  - !ruby/object:Gem::Dependency
113
127
  name: grouper-rest-client
114
128
  requirement: !ruby/object:Gem::Requirement
@@ -239,16 +253,16 @@ dependencies:
239
253
  name: jettywrapper
240
254
  requirement: !ruby/object:Gem::Requirement
241
255
  requirements:
242
- - - ">="
256
+ - - "~>"
243
257
  - !ruby/object:Gem::Version
244
- version: '0'
258
+ version: '1.8'
245
259
  type: :development
246
260
  prerelease: false
247
261
  version_requirements: !ruby/object:Gem::Requirement
248
262
  requirements:
249
- - - ">="
263
+ - - "~>"
250
264
  - !ruby/object:Gem::Version
251
- version: '0'
265
+ version: '1.8'
252
266
  - !ruby/object:Gem::Dependency
253
267
  name: database_cleaner
254
268
  requirement: !ruby/object:Gem::Requirement
@@ -273,6 +287,9 @@ files:
273
287
  - LICENSE.txt
274
288
  - README.md
275
289
  - Rakefile
290
+ - app/controllers/users/omniauth_callbacks_controller.rb
291
+ - app/controllers/users/sessions_controller.rb
292
+ - app/controllers/users/sessions_controller.rb~
276
293
  - app/models/attachment.rb
277
294
  - app/models/collection.rb
278
295
  - app/models/component.rb
@@ -290,9 +307,7 @@ files:
290
307
  - db/migrate/20141107124012_add_columns_to_user.rb
291
308
  - db/migrate/20141216040225_drop_minted_ids.rb
292
309
  - db/migrate/20141218020612_add_exception_to_events.rb
293
- - db/migrate/20150109192134_drop_workflow_state.rb~
294
310
  - db/migrate/20150110023410_drop_workflow_states.rb
295
- - db/migrate/20150110023410_drop_workflow_states.rb~
296
311
  - lib/ddr-models.rb
297
312
  - lib/ddr/actions.rb
298
313
  - lib/ddr/actions/fixity_check.rb
@@ -305,7 +320,6 @@ files:
305
320
  - lib/ddr/auth/user.rb
306
321
  - lib/ddr/datastreams.rb
307
322
  - lib/ddr/datastreams/admin_metadata_datastream.rb
308
- - lib/ddr/datastreams/admin_metadata_datastream.rb~
309
323
  - lib/ddr/datastreams/content_metadata_datastream.rb
310
324
  - lib/ddr/datastreams/datastream_behavior.rb
311
325
  - lib/ddr/datastreams/descriptive_metadata_datastream.rb
@@ -323,17 +337,13 @@ files:
323
337
  - lib/ddr/events/update_event.rb
324
338
  - lib/ddr/events/validation_event.rb
325
339
  - lib/ddr/events/virus_check_event.rb
326
- - lib/ddr/index.rb~
327
340
  - lib/ddr/index_fields.rb
328
341
  - lib/ddr/managers.rb
329
- - lib/ddr/managers/index_manager.rb~
342
+ - lib/ddr/managers/#index_manager.rb#
330
343
  - lib/ddr/managers/manager.rb
331
- - lib/ddr/managers/manager.rb~
332
344
  - lib/ddr/managers/permanent_id_manager.rb
333
345
  - lib/ddr/managers/role_manager.rb
334
- - lib/ddr/managers/role_manager.rb~
335
346
  - lib/ddr/managers/workflow_manager.rb
336
- - lib/ddr/managers/workflow_manager.rb~
337
347
  - lib/ddr/metadata.rb
338
348
  - lib/ddr/metadata/#permanent_id_record.rb#
339
349
  - lib/ddr/metadata/duke_terms.rb
@@ -344,8 +354,7 @@ files:
344
354
  - lib/ddr/models.rb
345
355
  - lib/ddr/models/#has_ezid_identifier.rb#
346
356
  - lib/ddr/models/#has_permanent_identifier.rb#
347
- - lib/ddr/models/#index.rb#
348
- - lib/ddr/models/#indexing.rb#
357
+ - lib/ddr/models/#index_fields.rb#
349
358
  - lib/ddr/models/access_controllable.rb
350
359
  - lib/ddr/models/base.rb
351
360
  - lib/ddr/models/describable.rb
@@ -356,7 +365,6 @@ files:
356
365
  - lib/ddr/models/fixity_checkable.rb
357
366
  - lib/ddr/models/governable.rb
358
367
  - lib/ddr/models/has_admin_metadata.rb
359
- - lib/ddr/models/has_admin_metadata.rb~
360
368
  - lib/ddr/models/has_attachments.rb
361
369
  - lib/ddr/models/has_children.rb
362
370
  - lib/ddr/models/has_content.rb
@@ -370,10 +378,8 @@ files:
370
378
  - lib/ddr/notifications.rb
371
379
  - lib/ddr/utils.rb
372
380
  - lib/ddr/vocab.rb
373
- - lib/ddr/vocab.rb~
374
381
  - lib/ddr/vocab/asset.rb
375
382
  - lib/ddr/vocab/roles.rb
376
- - lib/ddr/vocab/workflow.rb~
377
383
  - spec/dummy/README.rdoc
378
384
  - spec/dummy/Rakefile
379
385
  - spec/dummy/app/assets/javascripts/application.js
@@ -409,11 +415,18 @@ files:
409
415
  - spec/dummy/db/schema.rb
410
416
  - spec/dummy/db/test.sqlite3
411
417
  - spec/dummy/log/development.log
418
+ - spec/dummy/log/production.log
412
419
  - spec/dummy/log/test.log
413
420
  - spec/dummy/public/404.html
414
421
  - spec/dummy/public/422.html
415
422
  - spec/dummy/public/500.html
416
423
  - spec/dummy/public/favicon.ico
424
+ - spec/dummy/tmp/cache/assets/development/sprockets/13fe41fee1fe35b49d145bcc06610705
425
+ - spec/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af
426
+ - spec/dummy/tmp/cache/assets/development/sprockets/357970feca3ac29060c1e3861e2c0953
427
+ - spec/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994
428
+ - spec/dummy/tmp/cache/assets/development/sprockets/d771ace226fc8215a3572e0aa35bb0d6
429
+ - spec/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655
417
430
  - spec/factories/attachment_factories.rb
418
431
  - spec/factories/collection_factories.rb
419
432
  - spec/factories/component_factories.rb
@@ -440,7 +453,6 @@ files:
440
453
  - spec/models/events_spec.rb
441
454
  - spec/models/file_management_spec.rb
442
455
  - spec/models/has_admin_metadata_spec.rb
443
- - spec/models/has_admin_metadata_spec.rb~
444
456
  - spec/models/item_spec.rb
445
457
  - spec/models/superuser_spec.rb
446
458
  - spec/models/target_spec.rb
@@ -517,6 +529,7 @@ test_files:
517
529
  - spec/dummy/db/schema.rb
518
530
  - spec/dummy/db/test.sqlite3
519
531
  - spec/dummy/log/development.log
532
+ - spec/dummy/log/production.log
520
533
  - spec/dummy/log/test.log
521
534
  - spec/dummy/public/404.html
522
535
  - spec/dummy/public/422.html
@@ -524,6 +537,12 @@ test_files:
524
537
  - spec/dummy/public/favicon.ico
525
538
  - spec/dummy/Rakefile
526
539
  - spec/dummy/README.rdoc
540
+ - spec/dummy/tmp/cache/assets/development/sprockets/13fe41fee1fe35b49d145bcc06610705
541
+ - spec/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af
542
+ - spec/dummy/tmp/cache/assets/development/sprockets/357970feca3ac29060c1e3861e2c0953
543
+ - spec/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994
544
+ - spec/dummy/tmp/cache/assets/development/sprockets/d771ace226fc8215a3572e0aa35bb0d6
545
+ - spec/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655
527
546
  - spec/factories/attachment_factories.rb
528
547
  - spec/factories/collection_factories.rb
529
548
  - spec/factories/component_factories.rb
@@ -550,7 +569,6 @@ test_files:
550
569
  - spec/models/events_spec.rb
551
570
  - spec/models/file_management_spec.rb
552
571
  - spec/models/has_admin_metadata_spec.rb
553
- - spec/models/has_admin_metadata_spec.rb~
554
572
  - spec/models/item_spec.rb
555
573
  - spec/models/superuser_spec.rb
556
574
  - spec/models/target_spec.rb
@@ -1,11 +0,0 @@
1
- class DropWorkflowState < ActiveRecord::Migration
2
- def up
3
- if table_exists?("workflow_states")
4
- drop_table "workflow_states"
5
- end
6
- end
7
-
8
- def down
9
- raise ActiveRecord::IrreversibleMigration
10
- end
11
- end
@@ -1,4 +0,0 @@
1
- class DropWorkflowStates < ActiveRecord::Migration
2
- def change
3
- end
4
- end
@@ -1,13 +0,0 @@
1
- module Ddr
2
- module Datastreams
3
- class AdminMetadataDatastream < ActiveFedora::NtriplesRDFDatastream
4
-
5
- property :permanent_id,
6
- predicate: Ddr::Vocab::Preservation.permanentId
7
-
8
- property :permanent_url,
9
- predicate: Ddr::Vocab::Preservation.permanentUrl
10
-
11
- end
12
- end
13
- end
data/lib/ddr/index.rb~ DELETED
@@ -1,8 +0,0 @@
1
- module Ddr
2
- module Index
3
- extend ActiveSupport::Autoload
4
-
5
- autoload :Fields
6
-
7
- end
8
- end
@@ -1,7 +0,0 @@
1
- module Ddr
2
- module Managers
3
- class IndexManager < Manager
4
-
5
- end
6
- end
7
- end
@@ -1,14 +0,0 @@
1
- module Ddr
2
- module Managers
3
- # @abstract
4
- class Manager
5
-
6
- attr_reader :object
7
-
8
- def initialize
9
- @object = object
10
- end
11
-
12
- end
13
- end
14
- end
@@ -1,21 +0,0 @@
1
- module Ddr
2
- module Managers
3
- class RoleManager
4
-
5
- attr_reader :object
6
-
7
- def initialize(object)
8
- @object = object
9
- end
10
-
11
- def principal_has_role?(principal, role)
12
- ( principals(role) & Array(principal) ).any?
13
- end
14
-
15
- def principals(role)
16
- object.adminMetadata.send(role)
17
- end
18
-
19
- end
20
- end
21
- end
@@ -1,33 +0,0 @@
1
- module Ddr
2
- module Managers
3
- class WorkflowManager < Manager
4
-
5
- PUBLISHED = "published"
6
- UNPUBLISHED = nil
7
-
8
- def published?
9
- object.workflow_state == PUBLISHED
10
- end
11
-
12
- def publish
13
- object.workflow_state = PUBLISHED
14
- end
15
-
16
- def publish!
17
- publish
18
- object.save
19
- end
20
-
21
- def unpublish
22
- object.workflow_state = UNPUBLISHED
23
- end
24
-
25
- def unpublish!
26
- unpublish
27
- object.save
28
- end
29
-
30
- end
31
- end
32
- end
33
-
@@ -1,25 +0,0 @@
1
- module Ddr
2
- module Models
3
- class Index
4
-
5
- Field = Struct.new(:name, :index_as, :method)
6
-
7
- def fields
8
- @fields ||= {}
9
- end
10
-
11
- def field(key, *index_as)
12
- raise "Field :#{key} already indexed." if fields.include?(key)
13
- fields[key] = Field.new.tap do |f|
14
- f.name = ActiveFedora::SolrService.solr_name(key, *index_as)
15
- f.index_as = index_as
16
- yield f if block_given?
17
- end
18
- end
19
-
20
- def [](key)
21
- fields[key]
22
- end
23
- end
24
- end
25
- end
@@ -1,108 +0,0 @@
1
- module Ddr
2
- module Models
3
- module Indexing
4
- extend ActiveSupport::Autoloading
5
-
6
- included do
7
- def self.index(&block)
8
- if block_given?
9
- index.instance_eval(&block)
10
- else
11
- @@index ||= Index.new
12
- end
13
- end
14
- end
15
-
16
- class Index
17
- Field = Struct.new(:name, :index_as, :method)
18
-
19
- class << self
20
- def fields
21
- @fields ||= {}
22
- end
23
-
24
- def field(key, *index_as)
25
- raise "Field :#{key} already indexed." if fields.include?(key)
26
- fields[key] = Field.new.tap do |f|
27
- f.name = ActiveFedora::SolrService.solr_name(key, *index_as)
28
- f.index_as = index_as
29
- yield f if block_given?
30
- end
31
- end
32
-
33
- def [](key)
34
- fields[key]
35
- end
36
- end
37
- end
38
-
39
- def self.index(&block)
40
- Index.instance_eval(&block)
41
- end
42
-
43
-
44
- def to_solr(solr_doc=Hash.new, opts={})
45
- solr_doc = super(solr_doc, opts)
46
- index.fields.values.each_with_object(solr_doc) do |field, doc|
47
- if method = field.method
48
- doc[field.name] = method.is_a?(Symbol) ? send(method) : instance_eval(method)
49
- end
50
- end
51
- end
52
-
53
- def index
54
- Index
55
- end
56
-
57
- # def index_fields
58
- # fields = {
59
- # TITLE => title_display,
60
- # INTERNAL_URI => internal_uri,
61
- # IDENTIFIER => identifier_sort,
62
- # WORKFLOW_STATE => workflow_state
63
- # }
64
- # if permanent_id.present?
65
- # fields[PERMANENT_ID] = permanent_id
66
- # end
67
- # if permanent_url.present?
68
- # fields[PERMANENT_URL] = permanent_url
69
- # end
70
- # if respond_to? :fixity_checks
71
- # last_fixity_check = fixity_checks.last
72
- # fields.merge!(last_fixity_check.to_solr) if last_fixity_check
73
- # end
74
- # if respond_to? :virus_checks
75
- # last_virus_check = virus_checks.last
76
- # fields.merge!(last_virus_check.to_solr) if last_virus_check
77
- # end
78
- # if respond_to?(:original_filename) && original_filename.present?
79
- # fields[ORIGINAL_FILENAME] = original_filename
80
- # end
81
- # if has_content?
82
- # fields[CONTENT_CONTROL_GROUP] = content.controlGroup
83
- # fields[CONTENT_SIZE] = content_size
84
- # fields[CONTENT_SIZE_HUMAN] = content_human_size
85
- # fields[MEDIA_TYPE] = content_type
86
- # fields[MEDIA_MAJOR_TYPE] = content_major_type
87
- # fields[MEDIA_SUB_TYPE] = content_sub_type
88
- # end
89
- # if is_a? Component
90
- # fields[COLLECTION_URI] = collection_uri
91
- # end
92
- # fields
93
- # end
94
-
95
- def title_display
96
- return title.first if title.present?
97
- return identifier.first if identifier.present?
98
- return original_filename if respond_to?(:original_filename) && original_filename.present?
99
- "[#{pid}]"
100
- end
101
-
102
- def identifier_sort
103
- identifier.first
104
- end
105
-
106
- end
107
- end
108
- end