cul_hydra_models 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 572252de6bc635f3ee42e3bf6984cb03b31fca8c
4
+ data.tar.gz: 37e796f0288e6d74bc5b277bbe0fbd15c4c6b211
5
+ SHA512:
6
+ metadata.gz: bb25208b04d0a6f0c651d933ecfdbde052103832d51e3ab4fb5f65a6b724738f1df1e91685b5a5470f30652b83c05b82e8bd4c371db182f18b54229e2685969f
7
+ data.tar.gz: 9008924b9e5be9a6045ce1ee1bf6406f8f0b8c5a78b0bc6549458605ae699279a43d422681f097b140b3e9bc3a71f23a1d43b2a5b63032b55ce159e7fd88fbb7
data/MIT-LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ Copyright 2017 Eric O
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,31 @@
1
+ # CUL Hydra Models for repository applications
2
+
3
+ - Requires Rails 5.1.1 or later.
4
+ - Relies on ActiveFedora 8 gem.
5
+ - Works with Fedora 3.8.
6
+
7
+ ## Installation
8
+ Add this line to your application's Gemfile:
9
+
10
+ ```ruby
11
+ gem 'cul_hydra_models'
12
+ ```
13
+
14
+ And then execute:
15
+ ```bash
16
+ $ bundle
17
+ ```
18
+
19
+ Or install it yourself as:
20
+ ```bash
21
+ $ gem install cul_hydra_models
22
+ ```
23
+
24
+ ## To Run Integration Tests (coming soon)
25
+ ```
26
+ bundle exec rake cul_hydra:ci
27
+ ```
28
+ ## To Run Unit Tests
29
+ ```
30
+ bundle exec rspec spec/unit
31
+ ```
data/Rakefile ADDED
@@ -0,0 +1,37 @@
1
+ begin
2
+ require 'bundler/setup'
3
+ rescue LoadError
4
+ puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
5
+ end
6
+
7
+ require 'rdoc/task'
8
+
9
+ RDoc::Task.new(:rdoc) do |rdoc|
10
+ rdoc.rdoc_dir = 'rdoc'
11
+ rdoc.title = 'CulHydraModels'
12
+ rdoc.options << '--line-numbers'
13
+ rdoc.rdoc_files.include('README.md')
14
+ rdoc.rdoc_files.include('lib/**/*.rb')
15
+ end
16
+
17
+ APP_RAKEFILE = File.expand_path("../spec/dummy/Rakefile", __FILE__)
18
+ load 'rails/tasks/engine.rake'
19
+
20
+ load 'rails/tasks/statistics.rake'
21
+
22
+ require 'bundler/gem_tasks'
23
+
24
+ # Add our gem's rake task files
25
+ Dir.glob("lib/tasks/*.rake").each do |rakefile|
26
+ load rakefile
27
+ end
28
+
29
+ # require 'rake/testtask'
30
+ #
31
+ # Rake::TestTask.new(:test) do |t|
32
+ # t.libs << 'test'
33
+ # t.pattern = 'test/**/*_test.rb'
34
+ # t.verbose = false
35
+ # end
36
+ #
37
+ # task default: :test
File without changes
@@ -0,0 +1,4 @@
1
+ require 'active-fedora'
2
+ class Collection < ActiveFedora::Base
3
+ include CulHydraModels::Common
4
+ end
@@ -0,0 +1,4 @@
1
+ require 'active-fedora'
2
+ class Concept < ActiveFedora::Base
3
+ include CulHydraModels::Common
4
+ end
@@ -0,0 +1,23 @@
1
+ require 'active-fedora'
2
+ module CulHydraModels
3
+ module Common
4
+ extend ActiveSupport::Concern
5
+
6
+ included do
7
+ extend ActiveModel::Callbacks
8
+ has_metadata "descMetadata", type: Datastreams::ModsDocument, versionable: true
9
+ end
10
+
11
+ module ClassMethods
12
+ end
13
+
14
+ # A Fedora object label can only contain a string value of up to 255 characters. If we try to
15
+ # set a longer value, it causes errors upon object save. Truncate labels to 255 characters.
16
+ # Note: this method maps to a method_missing hanlder that converts input into a String, so
17
+ # we use the super method first, and then post-process the output of that super method call.
18
+ def label=(new_label)
19
+ super(new_label)
20
+ super(self.label[0, 255])
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,4 @@
1
+ require 'active-fedora'
2
+ class ContentAggregator < ActiveFedora::Base
3
+ include CulHydraModels::Common
4
+ end
@@ -0,0 +1,3 @@
1
+ require 'active-fedora'
2
+ class Datastreams::ModsDocument < ActiveFedora::OmDatastream
3
+ end
@@ -0,0 +1,4 @@
1
+ require 'active-fedora'
2
+ class GenericResource < ActiveFedora::Base
3
+ include CulHydraModels::Common
4
+ end
@@ -0,0 +1,107 @@
1
+ # The default namespace maps to the default namespace for generating rels_ext from solr
2
+ :default_namespace: info:fedora/fedora-system:def/relations-external#
3
+
4
+ # namespace mappings---
5
+ # you can add specific mappings for your institution by providing the following:
6
+ # namespace_uri:
7
+ # :relationship_symbol: relationship_identifier
8
+ #
9
+ # For example, if you have the following element in your rels_ext:
10
+ #
11
+ # <oai:itemID>oai:example.edu:changeme:500</oai:itemID>
12
+ #
13
+ # With the last two lines of this file uncommented, the relationships hash of your object will include:
14
+ # :oai_item_id => ["info:fedora/oai:example.edu:changeme:500"]
15
+ #
16
+ :predicate_mapping:
17
+ http://purl.oclc.org/NET/CUL/:
18
+ :cul_has_member: hasMember
19
+ :cul_member_of: memberOf
20
+ :cul_metadata_for: metadataFor
21
+ :cul_obsolete_from: obsoleteFrom
22
+ http://creativecommons.org/ns#:
23
+ :cc_license: license
24
+ info:fedora/fedora-system:def/relations-external#:
25
+ :conforms_to: conformsTo
26
+ :has_annotation: hasAnnotation
27
+ :has_collection_member: hasCollectionMember
28
+ :has_constituent: hasConstituent
29
+ :has_dependent: hasDependent
30
+ :has_derivation: hasDerivation
31
+ :has_description: hasDescription
32
+ :has_equivalent: hasEquivalent
33
+ :has_metadata: hasMetadata
34
+ :has_member: hasMember
35
+ :has_model: hasModel
36
+ :has_part: hasPart
37
+ :has_subset: hasSubset
38
+ :is_annotation_of: isAnnotationOf
39
+ :is_constituent_of: isConstituentOf
40
+ :is_dependent_of: isDependentOf
41
+ :is_derivation_of: isDerivationOf
42
+ :is_description_of: isDescriptionOf
43
+ :is_member_of: isMemberOf
44
+ :is_member_of_collection: isMemberOfCollection
45
+ :is_metadata_for: isMetadataFor
46
+ :is_part_of: isPartOf
47
+ :is_subset_of: isSubsetOf
48
+ info:fedora/fedora-system:def/model#:
49
+ :has_model: hasModel
50
+ http://purl.oclc.org/NET/CUL/RESOURCE/STILLIMAGE/BASIC/:
51
+ :cul_image_width: imageWidth
52
+ :cul_image_length: imageLength
53
+ http://purl.oclc.org/NET/CUL/RESOURCE/STILLIMAGE/ASSESSMENT/:
54
+ :x_sampling: xSamplingFrequency
55
+ :y_sampling: ySamplingFrequency
56
+ :sampling_unit: samplingFrequencyUnit
57
+ http://purl.org/dc/terms/:
58
+ :abstract: abstract
59
+ :alternative: alternative
60
+ :contributor: contributor
61
+ :description: description
62
+ :extent: extent
63
+ :format: format
64
+ :format_of: isFormatOf
65
+ :publisher: publisher
66
+ :source: source
67
+ :title: title
68
+ http://www.w3.org/2003/12/exif/ns#:
69
+ :image_width: imageWidth
70
+ :image_length: imageLength
71
+ :x_resolution: xResolution
72
+ :y_resolution: yResolution
73
+ :resolution_unit: resolutionUnit
74
+ :orientation: orientation
75
+ http://xmlns.com/foaf/0.1/:
76
+ :foaf_image: image
77
+ :foaf_thumbnail: thumbnail
78
+ :foaf_zooming: zoomingImage
79
+ :foaf_depicts: depicts
80
+ :foaf_depiction: depiction
81
+ http://www.w3.org/1999/02/22-rdf-syntax-ns#:
82
+ :rdf_type: type
83
+ http://www.loc.gov/premis/rdf/v1#:
84
+ :original_name: hasOriginalName
85
+ :restriction: hasRestriction
86
+ http://pcdm.org/models#:
87
+ :pcdm_has_file: hasFile
88
+ :pcdm_file_of: fileOf
89
+ :pcdm_has_member: hasMember
90
+ :pcdm_member_of: memberOf
91
+ :pcdm_has_related_file: hasRelatedFile
92
+ :pcdm_related_file_of: relatedFileOf
93
+ :pcdm_has_related_object: hasRelatedObject
94
+ :pcdm_related_object_of: relatedObjectOf
95
+ http://purl.org/ontology/bibo/:
96
+ :short_title: shortTitle
97
+ :ezid_doi: doi
98
+ http://www.bbc.co.uk/ontologies/coreconcepts/:
99
+ :slug: slug
100
+ https://schema.org/:
101
+ :schema_image: image
102
+ http://www.openarchives.org/ore/terms/:
103
+ :lineage: lineage
104
+ http://www.w3.org/ns/ldp#:
105
+ :ldp_contains: contains
106
+ http://iiif.io/api/image/2#:
107
+ :region_featured: regionFeatured
data/config/routes.rb ADDED
@@ -0,0 +1,2 @@
1
+ Rails.application.routes.draw do
2
+ end
@@ -0,0 +1,19 @@
1
+ module CulHydraModels
2
+ class Engine < ::Rails::Engine
3
+ isolate_namespace CulHydraModels
4
+
5
+ config.generators do |g|
6
+ g.test_framework :rspec
7
+ end
8
+
9
+ config.before_configuration do
10
+ # If no config/predicate_mappings.yml file exists in the project this gem is pulled into, load predicates from the gem
11
+ unless File.exists?('config/predicate_mappings.yml')
12
+ require 'active-fedora'
13
+ cul_hydra_models_gem_location = Bundler.rubygems.find_name('cul_hydra_models').first.full_gem_path
14
+ config_path = File.join(cul_hydra_models_gem_location, 'config/predicate_mappings.yml')
15
+ ActiveFedora.init(predicate_mappings_config_path: config_path)
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,4 @@
1
+ module CulHydraModels
2
+ class Engine < ::Rails::Engine
3
+ end
4
+ end
@@ -0,0 +1,3 @@
1
+ module CulHydraModels
2
+ VERSION = '0.1.1'
3
+ end
@@ -0,0 +1,3 @@
1
+ module CulHydraModels
2
+ VERSION = '0.1.0'
3
+ end
@@ -0,0 +1,4 @@
1
+ require "cul_hydra_models/engine"
2
+
3
+ module CulHydraModels
4
+ end
data/lib/tasks/ci.rake ADDED
@@ -0,0 +1,73 @@
1
+ namespace :cul_hydra_models do
2
+
3
+ begin
4
+ # This code is in a begin/rescue block so that the Rakefile is usable
5
+ # in an environment where RSpec is unavailable (i.e. production).
6
+
7
+ require 'rspec/core/rake_task'
8
+
9
+ RSpec::Core::RakeTask.new(:rspec) do |spec|
10
+ spec.pattern = FileList['spec/**/*_spec.rb']
11
+ spec.pattern += FileList['spec/*_spec.rb']
12
+ spec.rspec_opts = ['--backtrace'] if ENV['CI']
13
+ end
14
+
15
+ RSpec::Core::RakeTask.new(:rcov) do |spec|
16
+ spec.pattern = FileList['spec/**/*_spec.rb']
17
+ spec.pattern += FileList['spec/*_spec.rb']
18
+ spec.rcov = true
19
+ end
20
+
21
+ require 'rubocop/rake_task'
22
+
23
+ desc 'Run style checker'
24
+ RuboCop::RakeTask.new(:rubocop) do |task|
25
+ task.requires << 'rubocop-rspec'
26
+ task.fail_on_error = true
27
+ end
28
+
29
+ rescue LoadError => e
30
+ puts "[Warning] Exception creating rspec rake tasks. This message can be ignored in environments that intentionally do not pull in the RSpec gem (i.e. production)."
31
+ puts e
32
+ end
33
+
34
+ desc "CI build without rubocop"
35
+ task :ci_nocop do
36
+ exec({ 'RAILS_ENV' => 'test' }, 'bundle', 'exec', 'rake', 'cul_hydra_models:ci_task')
37
+ end
38
+
39
+ desc "CI build with Rubocop validation"
40
+ task ci: ['cul_hydra_models:rubocop'] do
41
+ exec({ 'RAILS_ENV' => 'test' }, 'bundle', 'exec', 'rake', 'cul_hydra_models:ci_task')
42
+ end
43
+
44
+ desc "CI build"
45
+ task :ci_task do
46
+ require 'jettywrapper'
47
+ Jettywrapper.url = "https://github.com/projecthydra/hydra-jetty/archive/7.x-stable.zip"
48
+ Jettywrapper.jetty_dir = File.join(Rails.root, 'tmp', 'jetty-test')
49
+
50
+ unless File.exists?(Jettywrapper.jetty_dir)
51
+ puts "\nNo test jetty found. Will download / unzip a copy now.\n"
52
+ end
53
+ Rake::Task["jetty:clean"].invoke
54
+
55
+ jetty_params = Jettywrapper.load_config.merge(jetty_home: Jettywrapper.jetty_dir)
56
+ puts "Starting Fedora 3 (jettywrapper)...\n"
57
+ error = Jettywrapper.wrap(jetty_params) do
58
+ Rake::Task["cul_hydra_models:cmodel:reload_all"].invoke
59
+ Rake::Task['cul_hydra_models:coverage'].invoke
60
+ puts 'Stopping Fedora 3 (jettywrapper)...'
61
+ end
62
+ raise "test failures: #{error}" if error
63
+ end
64
+
65
+ desc "Execute specs with coverage"
66
+ task :coverage do
67
+ # Put spec opts in a file named .rspec in root
68
+ ruby_engine = defined?(RUBY_ENGINE) ? RUBY_ENGINE : "ruby"
69
+ ENV['COVERAGE'] = 'true' unless ruby_engine == 'jruby'
70
+ Rake::Task["cul_hydra_models:rspec"].invoke
71
+ end
72
+
73
+ end
@@ -0,0 +1,120 @@
1
+ APP_ROOT = File.expand_path("#{File.dirname(__FILE__)}/../../") unless defined?(APP_ROOT)
2
+ require 'active-fedora'
3
+
4
+ def logger
5
+ @logger ||= Logger.new($stdout)
6
+ end
7
+
8
+ def filename_for_pid(pid)
9
+ pid.gsub(/\:/, '_') + '.xml'
10
+ end
11
+
12
+ def pid_for_filename(fname)
13
+ fname.sub(/\.xml$/, '').sub(/_/, ':')
14
+ end
15
+
16
+ def cmodel_fixture(name)
17
+ path = File.join(APP_ROOT, 'spec', 'fixtures', 'cmodels', name)
18
+ File.open(path, 'rb')
19
+ end
20
+
21
+ def each_cmodel
22
+ path = File.join(APP_ROOT, 'spec', 'fixtures', 'cmodels')
23
+ Dir.new(path).each do |fname|
24
+ if fname =~ /\.xml$/
25
+ yield pid_for_filename(fname)
26
+ end
27
+ end
28
+ end
29
+
30
+ def config_subs
31
+ @subs ||= begin
32
+ cfile = File.join(APP_ROOT, 'config', 'subs.yml')
33
+ subs = {}
34
+ if File.exists? cfile
35
+ open(cfile) { |blob| subs = YAML::load(blob)[ENV['RAILS_ENV'] || 'test'] }
36
+ else
37
+ logger.warn("No subs.yml found; CModels will be loaded without inline substitutions")
38
+ end
39
+ subs
40
+ end
41
+ @subs
42
+ end
43
+
44
+ def do_subs(orig)
45
+ content = orig.clone
46
+ config_subs.each do |key, val|
47
+ content.gsub!(/\$#{key.to_s}\$/, val)
48
+ end
49
+ content
50
+ end
51
+
52
+ def connection
53
+ # no need to go through AF for this except laziness re: finding the YAML
54
+ @connection ||= (ActiveFedora::Base.fedora_connection[0] ||= ActiveFedora::RubydoraConnection.new(ActiveFedora.config.credentials)).connection
55
+ end
56
+
57
+ def content_for(pid)
58
+ fname = filename_for_pid(pid)
59
+ fcontent = cmodel_fixture(fname).read
60
+ fcontent = do_subs(fcontent)
61
+ end
62
+
63
+ def load_content(content, pid)
64
+ begin
65
+ connection.ingest(file: StringIO.new(content), pid: pid)
66
+ rescue Exception => e
67
+ puts "possible problem with ingest of #{pid}: #{e.message}"
68
+ raise e
69
+ end
70
+ end
71
+
72
+ def purge(pid)
73
+ begin
74
+ connection.purge_object(pid: pid)
75
+ rescue Exception => e
76
+ puts "possible problem with purge of #{pid}: #{e.message}"
77
+ end
78
+ end
79
+
80
+ def reload(pid)
81
+ fcontent = content_for(pid)
82
+ purge(pid)
83
+ load_content(fcontent, pid)
84
+ end
85
+
86
+ namespace :cul_hydra_models do
87
+ namespace :cmodel do
88
+ task :test do #=> :environment do
89
+ pid = ENV["PID"]
90
+ puts content_for(pid)
91
+ end
92
+
93
+ task :load do #=> :environment do
94
+ pid = ENV["PID"]
95
+ load_content(content_for(pid), pid)
96
+ end
97
+
98
+ task :purge do #=> :environment do
99
+ pid = ENV["PID"]
100
+ purge(pid)
101
+ end
102
+
103
+ task :reload do #=> :environment do
104
+ pid = ENV["PID"]
105
+ reload(pid)
106
+ end
107
+
108
+ task :reload_all do #=> :environment do
109
+ pattern = ENV["PATTERN"]
110
+ pattern = Regexp.compile(pattern) if pattern
111
+ reload("ldpd:nullbind")
112
+ each_cmodel do |pid|
113
+ unless (pattern && pid !~ pattern)
114
+ puts "reloading #{pid}"
115
+ reload(pid)
116
+ end
117
+ end
118
+ end
119
+ end
120
+ end
metadata ADDED
@@ -0,0 +1,202 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: cul_hydra_models
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.1
5
+ platform: ruby
6
+ authors:
7
+ - Eric O'Hanlon
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2017-05-23 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rails
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '5.1'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '5.1'
27
+ - !ruby/object:Gem::Dependency
28
+ name: active-fedora
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '8.4'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '8.4'
41
+ - !ruby/object:Gem::Dependency
42
+ name: erubis
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: bundler
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: 1.15.0
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: 1.15.0
69
+ - !ruby/object:Gem::Dependency
70
+ name: sqlite3
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rspec-rails
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: 3.6.0
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: 3.6.0
97
+ - !ruby/object:Gem::Dependency
98
+ name: jettywrapper
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '1.8'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '1.8'
111
+ - !ruby/object:Gem::Dependency
112
+ name: rubocop
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: 0.48.1
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: 0.48.1
125
+ - !ruby/object:Gem::Dependency
126
+ name: rubocop-rspec
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: rubocop-rails
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
153
+ description: Hydra models for CUL repository apps.
154
+ email:
155
+ - elo2112@columbia.edu
156
+ executables: []
157
+ extensions: []
158
+ extra_rdoc_files: []
159
+ files:
160
+ - MIT-LICENSE
161
+ - README.md
162
+ - Rakefile
163
+ - app/assets/config/cul_hydra_models_manifest.js
164
+ - app/models/collection.rb
165
+ - app/models/concept.rb
166
+ - app/models/concerns/cul_hydra_models/common.rb
167
+ - app/models/content_aggregator.rb
168
+ - app/models/datastreams/mods_document.rb
169
+ - app/models/generic_resource.rb
170
+ - config/predicate_mappings.yml
171
+ - config/routes.rb
172
+ - lib/cul_hydra_models.rb
173
+ - lib/cul_hydra_models/engine.rb
174
+ - lib/cul_hydra_models/engine.rb~
175
+ - lib/cul_hydra_models/version.rb
176
+ - lib/cul_hydra_models/version.rb~
177
+ - lib/tasks/ci.rake
178
+ - lib/tasks/cmodel.rake
179
+ homepage: https://github.com/cul/cul_hydra_models
180
+ licenses: []
181
+ metadata: {}
182
+ post_install_message:
183
+ rdoc_options: []
184
+ require_paths:
185
+ - lib
186
+ required_ruby_version: !ruby/object:Gem::Requirement
187
+ requirements:
188
+ - - ">="
189
+ - !ruby/object:Gem::Version
190
+ version: '0'
191
+ required_rubygems_version: !ruby/object:Gem::Requirement
192
+ requirements:
193
+ - - ">="
194
+ - !ruby/object:Gem::Version
195
+ version: '0'
196
+ requirements: []
197
+ rubyforge_project:
198
+ rubygems_version: 2.6.12
199
+ signing_key:
200
+ specification_version: 4
201
+ summary: Hydra models for CUL repository apps.
202
+ test_files: []