active-fedora 7.0.2 → 7.0.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 3901cc3cf493df96f7126b87a79a397cdf8a6e89
4
+ data.tar.gz: b9135e235d4748bdf1d0fdaa10674ee35bc5bf41
5
+ SHA512:
6
+ metadata.gz: 23029a9d98b89725f27191a61ca3418e9e94e61553679ced67d660f3e7a8de916e7f68e7ac4f0173cf9e67463329f4abf4cdb9588a71f0b4cc0bf8b87af3a1c9
7
+ data.tar.gz: a6d0708788d1ef3f6781f077b0aba9dab06adcb2a4144f9b4df09e63ff2c4e501ec1ad1986498e68fe49903033b4d2acf2775c76ab32429d26be9abe8e05051b
data/README.md CHANGED
@@ -5,7 +5,7 @@ Description
5
5
  [![Version](https://badge.fury.io/rb/active-fedora.png)](http://badge.fury.io/rb/active-fedora)
6
6
  [![Dependencies](https://gemnasium.com/projecthydra/active_fedora.png)](https://gemnasium.com/projecthydra/active\_fedora)
7
7
 
8
- RubyFedora and ActiveFedora provide a set of Ruby gems for creating and
8
+ Rubydora and ActiveFedora provide a set of Ruby gems for creating and
9
9
  managing objects in the Fedora Repository Architecture
10
10
  ([http://fedora-commons.org](http://fedora-commons.org)). ActiveFedora
11
11
  is loosely based on “ActiveRecord” in Rails. The 3.x series of
@@ -22,15 +22,14 @@ Getting Help
22
22
  Installation
23
23
  ------------
24
24
 
25
- The gem is hosted on gemcutter.
25
+ The gem is hosted on rubygems.
26
26
 
27
27
  gem install active-fedora
28
28
 
29
29
  Getting Started
30
30
  ---------------
31
31
 
32
- The [ActiveFedora Console
33
- Tour](https://github.com/projecthydra/active_fedora/wiki/Getting-Started:-Console-Tour)
32
+ The [Dive into Hydra](https://github.com/projecthydra/hydra/wiki/Dive-into-Hydra)
34
33
  gives you a brief tour through ActiveFedora’s features on the command
35
34
  line.
36
35
 
@@ -106,38 +105,7 @@ Acknowledgements
106
105
 
107
106
  Creator: Matt Zumwalt ([MediaShelf](http://yourmediashelf.com))
108
107
 
109
- Developers: \
108
+ Developers:
110
109
  Justin Coyne, McClain Looney & Eddie Shin
111
110
  ([MediaShelf](http://yourmediashelf.com)), Rick Johnson (Notre Dame)
112
111
 
113
- LICENSE:
114
- --------
115
-
116
- Copyright © 2009-2012 Matt Zumwalt & MediaShelf, LLC
117
-
118
- This program is free software: you can redistribute it and/or modify\
119
- it under the terms of the GNU Lesser General Public License (LGPL) as \
120
- published by the Free Software Foundation, either version 3 of the
121
- License, \
122
- or (at your option) any later version.
123
-
124
- This program is distributed in the hope that it will be useful,\
125
- but WITHOUT ANY WARRANTY; without even the implied warranty of\
126
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\
127
- GNU General Public License for more details.
128
-
129
- You should have received a copy of the GNU Lesser General Public
130
- License\
131
- along with this program. If not, see <http://www.gnu.org/licenses/> or \
132
- see <http://www.gnu.org/licenses/lgpl.html>.
133
-
134
- The above copyright notice and this permission notice shall be\
135
- included in all copies or substantial portions of the Software.
136
-
137
- THE SOFTWARE IS PROVIDED ‘AS IS’, WITHOUT WARRANTY OF ANY KIND,\
138
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\
139
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\
140
- IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\
141
- CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\
142
- TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\
143
- SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -23,6 +23,7 @@ module ActiveFedora #:nodoc:
23
23
  class UnregisteredPredicateError < RuntimeError; end # :nodoc:
24
24
  class RecordNotSaved < RuntimeError; end # :nodoc:
25
25
  class IllegalOperation < RuntimeError; end # :nodoc:
26
+ class Rollback < RuntimeError; end # :nodoc:
26
27
 
27
28
 
28
29
  eager_autoload do
@@ -41,8 +41,8 @@ module ActiveFedora
41
41
 
42
42
  if association.nil?
43
43
  reflection = self.class.reflect_on_association(name)
44
- association = reflection.association_class.new(self, reflection)
45
- association_instance_set(name, association)
44
+ association = reflection.association_class.new(self, reflection) if reflection
45
+ association_instance_set(name, association) if association
46
46
  end
47
47
 
48
48
  association
@@ -3,25 +3,29 @@ module ActiveFedora
3
3
  class BelongsToAssociation < SingularAssociation #:nodoc:
4
4
 
5
5
  def id_writer(id)
6
+ @full_result = nil
6
7
  remove_matching_property_relationship
7
8
  return if id.blank? or id == ActiveFedora::UnsavedDigitalObject::PLACEHOLDER
8
9
  @owner.add_relationship(@reflection.options[:property], ActiveFedora::Base.internal_uri(id))
9
10
  end
10
11
 
11
12
  def id_reader
12
- # need to find the id with the correct class
13
- ids = @owner.ids_for_outbound(@reflection.options[:property])
13
+ @full_result ||= begin
14
+ # need to find the id with the correct class
15
+ ids = @owner.ids_for_outbound(@reflection.options[:property])
16
+
17
+ return if ids.empty?
18
+ # This incurs a lot of overhead, but it's necessary if the users use one property for more than one association.
19
+ # e.g.
20
+ # belongs_to :author, property: :has_member, class_name: 'Person'
21
+ # belongs_to :publisher, property: :has_member
14
22
 
15
- return if ids.empty?
16
- # This incurs a lot of overhead, but it's necessary if the users use one property for more than one association.
17
- # e.g.
18
- # belongs_to :author, :property=>:has_member, :class_name=>'Person'
19
- # belongs_to :publisher, :property=>:has_member
20
- results = SolrService.query(ActiveFedora::SolrService.construct_query_for_pids(ids))
21
- results.each do |result|
22
- return result['id'] if SolrService.classes_from_solr_document(result).include? klass
23
+ results = SolrService.query(construct_query(ids))
24
+ if results.present?
25
+ results.first
26
+ end
23
27
  end
24
- return nil
28
+ @full_result['id'] if @full_result
25
29
  end
26
30
 
27
31
  def replace(record)
@@ -51,20 +55,17 @@ module ActiveFedora
51
55
 
52
56
  private
53
57
  def find_target
54
- pid = id_reader
55
- return unless pid
56
- solr_result = SolrService.query(construct_query(pid))
57
- return ActiveFedora::SolrService.reify_solr_results(solr_result).first
58
+ ActiveFedora::SolrService.reify_solr_results([@full_result]).first if id_reader
58
59
  end
59
60
 
60
- def construct_query pid
61
- if klass != ActiveFedora::Base
62
- clauses = {}
63
- clauses[:has_model] = klass.to_class_uri
64
- query = ActiveFedora::SolrService.construct_query_for_rel(clauses) + " AND (" + ActiveFedora::SolrService.construct_query_for_pids([pid]) + ")"
65
- else
66
- query = ActiveFedora::SolrService.construct_query_for_pids(pid)
67
- end
61
+ # Constructs a query that checks solr for the correct id & class_name combination
62
+ def construct_query(ids)
63
+ # Some descendants of ActiveFedora::Base are anonymous classes. They don't have names. Filter them out.
64
+ candidate_classes = klass.descendants.select {|d| d.name }
65
+ candidate_classes += [klass] unless klass == ActiveFedora::Base
66
+ model_pairs = candidate_classes.inject([]) { |arr, klass| arr << [:has_model, klass.to_class_uri]; arr }
67
+ '(' + ActiveFedora::SolrService.construct_query_for_pids(ids) + ') AND (' +
68
+ ActiveFedora::SolrService.construct_query_for_rel(model_pairs, 'OR') + ')'
68
69
  end
69
70
 
70
71
  def remove_matching_property_relationship
@@ -1,16 +1,8 @@
1
1
  module ActiveFedora
2
- class ContentModel < Base
2
+ module ContentModel
3
3
  CMODEL_NAMESPACE = "afmodel"
4
4
  CMODEL_PID_SUFFIX = ""
5
5
 
6
- attr_accessor :pid_suffix, :namespace
7
-
8
- def initialize(attrs={})
9
- @pid_suffix = attrs.has_key?(:pid_suffix) ? attrs[:pid_suffix] : CMODEL_PID_SUFFIX
10
- @namespace = attrs.has_key?(:namespace) ? attrs[:namespace] : CMODEL_NAMESPACE
11
- super
12
- end
13
-
14
6
  ###Override this, if you prefer your class names serialized some other way
15
7
  def self.sanitized_class_name(klass)
16
8
  klass.name.gsub(/(::)/, '_')
@@ -56,16 +56,6 @@ module ActiveFedora
56
56
  end
57
57
  end
58
58
 
59
- #Returns all possible classes for the solr object
60
- def classes_from_solr_document(hit, opts = {})
61
- #Add ActiveFedora::Base as never stored in Solr explicitely.
62
- classes = [ActiveFedora::Base]
63
-
64
- hit[HAS_MODEL_SOLR_FIELD].each { |value| classes << Model.from_class_uri(value) }
65
-
66
- classes
67
- end
68
-
69
59
  #Returns the best singular class for the solr object
70
60
  def class_from_solr_document(hit, opts = {})
71
61
  #Set the default starting point to the class specified, if available.
@@ -117,10 +107,15 @@ module ActiveFedora
117
107
  end
118
108
 
119
109
  # Create a query with a clause for each key, value
120
- # @param [Hash] args key is the predicate, value is the target_uri
121
- def construct_query_for_rel(args)
122
- clauses = args.map { |predicate, target_uri| raw_query(solr_name(predicate, :symbol), target_uri) }
123
- clauses.join(" AND ".freeze)
110
+ # @param [Hash, Array<Array<String>>] args key is the predicate, value is the target_uri
111
+ # @param [String] join_with ('AND') the value we're joining the clauses with
112
+ # @example
113
+ # construct_query_for_rel [[:has_model, "info:fedora/afmodel:ComplexCollection"], [:has_model, "info:fedora/afmodel:ActiveFedora_Base"]], 'OR'
114
+ # # => _query_:"{!raw f=has_model_ssim}info:fedora/afmodel:ComplexCollection" OR _query_:"{!raw f=has_model_ssim}info:fedora/afmodel:ActiveFedora_Base"
115
+ def construct_query_for_rel(field_pairs, join_with = 'AND')
116
+ field_pairs = field_pairs.to_a if field_pairs.kind_of? Hash
117
+ clauses = field_pairs.map { |(predicate, target_uri)| raw_query(solr_name(predicate, :symbol), target_uri) }
118
+ clauses.join(" #{join_with} ".freeze)
124
119
  end
125
120
 
126
121
  def query(query, args={})
@@ -1,3 +1,3 @@
1
1
  module ActiveFedora
2
- VERSION = "7.0.2"
3
- end
2
+ VERSION = "7.0.3"
3
+ end
@@ -7,7 +7,7 @@ describe ActiveFedora::Base do
7
7
  end
8
8
 
9
9
  class Book < ActiveFedora::Base
10
- belongs_to :library, :property=>:has_constituent
10
+ belongs_to :library, property: :has_constituent
11
11
  end
12
12
  class SpecialInheritedBook < Book
13
13
  end
@@ -39,6 +39,7 @@ describe ActiveFedora::Base do
39
39
  m.field "fubar", :string
40
40
  m.field "bandana", :string
41
41
  m.field "swank", :text
42
+ m.field "animal_id", :string
42
43
  end
43
44
  has_metadata :type=>ActiveFedora::SimpleDatastream, :name=>"withText" do |m|
44
45
  m.field "fubar", :text
@@ -53,6 +54,7 @@ describe ActiveFedora::Base do
53
54
  has_attributes :pig, datastream: 'xmlish', multiple: false
54
55
  has_attributes :horse, datastream: 'xmlish', multiple: true
55
56
  has_attributes :duck, datastream: 'xmlish', :at=>[:waterfowl, :ducks, :duck], multiple: true
57
+ has_attributes :animal_id, datastream: 'someData', multiple: false
56
58
  end
57
59
  end
58
60
 
@@ -64,12 +66,12 @@ describe ActiveFedora::Base do
64
66
 
65
67
  describe "inspect" do
66
68
  it "should show the attributes" do
67
- expect(subject.inspect).to eq "#<BarHistory2 pid: nil, cow: \"\", fubar: [], pig: nil, horse: [], duck: [\"\"]>"
69
+ expect(subject.inspect).to eq "#<BarHistory2 pid: nil, cow: \"\", fubar: [], pig: nil, horse: [], duck: [\"\"], animal_id: nil>"
68
70
  end
69
71
  describe "with a pid" do
70
72
  before { subject.stub(pid: 'test:123') }
71
73
  it "should show a pid" do
72
- expect(subject.inspect).to eq "#<BarHistory2 pid: \"test:123\", cow: \"\", fubar: [], pig: nil, horse: [], duck: [\"\"]>"
74
+ expect(subject.inspect).to eq "#<BarHistory2 pid: \"test:123\", cow: \"\", fubar: [], pig: nil, horse: [], duck: [\"\"], animal_id: nil>"
73
75
  end
74
76
  end
75
77
  describe "with no attributes" do
@@ -92,7 +94,7 @@ describe ActiveFedora::Base do
92
94
  Object.send(:remove_const, :BarHistory3)
93
95
  end
94
96
  it "should show the library_id" do
95
- expect(subject.inspect).to eq "#<BarHistory3 pid: nil, cow: \"\", fubar: [], pig: nil, horse: [], duck: [\"\"], library_id: \"#{library.pid}\">"
97
+ expect(subject.inspect).to eq "#<BarHistory3 pid: nil, cow: \"\", fubar: [], pig: nil, horse: [], duck: [\"\"], animal_id: nil, library_id: \"#{library.pid}\">"
96
98
  end
97
99
  end
98
100
  end
@@ -154,6 +156,11 @@ describe ActiveFedora::Base do
154
156
  subject['duck'].should == ["Cluck", "Gobble"]
155
157
  end
156
158
 
159
+ it "should accept field names with _id that are not associations" do
160
+ subject['animal_id'] = ["lemur"]
161
+ subject['animal_id'].should == ["lemur"]
162
+ end
163
+
157
164
  it "should raise an error on the reader when the field isn't delegated" do
158
165
  expect {subject['goose'] }.to raise_error ActiveFedora::UnknownAttributeError, "BarHistory2 does not have an attribute `goose'"
159
166
  end
@@ -170,7 +177,7 @@ describe ActiveFedora::Base do
170
177
  end
171
178
 
172
179
  describe "attributes" do
173
- let(:vals) { {'cow'=>["moo"], 'pig' => ['oink'], 'horse' =>['neigh'], "fubar"=>[], 'duck'=>['quack'] } }
180
+ let(:vals) { {'cow'=>["moo"], 'pig' => ['oink'], 'horse' =>['neigh'], "fubar"=>[], 'duck'=>['quack'], 'animal_id'=>[] } }
174
181
  before { subject.attributes = vals }
175
182
  it "should return a hash" do
176
183
  expect(subject.attributes).to eq(vals.merge('id' => nil))
@@ -18,38 +18,6 @@ describe ActiveFedora::ContentModel do
18
18
  end
19
19
  end
20
20
 
21
- before(:each) do
22
- stub_get('__nextid__')
23
- ActiveFedora::Base.stub(:assign_pid).and_return("__nextid__")
24
- Rubydora::Repository.any_instance.stub(:client).and_return(@mock_client)
25
- @test_cmodel = ActiveFedora::ContentModel.new
26
- end
27
-
28
- it "should provide #new" do
29
- ActiveFedora::ContentModel.should respond_to(:new)
30
- end
31
-
32
- describe "#new" do
33
- it "should create a kind of ActiveFedora::Base object" do
34
- @test_cmodel.should be_kind_of(ActiveFedora::Base)
35
- end
36
- it "should set pid_suffix to empty string unless overriden in options hash" do
37
- @test_cmodel.pid_suffix.should == ""
38
- boo_model = ActiveFedora::ContentModel.new(:pid_suffix => "boo")
39
- boo_model.pid_suffix.should == "boo"
40
- end
41
- it "should set namespace to cmodel unless overriden in options hash" do
42
- @test_cmodel.namespace.should == "afmodel"
43
- boo_model = ActiveFedora::ContentModel.new(:namespace => "boo")
44
- boo_model.namespace.should == "boo"
45
- end
46
- end
47
-
48
- it "should provide @pid_suffix" do
49
- @test_cmodel.should respond_to(:pid_suffix)
50
- @test_cmodel.should respond_to(:pid_suffix=)
51
- end
52
-
53
21
  describe '.best_model_for' do
54
22
  it 'should be the input model if no relationships' do
55
23
  mock_object = BaseModel.new
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active-fedora
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.0.2
5
- prerelease:
4
+ version: 7.0.3
6
5
  platform: ruby
7
6
  authors:
8
7
  - Matt Zumwalt
@@ -11,294 +10,258 @@ authors:
11
10
  autorequire:
12
11
  bindir: bin
13
12
  cert_chain: []
14
- date: 2014-04-17 00:00:00.000000000 Z
13
+ date: 2014-05-13 00:00:00.000000000 Z
15
14
  dependencies:
16
15
  - !ruby/object:Gem::Dependency
17
16
  name: rsolr
18
17
  requirement: !ruby/object:Gem::Requirement
19
- none: false
20
18
  requirements:
21
- - - ~>
19
+ - - "~>"
22
20
  - !ruby/object:Gem::Version
23
21
  version: 1.0.10.pre1
24
22
  type: :runtime
25
23
  prerelease: false
26
24
  version_requirements: !ruby/object:Gem::Requirement
27
- none: false
28
25
  requirements:
29
- - - ~>
26
+ - - "~>"
30
27
  - !ruby/object:Gem::Version
31
28
  version: 1.0.10.pre1
32
29
  - !ruby/object:Gem::Dependency
33
30
  name: om
34
31
  requirement: !ruby/object:Gem::Requirement
35
- none: false
36
32
  requirements:
37
- - - ~>
33
+ - - "~>"
38
34
  - !ruby/object:Gem::Version
39
35
  version: 3.0.0
40
36
  type: :runtime
41
37
  prerelease: false
42
38
  version_requirements: !ruby/object:Gem::Requirement
43
- none: false
44
39
  requirements:
45
- - - ~>
40
+ - - "~>"
46
41
  - !ruby/object:Gem::Version
47
42
  version: 3.0.0
48
43
  - !ruby/object:Gem::Dependency
49
44
  name: nom-xml
50
45
  requirement: !ruby/object:Gem::Requirement
51
- none: false
52
46
  requirements:
53
- - - ! '>='
47
+ - - ">="
54
48
  - !ruby/object:Gem::Version
55
49
  version: 0.5.1
56
50
  type: :runtime
57
51
  prerelease: false
58
52
  version_requirements: !ruby/object:Gem::Requirement
59
- none: false
60
53
  requirements:
61
- - - ! '>='
54
+ - - ">="
62
55
  - !ruby/object:Gem::Version
63
56
  version: 0.5.1
64
57
  - !ruby/object:Gem::Dependency
65
58
  name: activesupport
66
59
  requirement: !ruby/object:Gem::Requirement
67
- none: false
68
60
  requirements:
69
- - - ! '>='
61
+ - - ">="
70
62
  - !ruby/object:Gem::Version
71
63
  version: 3.0.0
72
64
  type: :runtime
73
65
  prerelease: false
74
66
  version_requirements: !ruby/object:Gem::Requirement
75
- none: false
76
67
  requirements:
77
- - - ! '>='
68
+ - - ">="
78
69
  - !ruby/object:Gem::Version
79
70
  version: 3.0.0
80
71
  - !ruby/object:Gem::Dependency
81
72
  name: mediashelf-loggable
82
73
  requirement: !ruby/object:Gem::Requirement
83
- none: false
84
74
  requirements:
85
- - - ! '>='
75
+ - - ">="
86
76
  - !ruby/object:Gem::Version
87
77
  version: '0'
88
78
  type: :runtime
89
79
  prerelease: false
90
80
  version_requirements: !ruby/object:Gem::Requirement
91
- none: false
92
81
  requirements:
93
- - - ! '>='
82
+ - - ">="
94
83
  - !ruby/object:Gem::Version
95
84
  version: '0'
96
85
  - !ruby/object:Gem::Dependency
97
86
  name: rubydora
98
87
  requirement: !ruby/object:Gem::Requirement
99
- none: false
100
88
  requirements:
101
- - - ~>
89
+ - - "~>"
102
90
  - !ruby/object:Gem::Version
103
91
  version: 1.7.4
104
92
  type: :runtime
105
93
  prerelease: false
106
94
  version_requirements: !ruby/object:Gem::Requirement
107
- none: false
108
95
  requirements:
109
- - - ~>
96
+ - - "~>"
110
97
  - !ruby/object:Gem::Version
111
98
  version: 1.7.4
112
99
  - !ruby/object:Gem::Dependency
113
100
  name: linkeddata
114
101
  requirement: !ruby/object:Gem::Requirement
115
- none: false
116
102
  requirements:
117
- - - ! '>='
103
+ - - ">="
118
104
  - !ruby/object:Gem::Version
119
105
  version: '0'
120
106
  type: :runtime
121
107
  prerelease: false
122
108
  version_requirements: !ruby/object:Gem::Requirement
123
- none: false
124
109
  requirements:
125
- - - ! '>='
110
+ - - ">="
126
111
  - !ruby/object:Gem::Version
127
112
  version: '0'
128
113
  - !ruby/object:Gem::Dependency
129
114
  name: rdf-rdfxml
130
115
  requirement: !ruby/object:Gem::Requirement
131
- none: false
132
116
  requirements:
133
- - - ~>
117
+ - - "~>"
134
118
  - !ruby/object:Gem::Version
135
119
  version: 1.1.0
136
120
  type: :runtime
137
121
  prerelease: false
138
122
  version_requirements: !ruby/object:Gem::Requirement
139
- none: false
140
123
  requirements:
141
- - - ~>
124
+ - - "~>"
142
125
  - !ruby/object:Gem::Version
143
126
  version: 1.1.0
144
127
  - !ruby/object:Gem::Dependency
145
128
  name: deprecation
146
129
  requirement: !ruby/object:Gem::Requirement
147
- none: false
148
130
  requirements:
149
- - - ! '>='
131
+ - - ">="
150
132
  - !ruby/object:Gem::Version
151
133
  version: '0'
152
134
  type: :runtime
153
135
  prerelease: false
154
136
  version_requirements: !ruby/object:Gem::Requirement
155
- none: false
156
137
  requirements:
157
- - - ! '>='
138
+ - - ">="
158
139
  - !ruby/object:Gem::Version
159
140
  version: '0'
160
141
  - !ruby/object:Gem::Dependency
161
142
  name: rdoc
162
143
  requirement: !ruby/object:Gem::Requirement
163
- none: false
164
144
  requirements:
165
- - - ! '>='
145
+ - - ">="
166
146
  - !ruby/object:Gem::Version
167
147
  version: '0'
168
148
  type: :development
169
149
  prerelease: false
170
150
  version_requirements: !ruby/object:Gem::Requirement
171
- none: false
172
151
  requirements:
173
- - - ! '>='
152
+ - - ">="
174
153
  - !ruby/object:Gem::Version
175
154
  version: '0'
176
155
  - !ruby/object:Gem::Dependency
177
156
  name: yard
178
157
  requirement: !ruby/object:Gem::Requirement
179
- none: false
180
158
  requirements:
181
- - - ! '>='
159
+ - - ">="
182
160
  - !ruby/object:Gem::Version
183
161
  version: '0'
184
162
  type: :development
185
163
  prerelease: false
186
164
  version_requirements: !ruby/object:Gem::Requirement
187
- none: false
188
165
  requirements:
189
- - - ! '>='
166
+ - - ">="
190
167
  - !ruby/object:Gem::Version
191
168
  version: '0'
192
169
  - !ruby/object:Gem::Dependency
193
170
  name: rake
194
171
  requirement: !ruby/object:Gem::Requirement
195
- none: false
196
172
  requirements:
197
- - - ! '>='
173
+ - - ">="
198
174
  - !ruby/object:Gem::Version
199
175
  version: '0'
200
176
  type: :development
201
177
  prerelease: false
202
178
  version_requirements: !ruby/object:Gem::Requirement
203
- none: false
204
179
  requirements:
205
- - - ! '>='
180
+ - - ">="
206
181
  - !ruby/object:Gem::Version
207
182
  version: '0'
208
183
  - !ruby/object:Gem::Dependency
209
184
  name: jettywrapper
210
185
  requirement: !ruby/object:Gem::Requirement
211
- none: false
212
186
  requirements:
213
- - - ! '>='
187
+ - - ">="
214
188
  - !ruby/object:Gem::Version
215
189
  version: 1.4.0
216
190
  type: :development
217
191
  prerelease: false
218
192
  version_requirements: !ruby/object:Gem::Requirement
219
- none: false
220
193
  requirements:
221
- - - ! '>='
194
+ - - ">="
222
195
  - !ruby/object:Gem::Version
223
196
  version: 1.4.0
224
197
  - !ruby/object:Gem::Dependency
225
198
  name: rspec
226
199
  requirement: !ruby/object:Gem::Requirement
227
- none: false
228
200
  requirements:
229
- - - ! '>='
201
+ - - ">="
230
202
  - !ruby/object:Gem::Version
231
203
  version: 2.9.0
232
204
  type: :development
233
205
  prerelease: false
234
206
  version_requirements: !ruby/object:Gem::Requirement
235
- none: false
236
207
  requirements:
237
- - - ! '>='
208
+ - - ">="
238
209
  - !ruby/object:Gem::Version
239
210
  version: 2.9.0
240
211
  - !ruby/object:Gem::Dependency
241
212
  name: equivalent-xml
242
213
  requirement: !ruby/object:Gem::Requirement
243
- none: false
244
214
  requirements:
245
- - - ! '>='
215
+ - - ">="
246
216
  - !ruby/object:Gem::Version
247
217
  version: '0'
248
218
  type: :development
249
219
  prerelease: false
250
220
  version_requirements: !ruby/object:Gem::Requirement
251
- none: false
252
221
  requirements:
253
- - - ! '>='
222
+ - - ">="
254
223
  - !ruby/object:Gem::Version
255
224
  version: '0'
256
225
  - !ruby/object:Gem::Dependency
257
226
  name: rest-client
258
227
  requirement: !ruby/object:Gem::Requirement
259
- none: false
260
228
  requirements:
261
- - - ! '>='
229
+ - - ">="
262
230
  - !ruby/object:Gem::Version
263
231
  version: '0'
264
232
  type: :development
265
233
  prerelease: false
266
234
  version_requirements: !ruby/object:Gem::Requirement
267
- none: false
268
235
  requirements:
269
- - - ! '>='
236
+ - - ">="
270
237
  - !ruby/object:Gem::Version
271
238
  version: '0'
272
239
  - !ruby/object:Gem::Dependency
273
240
  name: webmock
274
241
  requirement: !ruby/object:Gem::Requirement
275
- none: false
276
242
  requirements:
277
- - - ! '>='
243
+ - - ">="
278
244
  - !ruby/object:Gem::Version
279
245
  version: '0'
280
246
  type: :development
281
247
  prerelease: false
282
248
  version_requirements: !ruby/object:Gem::Requirement
283
- none: false
284
249
  requirements:
285
- - - ! '>='
250
+ - - ">="
286
251
  - !ruby/object:Gem::Version
287
252
  version: '0'
288
253
  - !ruby/object:Gem::Dependency
289
254
  name: simplecov
290
255
  requirement: !ruby/object:Gem::Requirement
291
- none: false
292
256
  requirements:
293
- - - ~>
257
+ - - "~>"
294
258
  - !ruby/object:Gem::Version
295
259
  version: 0.7.1
296
260
  type: :development
297
261
  prerelease: false
298
262
  version_requirements: !ruby/object:Gem::Requirement
299
- none: false
300
263
  requirements:
301
- - - ~>
264
+ - - "~>"
302
265
  - !ruby/object:Gem::Version
303
266
  version: 0.7.1
304
267
  description: ActiveFedora provides for creating and managing objects in the Fedora
@@ -311,10 +274,10 @@ extra_rdoc_files:
311
274
  - LICENSE
312
275
  - README.md
313
276
  files:
314
- - .gitignore
315
- - .gitmodules
316
- - .mailmap
317
- - .travis.yml
277
+ - ".gitignore"
278
+ - ".gitmodules"
279
+ - ".mailmap"
280
+ - ".travis.yml"
318
281
  - CONTRIBUTING.md
319
282
  - CONTRIBUTORS.md
320
283
  - Gemfile
@@ -582,27 +545,26 @@ files:
582
545
  homepage: https://github.com/projecthydra/active_fedora
583
546
  licenses:
584
547
  - APACHE2
548
+ metadata: {}
585
549
  post_install_message:
586
550
  rdoc_options: []
587
551
  require_paths:
588
552
  - lib
589
553
  required_ruby_version: !ruby/object:Gem::Requirement
590
- none: false
591
554
  requirements:
592
- - - ! '>='
555
+ - - ">="
593
556
  - !ruby/object:Gem::Version
594
557
  version: 1.9.3
595
558
  required_rubygems_version: !ruby/object:Gem::Requirement
596
- none: false
597
559
  requirements:
598
- - - ! '>='
560
+ - - ">="
599
561
  - !ruby/object:Gem::Version
600
562
  version: '0'
601
563
  requirements: []
602
564
  rubyforge_project:
603
- rubygems_version: 1.8.24
565
+ rubygems_version: 2.2.2
604
566
  signing_key:
605
- specification_version: 3
567
+ specification_version: 4
606
568
  summary: A convenience libary for manipulating documents in the Fedora Repository.
607
569
  test_files:
608
570
  - spec/config_helper.rb