active-fedora 4.0.0.rc20 → 4.0.0

Sign up to get free protection for your applications and to get access to all the features.
data/.rvmrc CHANGED
@@ -3,8 +3,8 @@
3
3
  # This is an RVM Project .rvmrc file, used to automatically load the ruby
4
4
  # development environment upon cd'ing into the directory
5
5
 
6
- ruby_string="ree-1.8.7"
7
- gemset_name="active_fedora_3.1"
6
+ ruby_string="1.9.3-p125"
7
+ gemset_name="active_fedora_4.0"
8
8
 
9
9
  # Install rubies when used instead of only displaying a warning and exiting
10
10
  rvm_install_on_use_flag=1
data/Gemfile CHANGED
@@ -5,4 +5,4 @@ source "http://rubygems.org"
5
5
  gemspec
6
6
 
7
7
  # gem 'ruby-debug', :platform => :ruby_18
8
- # gem 'ruby-debug19', :platform => :ruby_19
8
+ # gem 'debugger' # for ruby 1.9.3
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- active-fedora (4.0.0.rc20)
4
+ active-fedora (4.0.0)
5
5
  activeresource (>= 3.0.0)
6
6
  activesupport (>= 3.0.0)
7
7
  equivalent-xml
@@ -9,11 +9,11 @@ PATH
9
9
  mime-types (>= 1.16)
10
10
  multipart-post (= 1.1.2)
11
11
  nokogiri
12
- om (~> 1.6.0.rc3)
12
+ om (~> 1.6.0)
13
13
  rdf
14
14
  rdf-rdfxml (= 0.3.5)
15
15
  rsolr
16
- rubydora (~> 0.5.7)
16
+ rubydora (~> 0.5.8)
17
17
  solrizer (~> 1.2.0)
18
18
  xml-simple (>= 1.0.12)
19
19
 
@@ -63,12 +63,12 @@ GEM
63
63
  multipart-post (1.1.2)
64
64
  nokogiri (1.5.2)
65
65
  nori (1.1.0)
66
- om (1.6.0.rc3)
66
+ om (1.6.0)
67
67
  mediashelf-loggable
68
68
  nokogiri (>= 1.4.2)
69
69
  rack (1.4.1)
70
70
  rake (0.9.2.2)
71
- rdf (0.3.5.1)
71
+ rdf (0.3.5.2)
72
72
  addressable (>= 2.2.6)
73
73
  rdf-rdfxml (0.3.5)
74
74
  nokogiri (>= 1.4.4)
@@ -85,7 +85,7 @@ GEM
85
85
  rspec-expectations (2.9.0)
86
86
  diff-lcs (~> 1.1.3)
87
87
  rspec-mocks (2.9.0)
88
- rubydora (0.5.7)
88
+ rubydora (0.5.8)
89
89
  activemodel
90
90
  activesupport
91
91
  fastercsv
@@ -8,8 +8,8 @@ Gem::Specification.new do |s|
8
8
  s.platform = Gem::Platform::RUBY
9
9
  s.authors = ["Matt Zumwalt", "McClain Looney", "Justin Coyne"]
10
10
  s.email = ["matt.zumwalt@yourmediashelf.com"]
11
- s.homepage = %q{http://yourmediashelf.com/activefedora}
12
- s.summary = %q{A convenience libary for manipulating MODS (Metadata Object Description Schema) documents.}
11
+ s.homepage = %q{https://github.com/projecthydra/active_fedora}
12
+ s.summary = %q{A convenience libary for manipulating documents in the Fedora Repository.}
13
13
  s.description = %q{ActiveFedora provides for creating and managing objects in the Fedora Repository Architecture.}
14
14
 
15
15
  s.rubyforge_project = "rubyfedora"
@@ -20,19 +20,18 @@ Gem::Specification.new do |s|
20
20
  s.add_dependency('mime-types', '>= 1.16')
21
21
  s.add_dependency('multipart-post', "= 1.1.2")
22
22
  s.add_dependency('nokogiri')
23
- s.add_dependency('om', '~> 1.6.0.rc3')
23
+ s.add_dependency('om', '~> 1.6.0')
24
24
  s.add_dependency('solrizer', '~>1.2.0')
25
25
  s.add_dependency("activeresource", '>= 3.0.0')
26
26
  s.add_dependency("activesupport", '>= 3.0.0')
27
27
  s.add_dependency("mediashelf-loggable")
28
28
  s.add_dependency("equivalent-xml")
29
- s.add_dependency("rubydora", '~>0.5.7')
29
+ s.add_dependency("rubydora", '~>0.5.8')
30
30
  s.add_dependency("rdf")
31
31
  s.add_dependency("rdf-rdfxml", '0.3.5') # 0.3.6 is broken
32
32
  s.add_development_dependency("yard")
33
33
  s.add_development_dependency("RedCloth") # for RDoc formatting
34
34
  s.add_development_dependency("rake")
35
- # s.add_development_dependency("rcov") # not ruby 1.9 compatible
36
35
  s.add_development_dependency("jettywrapper", ">=1.2.0")
37
36
  s.add_development_dependency("rspec", ">= 2.9.0")
38
37
  s.add_development_dependency("mocha", ">= 0.9.8")
@@ -28,6 +28,7 @@
28
28
  :has_model: hasModel
29
29
  :has_part: hasPart
30
30
  :has_subset: hasSubset
31
+ :has_topic: hasTopic
31
32
  :is_annotation_of: isAnnotationOf
32
33
  :is_constituent_of: isConstituentOf
33
34
  :is_dependent_of: isDependentOf
@@ -5,11 +5,6 @@ require 'active_fedora/rubydora_connection'
5
5
  require 'active_support/core_ext/class/attribute'
6
6
  require 'active_support/core_ext/object'
7
7
  require 'active_support/core_ext/hash/indifferent_access'
8
- # require "solrizer"
9
- # require 'nokogiri'
10
- # require "loggable"
11
-
12
-
13
8
 
14
9
  SOLR_DOCUMENT_ID = ActiveFedora::SolrService.id_field unless defined?(SOLR_DOCUMENT_ID)
15
10
  ENABLE_SOLR_UPDATES = true unless defined?(ENABLE_SOLR_UPDATES)
@@ -154,5 +149,5 @@ end
154
149
 
155
150
 
156
151
  load File.join(File.dirname(__FILE__),"tasks/active_fedora.rake") if defined?(Rake)
157
-
152
+ I18n.load_path << File.dirname(__FILE__) + '/active_fedora/locale/en.yml'
158
153
 
@@ -138,10 +138,13 @@ module ActiveFedora
138
138
  # Project class, but if the real class name is SuperProject, you'll have to specify it with this option.
139
139
  # [:property]
140
140
  # <b>REQUIRED</b> Specify the predicate to use when storing the relationship.
141
+ # [:inverse_of]
142
+ # Specify the predicate to use when storing the relationship on the foreign object. If it is not provided, the relationship will not set the foriegn association.
141
143
  #
142
144
  # Option examples:
143
145
  # has_and_belongs_to_many :projects, :property=>:works_on
144
146
  # has_and_belongs_to_many :nations, :class_name => "Country", :property=>:is_citizen_of
147
+ # has_and_belongs_to_many :topics, :property=>:has_topic, :inverse_of=>:is_topic_of
145
148
  def has_and_belongs_to_many(association_id, options = {}, &extension)
146
149
  reflection = create_has_and_belongs_to_many_reflection(association_id, options, &extension)
147
150
  collection_accessor_methods(reflection, HasAndBelongsToManyAssociation)
@@ -54,7 +54,6 @@ module ActiveFedora
54
54
  @loaded = false
55
55
  end
56
56
 
57
-
58
57
  def build(attributes = {}, &block)
59
58
  if attributes.is_a?(Array)
60
59
  attributes.collect { |attr| build(attr, &block) }
@@ -35,9 +35,10 @@ module ActiveFedora
35
35
  # ActiveFedora::Associations::HasManyAssociation.
36
36
 
37
37
  class AssociationProxy
38
- delegate :to_param, :to=>:target
38
+ delegate :to_param, :to=>:target
39
+ instance_methods.each { |m| undef_method m unless m.to_s =~ /^(?:nil\?|send|object_id|to_a)$|^__|^respond_to|proxy_/ }
39
40
 
40
- def initialize(owner, reflection)
41
+ def initialize(owner, reflection)
41
42
  @owner, @reflection = owner, reflection
42
43
  @updated = false
43
44
  # reflection.check_validity!
@@ -1,6 +1,7 @@
1
1
  module ActiveFedora
2
2
  module Associations
3
3
  class BelongsToAssociation < AssociationProxy #:nodoc:
4
+
4
5
  def replace(record)
5
6
  if record.nil?
6
7
  ### TODO a more efficient way of doing this would be to write a clear_relationship method
@@ -14,33 +14,7 @@ module ActiveFedora
14
14
  return ActiveFedora::SolrService.reify_solr_results(solr_result)
15
15
  end
16
16
 
17
-
18
- # def create(attributes = {})
19
- # create_record(attributes) { |record| insert_record(record) }
20
- # end
21
-
22
- # def create!(attributes = {})
23
- # create_record(attributes) { |record| insert_record(record, true) }
24
- # end
25
-
26
- def columns
27
- @reflection.columns(@reflection.options[:join_table], "#{@reflection.options[:join_table]} Columns")
28
- end
29
-
30
- # def reset_column_information
31
- # @reflection.reset_column_information
32
- # end
33
-
34
- # def has_primary_key?
35
- # @has_primary_key ||= @owner.connection.supports_primary_key? && @owner.connection.primary_key(@reflection.options[:join_table])
36
- # end
37
-
38
17
  protected
39
- # def construct_find_options!(options)
40
- # options[:joins] = Arel::SqlLiteral.new @join_sql
41
- # options[:readonly] = finding_with_ambiguous_select?(options[:select] || @reflection.options[:select])
42
- # options[:select] ||= (@reflection.options[:select] || Arel::SqlLiteral.new('*'))
43
- # end
44
18
 
45
19
  def count_records
46
20
  load_target.size
@@ -57,7 +31,9 @@ module ActiveFedora
57
31
 
58
32
  ### TODO save relationship
59
33
  @owner.add_relationship(@reflection.options[:property], record)
60
- record.add_relationship(@reflection.options[:property], @owner)
34
+ if (@reflection.options[:inverse_of])
35
+ record.add_relationship(@reflection.options[:inverse_of], @owner)
36
+ end
61
37
  record.save
62
38
  return true
63
39
  end
@@ -73,42 +49,6 @@ module ActiveFedora
73
49
  escaped_uri = internal_uri.gsub(/(:)/, '\\:')
74
50
  @counter_query = @finder_query = "#{@reflection.options[:property]}_s:#{escaped_uri}"
75
51
  end
76
-
77
- def construct_scope
78
- { :find => { :conditions => @finder_sql,
79
- :joins => @join_sql,
80
- :readonly => false,
81
- :order => @reflection.options[:order],
82
- :include => @reflection.options[:include],
83
- :limit => @reflection.options[:limit] } }
84
- end
85
-
86
- # Join tables with additional columns on top of the two foreign keys must be considered
87
- # ambiguous unless a select clause has been explicitly defined. Otherwise you can get
88
- # broken records back, if, for example, the join column also has an id column. This will
89
- # then overwrite the id column of the records coming back.
90
- def finding_with_ambiguous_select?(select_clause)
91
- !select_clause && columns.size != 2
92
- end
93
-
94
- private
95
- # def create_record(attributes, &block)
96
- # # Can't use Base.create because the foreign key may be a protected attribute.
97
- # ensure_owner_is_not_new
98
- # if attributes.is_a?(Array)
99
- # attributes.collect { |attr| create(attr) }
100
- # else
101
- # build_record(attributes, &block)
102
- # end
103
- # end
104
-
105
- def record_timestamp_columns(record)
106
- if record.record_timestamps
107
- record.send(:all_timestamp_attributes).map { |x| x.to_s }
108
- else
109
- []
110
- end
111
- end
112
52
  end
113
53
  end
114
54
  end
@@ -0,0 +1,5 @@
1
+ en:
2
+ activefedora:
3
+ errors:
4
+ messages:
5
+ record_invalid: "Validation failed: %{errors}"
@@ -29,7 +29,7 @@ module ActiveFedora
29
29
  end
30
30
  def prefix(name)
31
31
  name = name.to_s unless name.is_a? String
32
- pre = self.to_s.sub(/RDFDatastream$/, '').underscore
32
+ pre = self.to_s.sub(/RDFDatastream$/i, '').underscore
33
33
  return "#{pre}__#{name}".to_sym
34
34
  end
35
35
 
@@ -1,3 +1,3 @@
1
1
  module ActiveFedora
2
- VERSION = "4.0.0.rc20"
2
+ VERSION = "4.0.0"
3
3
  end
@@ -7,12 +7,16 @@ end
7
7
  class Book < ActiveFedora::Base
8
8
  belongs_to :library, :property=>:has_constituent
9
9
  belongs_to :author, :property=>:has_member, :class_name=>'Person'
10
- has_and_belongs_to_many :topics, :property=>:is_topic_of
10
+ has_and_belongs_to_many :topics, :property=>:has_topic, :inverse_of=>:is_topic_of
11
+ has_and_belongs_to_many :collections, :property=>:is_member_of_collection
11
12
  end
12
13
 
13
14
  class Person < ActiveFedora::Base
14
15
  end
15
16
 
17
+ class Collection < ActiveFedora::Base
18
+ end
19
+
16
20
  class Topic < ActiveFedora::Base
17
21
  has_and_belongs_to_many :books, :property=>:is_topic_of
18
22
  end
@@ -28,6 +32,12 @@ describe ActiveFedora::Base do
28
32
  @book2.save
29
33
  end
30
34
 
35
+ it "should build" do
36
+ new_book = @library.books.build({})
37
+ new_book.should be_new_record
38
+ new_book.should be_kind_of Book
39
+ end
40
+
31
41
  it "should let you shift onto the association" do
32
42
  @library.new_record?.should be_true
33
43
  @library.books.size == 0
@@ -103,6 +113,7 @@ describe ActiveFedora::Base do
103
113
  end
104
114
  it "should be settable from the book side" do
105
115
  @book.library_id = @library.pid
116
+ @book.library.should == @library
106
117
  @book.library.pid.should == @library.pid
107
118
  @book.attributes= {:library_id => ""}
108
119
  @book.library_id.should be_nil
@@ -183,31 +194,54 @@ describe ActiveFedora::Base do
183
194
  end
184
195
  describe "of has_many_and_belongs_to" do
185
196
  before do
186
- @topic1 = Topic.new
187
- @topic1.save
188
- @topic2 = Topic.new
189
- @topic2.save
190
- @book = Book.new
191
- @book.save
192
- end
193
- it "habtm should set relationships bidirectionally" do
194
- @book.topics << @topic1
195
- @book.topics.to_a.should == [@topic1]
196
- Topic.find(@topic1.pid).books.to_a.should == [@book] #Can't have saved it because @book isn't saved yet.
197
- end
198
- it "should save new child objects" do
199
- @book.topics << Topic.new
200
- @book.topics.first.pid.should_not be_nil
201
- end
202
- it "should clear out the old associtions" do
203
- @book.topics = [@topic1]
204
- @book.topics = [@topic2]
205
- @book.topic_ids.should == [@topic2.pid]
197
+ @book = Book.create
206
198
  end
207
199
  after do
208
200
  @book.delete
209
- @topic1.delete
210
- @topic2.delete
201
+ end
202
+ describe "when invese is specified" do
203
+ before do
204
+ @topic1 = Topic.create
205
+ @topic2 = Topic.create
206
+ end
207
+ it "should set relationships bidirectionally" do
208
+ @book.topics << @topic1
209
+ @book.topics.to_a.should == [@topic1]
210
+ @book.relationships(:has_topic).should == [@topic1.internal_uri]
211
+ @topic1.relationships(:has_topic).should == []
212
+ @topic1.relationships(:is_topic_of).should == [@book.internal_uri]
213
+ Topic.find(@topic1.pid).books.to_a.should == [@book] #Can't have saved it because @book isn't saved yet.
214
+ end
215
+ it "should save new child objects" do
216
+ @book.topics << Topic.new
217
+ @book.topics.first.pid.should_not be_nil
218
+ end
219
+ it "should clear out the old associtions" do
220
+ @book.topics = [@topic1]
221
+ @book.topics = [@topic2]
222
+ @book.topic_ids.should == [@topic2.pid]
223
+ end
224
+ after do
225
+ @topic1.delete
226
+ @topic2.delete
227
+ end
228
+ end
229
+ describe "when invese is not specified" do
230
+ before do
231
+ @c = Collection.create
232
+ @book.collections << @c
233
+ @book.save
234
+ end
235
+ after do
236
+ @c.delete
237
+ end
238
+ it "should have a collection" do
239
+ @book.relationships(:is_member_of_collection).should == [@c.internal_uri]
240
+ @book.collections.should == [@c]
241
+ end
242
+ it "habtm should not set foreign relationships if :inverse_of is not specified" do
243
+ @c.relationships(:is_member_of_collection).should == []
244
+ end
211
245
  end
212
246
  end
213
247
  end
@@ -16,12 +16,5 @@ describe ActiveFedora::Associations::HasManyAssociation do
16
16
 
17
17
  end
18
18
 
19
- it "should build" do
20
- @owner = stub(:new_record? => false, :internal_uri => 'info:fedora/changeme:99')
21
- @reflection = stub(:klass => Mocha::Mock, :options=>{:property=>'predicate'})
22
- @assoc = ActiveFedora::Associations::HasManyAssociation.new(@owner, @reflection)
23
- @assoc.should respond_to :build
24
-
25
- end
26
19
 
27
20
  end
@@ -126,6 +126,13 @@ describe ActiveFedora::QualifiedDublinCoreDatastream do
126
126
  end
127
127
 
128
128
  end
129
-
129
+ describe 'custom fields' do
130
+ it 'should grab the term' do
131
+ sample_xml = "<dc xmlns:dcterms='http://purl.org/dc/terms/' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'><dcterms:cust>custom</dcterms:cust></dc>"
132
+ test_ds = ActiveFedora::QualifiedDublinCoreDatastream.from_xml(sample_xml )
133
+ test_ds.field :cust
134
+ test_ds.cust.should == ['custom']
135
+ end
136
+ end
130
137
 
131
138
  end
metadata CHANGED
@@ -1,342 +1,348 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: active-fedora
3
- version: !ruby/object:Gem::Version
4
- hash: 15424189
5
- prerelease: 6
6
- segments:
7
- - 4
8
- - 0
9
- - 0
10
- - rc
11
- - 20
12
- version: 4.0.0.rc20
3
+ version: !ruby/object:Gem::Version
4
+ version: 4.0.0
5
+ prerelease:
13
6
  platform: ruby
14
- authors:
7
+ authors:
15
8
  - Matt Zumwalt
16
9
  - McClain Looney
17
10
  - Justin Coyne
18
11
  autorequire:
19
12
  bindir: bin
20
13
  cert_chain: []
21
-
22
- date: 2012-04-02 00:00:00 Z
23
- dependencies:
24
- - !ruby/object:Gem::Dependency
25
- prerelease: false
26
- requirement: &id001 !ruby/object:Gem::Requirement
27
- none: false
28
- requirements:
29
- - - ">="
30
- - !ruby/object:Gem::Version
31
- hash: 3
32
- segments:
33
- - 0
34
- version: "0"
35
- version_requirements: *id001
14
+ date: 2012-04-23 00:00:00.000000000 Z
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
36
17
  name: rsolr
18
+ requirement: !ruby/object:Gem::Requirement
19
+ none: false
20
+ requirements:
21
+ - - ! '>='
22
+ - !ruby/object:Gem::Version
23
+ version: '0'
37
24
  type: :runtime
38
- - !ruby/object:Gem::Dependency
39
25
  prerelease: false
40
- requirement: &id002 !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - ">="
44
- - !ruby/object:Gem::Version
45
- hash: 15
46
- segments:
47
- - 1
48
- - 0
49
- - 12
50
- version: 1.0.12
51
- version_requirements: *id002
26
+ version_requirements: !ruby/object:Gem::Requirement
27
+ none: false
28
+ requirements:
29
+ - - ! '>='
30
+ - !ruby/object:Gem::Version
31
+ version: '0'
32
+ - !ruby/object:Gem::Dependency
52
33
  name: xml-simple
34
+ requirement: !ruby/object:Gem::Requirement
35
+ none: false
36
+ requirements:
37
+ - - ! '>='
38
+ - !ruby/object:Gem::Version
39
+ version: 1.0.12
53
40
  type: :runtime
54
- - !ruby/object:Gem::Dependency
55
41
  prerelease: false
56
- requirement: &id003 !ruby/object:Gem::Requirement
57
- none: false
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- hash: 47
62
- segments:
63
- - 1
64
- - 16
65
- version: "1.16"
66
- version_requirements: *id003
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ none: false
44
+ requirements:
45
+ - - ! '>='
46
+ - !ruby/object:Gem::Version
47
+ version: 1.0.12
48
+ - !ruby/object:Gem::Dependency
67
49
  name: mime-types
50
+ requirement: !ruby/object:Gem::Requirement
51
+ none: false
52
+ requirements:
53
+ - - ! '>='
54
+ - !ruby/object:Gem::Version
55
+ version: '1.16'
68
56
  type: :runtime
69
- - !ruby/object:Gem::Dependency
70
57
  prerelease: false
71
- requirement: &id004 !ruby/object:Gem::Requirement
72
- none: false
73
- requirements:
74
- - - "="
75
- - !ruby/object:Gem::Version
76
- hash: 23
77
- segments:
78
- - 1
79
- - 1
80
- - 2
81
- version: 1.1.2
82
- version_requirements: *id004
58
+ version_requirements: !ruby/object:Gem::Requirement
59
+ none: false
60
+ requirements:
61
+ - - ! '>='
62
+ - !ruby/object:Gem::Version
63
+ version: '1.16'
64
+ - !ruby/object:Gem::Dependency
83
65
  name: multipart-post
66
+ requirement: !ruby/object:Gem::Requirement
67
+ none: false
68
+ requirements:
69
+ - - '='
70
+ - !ruby/object:Gem::Version
71
+ version: 1.1.2
84
72
  type: :runtime
85
- - !ruby/object:Gem::Dependency
86
73
  prerelease: false
87
- requirement: &id005 !ruby/object:Gem::Requirement
88
- none: false
89
- requirements:
90
- - - ">="
91
- - !ruby/object:Gem::Version
92
- hash: 3
93
- segments:
94
- - 0
95
- version: "0"
96
- version_requirements: *id005
74
+ version_requirements: !ruby/object:Gem::Requirement
75
+ none: false
76
+ requirements:
77
+ - - '='
78
+ - !ruby/object:Gem::Version
79
+ version: 1.1.2
80
+ - !ruby/object:Gem::Dependency
97
81
  name: nokogiri
82
+ requirement: !ruby/object:Gem::Requirement
83
+ none: false
84
+ requirements:
85
+ - - ! '>='
86
+ - !ruby/object:Gem::Version
87
+ version: '0'
98
88
  type: :runtime
99
- - !ruby/object:Gem::Dependency
100
89
  prerelease: false
101
- requirement: &id006 !ruby/object:Gem::Requirement
90
+ version_requirements: !ruby/object:Gem::Requirement
102
91
  none: false
103
- requirements:
104
- - - ~>
105
- - !ruby/object:Gem::Version
106
- hash: 15424083
107
- segments:
108
- - 1
109
- - 6
110
- - 0
111
- - rc
112
- - 3
113
- version: 1.6.0.rc3
114
- version_requirements: *id006
92
+ requirements:
93
+ - - ! '>='
94
+ - !ruby/object:Gem::Version
95
+ version: '0'
96
+ - !ruby/object:Gem::Dependency
115
97
  name: om
98
+ requirement: !ruby/object:Gem::Requirement
99
+ none: false
100
+ requirements:
101
+ - - ~>
102
+ - !ruby/object:Gem::Version
103
+ version: 1.6.0
116
104
  type: :runtime
117
- - !ruby/object:Gem::Dependency
118
105
  prerelease: false
119
- requirement: &id007 !ruby/object:Gem::Requirement
106
+ version_requirements: !ruby/object:Gem::Requirement
120
107
  none: false
121
- requirements:
108
+ requirements:
122
109
  - - ~>
123
- - !ruby/object:Gem::Version
124
- hash: 31
125
- segments:
126
- - 1
127
- - 2
128
- - 0
129
- version: 1.2.0
130
- version_requirements: *id007
110
+ - !ruby/object:Gem::Version
111
+ version: 1.6.0
112
+ - !ruby/object:Gem::Dependency
131
113
  name: solrizer
114
+ requirement: !ruby/object:Gem::Requirement
115
+ none: false
116
+ requirements:
117
+ - - ~>
118
+ - !ruby/object:Gem::Version
119
+ version: 1.2.0
132
120
  type: :runtime
133
- - !ruby/object:Gem::Dependency
134
121
  prerelease: false
135
- requirement: &id008 !ruby/object:Gem::Requirement
136
- none: false
137
- requirements:
138
- - - ">="
139
- - !ruby/object:Gem::Version
140
- hash: 7
141
- segments:
142
- - 3
143
- - 0
144
- - 0
145
- version: 3.0.0
146
- version_requirements: *id008
122
+ version_requirements: !ruby/object:Gem::Requirement
123
+ none: false
124
+ requirements:
125
+ - - ~>
126
+ - !ruby/object:Gem::Version
127
+ version: 1.2.0
128
+ - !ruby/object:Gem::Dependency
147
129
  name: activeresource
130
+ requirement: !ruby/object:Gem::Requirement
131
+ none: false
132
+ requirements:
133
+ - - ! '>='
134
+ - !ruby/object:Gem::Version
135
+ version: 3.0.0
148
136
  type: :runtime
149
- - !ruby/object:Gem::Dependency
150
137
  prerelease: false
151
- requirement: &id009 !ruby/object:Gem::Requirement
152
- none: false
153
- requirements:
154
- - - ">="
155
- - !ruby/object:Gem::Version
156
- hash: 7
157
- segments:
158
- - 3
159
- - 0
160
- - 0
138
+ version_requirements: !ruby/object:Gem::Requirement
139
+ none: false
140
+ requirements:
141
+ - - ! '>='
142
+ - !ruby/object:Gem::Version
161
143
  version: 3.0.0
162
- version_requirements: *id009
144
+ - !ruby/object:Gem::Dependency
163
145
  name: activesupport
146
+ requirement: !ruby/object:Gem::Requirement
147
+ none: false
148
+ requirements:
149
+ - - ! '>='
150
+ - !ruby/object:Gem::Version
151
+ version: 3.0.0
164
152
  type: :runtime
165
- - !ruby/object:Gem::Dependency
166
153
  prerelease: false
167
- requirement: &id010 !ruby/object:Gem::Requirement
168
- none: false
169
- requirements:
170
- - - ">="
171
- - !ruby/object:Gem::Version
172
- hash: 3
173
- segments:
174
- - 0
175
- version: "0"
176
- version_requirements: *id010
154
+ version_requirements: !ruby/object:Gem::Requirement
155
+ none: false
156
+ requirements:
157
+ - - ! '>='
158
+ - !ruby/object:Gem::Version
159
+ version: 3.0.0
160
+ - !ruby/object:Gem::Dependency
177
161
  name: mediashelf-loggable
162
+ requirement: !ruby/object:Gem::Requirement
163
+ none: false
164
+ requirements:
165
+ - - ! '>='
166
+ - !ruby/object:Gem::Version
167
+ version: '0'
178
168
  type: :runtime
179
- - !ruby/object:Gem::Dependency
180
169
  prerelease: false
181
- requirement: &id011 !ruby/object:Gem::Requirement
182
- none: false
183
- requirements:
184
- - - ">="
185
- - !ruby/object:Gem::Version
186
- hash: 3
187
- segments:
188
- - 0
189
- version: "0"
190
- version_requirements: *id011
170
+ version_requirements: !ruby/object:Gem::Requirement
171
+ none: false
172
+ requirements:
173
+ - - ! '>='
174
+ - !ruby/object:Gem::Version
175
+ version: '0'
176
+ - !ruby/object:Gem::Dependency
191
177
  name: equivalent-xml
178
+ requirement: !ruby/object:Gem::Requirement
179
+ none: false
180
+ requirements:
181
+ - - ! '>='
182
+ - !ruby/object:Gem::Version
183
+ version: '0'
192
184
  type: :runtime
193
- - !ruby/object:Gem::Dependency
194
185
  prerelease: false
195
- requirement: &id012 !ruby/object:Gem::Requirement
186
+ version_requirements: !ruby/object:Gem::Requirement
196
187
  none: false
197
- requirements:
198
- - - ~>
199
- - !ruby/object:Gem::Version
200
- hash: 5
201
- segments:
202
- - 0
203
- - 5
204
- - 7
205
- version: 0.5.7
206
- version_requirements: *id012
188
+ requirements:
189
+ - - ! '>='
190
+ - !ruby/object:Gem::Version
191
+ version: '0'
192
+ - !ruby/object:Gem::Dependency
207
193
  name: rubydora
194
+ requirement: !ruby/object:Gem::Requirement
195
+ none: false
196
+ requirements:
197
+ - - ~>
198
+ - !ruby/object:Gem::Version
199
+ version: 0.5.8
208
200
  type: :runtime
209
- - !ruby/object:Gem::Dependency
210
201
  prerelease: false
211
- requirement: &id013 !ruby/object:Gem::Requirement
212
- none: false
213
- requirements:
214
- - - ">="
215
- - !ruby/object:Gem::Version
216
- hash: 3
217
- segments:
218
- - 0
219
- version: "0"
220
- version_requirements: *id013
202
+ version_requirements: !ruby/object:Gem::Requirement
203
+ none: false
204
+ requirements:
205
+ - - ~>
206
+ - !ruby/object:Gem::Version
207
+ version: 0.5.8
208
+ - !ruby/object:Gem::Dependency
221
209
  name: rdf
210
+ requirement: !ruby/object:Gem::Requirement
211
+ none: false
212
+ requirements:
213
+ - - ! '>='
214
+ - !ruby/object:Gem::Version
215
+ version: '0'
222
216
  type: :runtime
223
- - !ruby/object:Gem::Dependency
224
217
  prerelease: false
225
- requirement: &id014 !ruby/object:Gem::Requirement
226
- none: false
227
- requirements:
228
- - - "="
229
- - !ruby/object:Gem::Version
230
- hash: 25
231
- segments:
232
- - 0
233
- - 3
234
- - 5
235
- version: 0.3.5
236
- version_requirements: *id014
218
+ version_requirements: !ruby/object:Gem::Requirement
219
+ none: false
220
+ requirements:
221
+ - - ! '>='
222
+ - !ruby/object:Gem::Version
223
+ version: '0'
224
+ - !ruby/object:Gem::Dependency
237
225
  name: rdf-rdfxml
226
+ requirement: !ruby/object:Gem::Requirement
227
+ none: false
228
+ requirements:
229
+ - - '='
230
+ - !ruby/object:Gem::Version
231
+ version: 0.3.5
238
232
  type: :runtime
239
- - !ruby/object:Gem::Dependency
240
233
  prerelease: false
241
- requirement: &id015 !ruby/object:Gem::Requirement
242
- none: false
243
- requirements:
244
- - - ">="
245
- - !ruby/object:Gem::Version
246
- hash: 3
247
- segments:
248
- - 0
249
- version: "0"
250
- version_requirements: *id015
234
+ version_requirements: !ruby/object:Gem::Requirement
235
+ none: false
236
+ requirements:
237
+ - - '='
238
+ - !ruby/object:Gem::Version
239
+ version: 0.3.5
240
+ - !ruby/object:Gem::Dependency
251
241
  name: yard
242
+ requirement: !ruby/object:Gem::Requirement
243
+ none: false
244
+ requirements:
245
+ - - ! '>='
246
+ - !ruby/object:Gem::Version
247
+ version: '0'
252
248
  type: :development
253
- - !ruby/object:Gem::Dependency
254
249
  prerelease: false
255
- requirement: &id016 !ruby/object:Gem::Requirement
256
- none: false
257
- requirements:
258
- - - ">="
259
- - !ruby/object:Gem::Version
260
- hash: 3
261
- segments:
262
- - 0
263
- version: "0"
264
- version_requirements: *id016
250
+ version_requirements: !ruby/object:Gem::Requirement
251
+ none: false
252
+ requirements:
253
+ - - ! '>='
254
+ - !ruby/object:Gem::Version
255
+ version: '0'
256
+ - !ruby/object:Gem::Dependency
265
257
  name: RedCloth
258
+ requirement: !ruby/object:Gem::Requirement
259
+ none: false
260
+ requirements:
261
+ - - ! '>='
262
+ - !ruby/object:Gem::Version
263
+ version: '0'
266
264
  type: :development
267
- - !ruby/object:Gem::Dependency
268
265
  prerelease: false
269
- requirement: &id017 !ruby/object:Gem::Requirement
270
- none: false
271
- requirements:
272
- - - ">="
273
- - !ruby/object:Gem::Version
274
- hash: 3
275
- segments:
276
- - 0
277
- version: "0"
278
- version_requirements: *id017
266
+ version_requirements: !ruby/object:Gem::Requirement
267
+ none: false
268
+ requirements:
269
+ - - ! '>='
270
+ - !ruby/object:Gem::Version
271
+ version: '0'
272
+ - !ruby/object:Gem::Dependency
279
273
  name: rake
274
+ requirement: !ruby/object:Gem::Requirement
275
+ none: false
276
+ requirements:
277
+ - - ! '>='
278
+ - !ruby/object:Gem::Version
279
+ version: '0'
280
280
  type: :development
281
- - !ruby/object:Gem::Dependency
282
281
  prerelease: false
283
- requirement: &id018 !ruby/object:Gem::Requirement
284
- none: false
285
- requirements:
286
- - - ">="
287
- - !ruby/object:Gem::Version
288
- hash: 31
289
- segments:
290
- - 1
291
- - 2
292
- - 0
293
- version: 1.2.0
294
- version_requirements: *id018
282
+ version_requirements: !ruby/object:Gem::Requirement
283
+ none: false
284
+ requirements:
285
+ - - ! '>='
286
+ - !ruby/object:Gem::Version
287
+ version: '0'
288
+ - !ruby/object:Gem::Dependency
295
289
  name: jettywrapper
290
+ requirement: !ruby/object:Gem::Requirement
291
+ none: false
292
+ requirements:
293
+ - - ! '>='
294
+ - !ruby/object:Gem::Version
295
+ version: 1.2.0
296
296
  type: :development
297
- - !ruby/object:Gem::Dependency
298
297
  prerelease: false
299
- requirement: &id019 !ruby/object:Gem::Requirement
300
- none: false
301
- requirements:
302
- - - ">="
303
- - !ruby/object:Gem::Version
304
- hash: 43
305
- segments:
306
- - 2
307
- - 9
308
- - 0
309
- version: 2.9.0
310
- version_requirements: *id019
298
+ version_requirements: !ruby/object:Gem::Requirement
299
+ none: false
300
+ requirements:
301
+ - - ! '>='
302
+ - !ruby/object:Gem::Version
303
+ version: 1.2.0
304
+ - !ruby/object:Gem::Dependency
311
305
  name: rspec
306
+ requirement: !ruby/object:Gem::Requirement
307
+ none: false
308
+ requirements:
309
+ - - ! '>='
310
+ - !ruby/object:Gem::Version
311
+ version: 2.9.0
312
312
  type: :development
313
- - !ruby/object:Gem::Dependency
314
313
  prerelease: false
315
- requirement: &id020 !ruby/object:Gem::Requirement
316
- none: false
317
- requirements:
318
- - - ">="
319
- - !ruby/object:Gem::Version
320
- hash: 43
321
- segments:
322
- - 0
323
- - 9
324
- - 8
325
- version: 0.9.8
326
- version_requirements: *id020
314
+ version_requirements: !ruby/object:Gem::Requirement
315
+ none: false
316
+ requirements:
317
+ - - ! '>='
318
+ - !ruby/object:Gem::Version
319
+ version: 2.9.0
320
+ - !ruby/object:Gem::Dependency
327
321
  name: mocha
322
+ requirement: !ruby/object:Gem::Requirement
323
+ none: false
324
+ requirements:
325
+ - - ! '>='
326
+ - !ruby/object:Gem::Version
327
+ version: 0.9.8
328
328
  type: :development
329
- description: ActiveFedora provides for creating and managing objects in the Fedora Repository Architecture.
330
- email:
329
+ prerelease: false
330
+ version_requirements: !ruby/object:Gem::Requirement
331
+ none: false
332
+ requirements:
333
+ - - ! '>='
334
+ - !ruby/object:Gem::Version
335
+ version: 0.9.8
336
+ description: ActiveFedora provides for creating and managing objects in the Fedora
337
+ Repository Architecture.
338
+ email:
331
339
  - matt.zumwalt@yourmediashelf.com
332
340
  executables: []
333
-
334
341
  extensions: []
335
-
336
- extra_rdoc_files:
342
+ extra_rdoc_files:
337
343
  - LICENSE
338
344
  - README.textile
339
- files:
345
+ files:
340
346
  - .document
341
347
  - .gitignore
342
348
  - .gitmodules
@@ -386,6 +392,7 @@ files:
386
392
  - lib/active_fedora/file_management.rb
387
393
  - lib/active_fedora/fixture_exporter.rb
388
394
  - lib/active_fedora/fixture_loader.rb
395
+ - lib/active_fedora/locale/en.yml
389
396
  - lib/active_fedora/metadata_datastream.rb
390
397
  - lib/active_fedora/metadata_datastream_helper.rb
391
398
  - lib/active_fedora/model.rb
@@ -547,42 +554,37 @@ files:
547
554
  - spec/unit/solr_service_spec.rb
548
555
  - spec/unit/unsaved_digital_object_spec.rb
549
556
  - spec/unit/validations_spec.rb
550
- homepage: http://yourmediashelf.com/activefedora
557
+ homepage: https://github.com/projecthydra/active_fedora
551
558
  licenses: []
552
-
553
559
  post_install_message:
554
560
  rdoc_options: []
555
-
556
- require_paths:
561
+ require_paths:
557
562
  - lib
558
- required_ruby_version: !ruby/object:Gem::Requirement
563
+ required_ruby_version: !ruby/object:Gem::Requirement
559
564
  none: false
560
- requirements:
561
- - - ">="
562
- - !ruby/object:Gem::Version
563
- hash: 3
564
- segments:
565
+ requirements:
566
+ - - ! '>='
567
+ - !ruby/object:Gem::Version
568
+ version: '0'
569
+ segments:
565
570
  - 0
566
- version: "0"
567
- required_rubygems_version: !ruby/object:Gem::Requirement
571
+ hash: 2634316874790357809
572
+ required_rubygems_version: !ruby/object:Gem::Requirement
568
573
  none: false
569
- requirements:
570
- - - ">"
571
- - !ruby/object:Gem::Version
572
- hash: 25
573
- segments:
574
- - 1
575
- - 3
576
- - 1
577
- version: 1.3.1
574
+ requirements:
575
+ - - ! '>='
576
+ - !ruby/object:Gem::Version
577
+ version: '0'
578
+ segments:
579
+ - 0
580
+ hash: 2634316874790357809
578
581
  requirements: []
579
-
580
582
  rubyforge_project: rubyfedora
581
- rubygems_version: 1.8.17
583
+ rubygems_version: 1.8.21
582
584
  signing_key:
583
585
  specification_version: 3
584
- summary: A convenience libary for manipulating MODS (Metadata Object Description Schema) documents.
585
- test_files:
586
+ summary: A convenience libary for manipulating documents in the Fedora Repository.
587
+ test_files:
586
588
  - spec/config_helper.rb
587
589
  - spec/fixtures/changeme155.xml
588
590
  - spec/fixtures/dino.jpg