active-fedora 5.7.1 → 6.0.0.pre1
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitmodules +1 -1
- data/Gemfile +2 -1
- data/History.txt +0 -14
- data/Rakefile +1 -2
- data/active-fedora.gemspec +2 -2
- data/lib/active_fedora.rb +1 -16
- data/lib/active_fedora/associations.rb +8 -11
- data/lib/active_fedora/associations/association_collection.rb +2 -4
- data/lib/active_fedora/associations/has_and_belongs_to_many_association.rb +3 -12
- data/lib/active_fedora/associations/has_many_association.rb +0 -4
- data/lib/active_fedora/base.rb +6 -6
- data/lib/active_fedora/config.rb +0 -7
- data/lib/active_fedora/datastream.rb +0 -37
- data/lib/active_fedora/datastream_collections.rb +0 -10
- data/lib/active_fedora/datastreams.rb +0 -17
- data/lib/active_fedora/digital_object.rb +1 -1
- data/lib/active_fedora/file_configurator.rb +0 -22
- data/lib/active_fedora/fixture_loader.rb +1 -1
- data/lib/active_fedora/nokogiri_datastream.rb +9 -51
- data/lib/active_fedora/qualified_dublin_core_datastream.rb +1 -1
- data/lib/active_fedora/querying.rb +8 -4
- data/lib/active_fedora/rdf_datastream.rb +10 -9
- data/lib/active_fedora/rdf_node.rb +1 -1
- data/lib/active_fedora/rdf_node/term_proxy.rb +9 -5
- data/lib/active_fedora/relation.rb +1 -1
- data/lib/active_fedora/rels_ext_datastream.rb +1 -8
- data/lib/active_fedora/semantic_node.rb +0 -35
- data/lib/active_fedora/simple_datastream.rb +1 -1
- data/lib/active_fedora/solr_service.rb +6 -8
- data/lib/active_fedora/version.rb +1 -1
- data/lib/tasks/active_fedora_dev.rake +11 -3
- data/solr/conf/schema.xml +10 -1
- data/spec/integration/base_spec.rb +2 -347
- data/spec/integration/complex_rdf_datastream_spec.rb +1 -1
- data/spec/integration/full_featured_model_spec.rb +1 -9
- data/spec/integration/ntriples_datastream_spec.rb +4 -4
- data/spec/integration/om_datastream_spec.rb +2 -1
- data/spec/integration/rels_ext_datastream_spec.rb +1 -89
- data/spec/integration/scoped_query_spec.rb +4 -4
- data/spec/samples/hydra-mods_article_datastream.rb +2 -2
- data/spec/spec_helper.rb +3 -0
- data/spec/unit/base_spec.rb +7 -81
- data/spec/unit/datastream_spec.rb +0 -25
- data/spec/unit/has_many_collection_spec.rb +2 -27
- data/spec/unit/ntriples_datastream_spec.rb +28 -39
- data/spec/unit/om_datastream_spec.rb +13 -13
- data/spec/unit/qualified_dublin_core_datastream_spec.rb +1 -1
- data/spec/unit/query_spec.rb +1 -24
- data/spec/unit/semantic_node_spec.rb +0 -2
- data/spec/unit/simple_datastream_spec.rb +2 -2
- data/spec/unit/solr_config_options_spec.rb +1 -1
- metadata +76 -57
- checksums.yaml +0 -7
- data/.travis.yml +0 -8
- data/lib/active_fedora/file_management.rb +0 -81
- data/lib/active_fedora/metadata_datastream_helper.rb +0 -43
- data/lib/active_fedora/named_relationships.rb +0 -99
- data/lib/active_fedora/relationships.rb +0 -663
- data/spec/integration/base_file_management_spec.rb +0 -24
- data/spec/integration/has_many_associations_spec.rb +0 -64
- data/spec/integration/metadata_datastream_helper_spec.rb +0 -100
- data/spec/integration/semantic_node_spec.rb +0 -457
- data/spec/unit/base_file_management_spec.rb +0 -95
- data/spec/unit/has_and_belongs_to_many_collection_spec.rb +0 -59
- data/spec/unit/relationships_spec.rb +0 -871
data/.gitmodules
CHANGED
data/Gemfile
CHANGED
@@ -3,8 +3,9 @@ source "http://rubygems.org"
|
|
3
3
|
# Bundler will rely on active-fedora.gemspec for dependency information.
|
4
4
|
|
5
5
|
gemspec
|
6
|
+
|
6
7
|
group :development, :test do
|
7
|
-
gem 'simplecov', :platform =>
|
8
|
+
gem 'simplecov', :platform => :mri_19
|
8
9
|
gem 'simplecov-rcov', :platform => :mri_19
|
9
10
|
end
|
10
11
|
|
data/History.txt
CHANGED
@@ -1,17 +1,3 @@
|
|
1
|
-
5.6.1
|
2
|
-
Fixed delegating enumerable methods (join, [], each_with_index, to_a, etc) on an RdfNode::TermProxy
|
3
|
-
|
4
|
-
5.6.0
|
5
|
-
Upgrade to rubydora 1.3.0, which prevents unnecessary loading of datastream content.
|
6
|
-
#35 fix passing :sort argument to ActiveFedora::Base#find
|
7
|
-
Better support for ruby 2.0 (delegating inspect within RdfNode::TermProxy)
|
8
|
-
|
9
|
-
5.5.2
|
10
|
-
#25 When multiple has_many relationships share a predicate, the solr_query should use class_name to distinguish the sets.
|
11
|
-
|
12
|
-
5.5.1
|
13
|
-
#34 Allow passing RDF::URI to rdf_type
|
14
|
-
|
15
1
|
5.5.0
|
16
2
|
Added support for complex rdf structures.
|
17
3
|
Changed RdfDatastream to_solr so that it uses the dsid as the solr prefix, not the datastream class name
|
data/Rakefile
CHANGED
@@ -11,9 +11,8 @@ load "lib/tasks/active_fedora_dev.rake" if defined?(Rake)
|
|
11
11
|
|
12
12
|
CLEAN.include %w[**/.DS_Store tmp *.log *.orig *.tmp **/*~]
|
13
13
|
|
14
|
-
task :ci => ['jetty:clean', 'active_fedora:ci']
|
15
14
|
task :spec => ['active_fedora:rspec']
|
16
15
|
task :rcov => ['active_fedora:rcov']
|
17
16
|
|
18
17
|
|
19
|
-
task :default => [:
|
18
|
+
task :default => [:spec]
|
data/active-fedora.gemspec
CHANGED
@@ -18,12 +18,12 @@ Gem::Specification.new do |s|
|
|
18
18
|
s.add_dependency('rsolr')
|
19
19
|
s.add_dependency('om', '~> 1.8.0')
|
20
20
|
s.add_dependency('nom-xml', '>=0.5.1')
|
21
|
-
s.add_dependency('solrizer', '~>
|
21
|
+
s.add_dependency('solrizer', '~>3.0.0.pre1')
|
22
22
|
s.add_dependency("activeresource", '>= 3.0.0')
|
23
23
|
s.add_dependency("activesupport", '>= 3.0.0')
|
24
24
|
s.add_dependency("builder", '~> 3.0.0')
|
25
25
|
s.add_dependency("mediashelf-loggable")
|
26
|
-
s.add_dependency("rubydora", '~>1.
|
26
|
+
s.add_dependency("rubydora", '~>1.2')
|
27
27
|
s.add_dependency("rdf")
|
28
28
|
s.add_dependency("rdf-rdfxml", '~>0.3.8')
|
29
29
|
s.add_dependency("deprecation")
|
data/lib/active_fedora.rb
CHANGED
@@ -8,7 +8,7 @@ require 'active_support/core_ext/object'
|
|
8
8
|
require 'active_support/core_ext/hash/indifferent_access'
|
9
9
|
require 'rdf'
|
10
10
|
|
11
|
-
SOLR_DOCUMENT_ID =
|
11
|
+
SOLR_DOCUMENT_ID = Solrizer.default_field_mapper.id_field unless defined?(SOLR_DOCUMENT_ID)
|
12
12
|
ENABLE_SOLR_UPDATES = true unless defined?(ENABLE_SOLR_UPDATES)
|
13
13
|
|
14
14
|
module ActiveFedora #:nodoc:
|
@@ -32,8 +32,6 @@ module ActiveFedora #:nodoc:
|
|
32
32
|
autoload :Config
|
33
33
|
autoload :FileConfigurator
|
34
34
|
autoload :Reflection
|
35
|
-
autoload :Relationships
|
36
|
-
autoload :FileManagement
|
37
35
|
autoload :RelationshipGraph
|
38
36
|
autoload :Datastream
|
39
37
|
autoload :DatastreamHash
|
@@ -43,7 +41,6 @@ module ActiveFedora #:nodoc:
|
|
43
41
|
autoload :UnsavedDigitalObject
|
44
42
|
autoload :SolrDigitalObject
|
45
43
|
autoload :Model
|
46
|
-
autoload :MetadataDatastreamHelper
|
47
44
|
autoload :NokogiriDatastream
|
48
45
|
autoload :NomDatastream
|
49
46
|
autoload :NtriplesRDFDatastream
|
@@ -66,7 +63,6 @@ module ActiveFedora #:nodoc:
|
|
66
63
|
autoload :FixtureLoader
|
67
64
|
autoload :FixtureExporter
|
68
65
|
autoload :DatastreamCollections
|
69
|
-
autoload :NamedRelationships
|
70
66
|
autoload :Predicates
|
71
67
|
autoload :Validations
|
72
68
|
end
|
@@ -129,21 +125,10 @@ module ActiveFedora #:nodoc:
|
|
129
125
|
end
|
130
126
|
end
|
131
127
|
|
132
|
-
def self.config_for_environment
|
133
|
-
ActiveSupport::Deprecation.warn("config_for_environment has been deprecated use `config' instead")
|
134
|
-
config
|
135
|
-
end
|
136
|
-
|
137
128
|
def self.solr
|
138
129
|
ActiveFedora::SolrService.instance
|
139
130
|
end
|
140
131
|
|
141
|
-
def self.fedora
|
142
|
-
ActiveSupport::Deprecation.warn("ActiveFedora.fedora() is deprecated and will be removed in the next release use ActiveFedora::Base.connection_for_pid(pid) instead")
|
143
|
-
|
144
|
-
ActiveFedora::Base.connection_for_pid('0')
|
145
|
-
end
|
146
|
-
|
147
132
|
def self.predicate_config
|
148
133
|
configurator.predicate_config
|
149
134
|
end
|
@@ -12,27 +12,24 @@ module ActiveFedora
|
|
12
12
|
|
13
13
|
autoload :AssociationCollection, 'active_fedora/associations/association_collection'
|
14
14
|
autoload :AssociationProxy, 'active_fedora/associations/association_proxy'
|
15
|
-
|
16
|
-
# Clears out the association cache.
|
17
|
-
def clear_association_cache #:nodoc:
|
18
|
-
@association_cache.clear if persisted?
|
19
|
-
end
|
20
|
-
|
21
|
-
# :nodoc:
|
22
|
-
attr_reader :association_cache
|
23
|
-
|
24
15
|
private
|
25
16
|
|
26
17
|
# Returns the specified association instance if it responds to :loaded?, nil otherwise.
|
27
18
|
def association_instance_get(name)
|
28
|
-
|
19
|
+
ivar = "@#{name}"
|
20
|
+
if instance_variable_defined?(ivar)
|
21
|
+
association = instance_variable_get(ivar)
|
22
|
+
association if association.respond_to?(:loaded?)
|
23
|
+
end
|
29
24
|
end
|
30
25
|
|
31
26
|
# Set the specified association instance.
|
32
27
|
def association_instance_set(name, association)
|
33
|
-
|
28
|
+
instance_variable_set("@#{name}", association)
|
34
29
|
end
|
35
30
|
|
31
|
+
|
32
|
+
|
36
33
|
module ClassMethods
|
37
34
|
|
38
35
|
def has_many(association_id, options={})
|
@@ -74,7 +74,7 @@ module ActiveFedora
|
|
74
74
|
flatten_deeper(records).each do |record|
|
75
75
|
raise_on_type_mismatch(record)
|
76
76
|
add_record_to_target_with_callbacks(record) do |r|
|
77
|
-
result &&= insert_record(record)
|
77
|
+
result &&= insert_record(record) unless @owner.new_record?
|
78
78
|
end
|
79
79
|
end
|
80
80
|
|
@@ -180,9 +180,7 @@ module ActiveFedora
|
|
180
180
|
end
|
181
181
|
|
182
182
|
def construct_query
|
183
|
-
|
184
|
-
clauses[:has_model] = @reflection.class_name.constantize.to_class_uri if @reflection.class_name && @reflection.class_name != 'ActiveFedora::Base'
|
185
|
-
@counter_query = @finder_query = ActiveFedora::SolrService.construct_query_for_rel(clauses)
|
183
|
+
@counter_query = @finder_query = ActiveFedora::SolrService.construct_query_for_rel(@reflection.options[:property], @owner.internal_uri)
|
186
184
|
end
|
187
185
|
|
188
186
|
|
@@ -31,25 +31,16 @@ module ActiveFedora
|
|
31
31
|
|
32
32
|
### TODO save relationship
|
33
33
|
@owner.add_relationship(@reflection.options[:property], record)
|
34
|
-
|
35
|
-
if @owner.new_record? and @reflection.options[:inverse_of]
|
36
|
-
logger.warn("has_and_belongs_to_many #{@reflection.inspect} is cowardly refusing to insert the inverse relationship into #{record}, because #{@owner} is not persisted yet.")
|
37
|
-
elsif @reflection.options[:inverse_of]
|
34
|
+
if (@reflection.options[:inverse_of])
|
38
35
|
record.add_relationship(@reflection.options[:inverse_of], @owner)
|
39
|
-
record.save
|
40
36
|
end
|
41
|
-
|
37
|
+
record.save
|
42
38
|
return true
|
43
39
|
end
|
44
40
|
|
45
41
|
def delete_records(records)
|
46
42
|
records.each do |r|
|
47
|
-
|
48
|
-
|
49
|
-
if (@reflection.options[:inverse_of])
|
50
|
-
r.remove_relationship(@reflection.options[:inverse_of], @owner)
|
51
|
-
r.save
|
52
|
-
end
|
43
|
+
r.remove_relationship(@reflection.options[:property], @owner)
|
53
44
|
end
|
54
45
|
end
|
55
46
|
end
|
@@ -31,10 +31,6 @@ module ActiveFedora
|
|
31
31
|
end
|
32
32
|
|
33
33
|
def insert_record(record, force = false, validate = true)
|
34
|
-
if @owner.new_record?
|
35
|
-
logger.warn("has_many #{@reflection.inspect} is cowardly refusing to insert a relationship into #{record}, because #{@owner} is not persisted yet.")
|
36
|
-
return true
|
37
|
-
end
|
38
34
|
set_belongs_to_association_for(record)
|
39
35
|
#force ? record.save! : record.save(:validate => validate)
|
40
36
|
record.save
|
data/lib/active_fedora/base.rb
CHANGED
@@ -27,7 +27,7 @@ module ActiveFedora
|
|
27
27
|
|
28
28
|
class_attribute :fedora_connection, :profile_solr_name
|
29
29
|
self.fedora_connection = {}
|
30
|
-
self.profile_solr_name = ActiveFedora::SolrService.solr_name("object_profile", :
|
30
|
+
self.profile_solr_name = ActiveFedora::SolrService.solr_name("object_profile", :displayable)
|
31
31
|
|
32
32
|
|
33
33
|
def method_missing(name, *args)
|
@@ -68,7 +68,6 @@ module ActiveFedora
|
|
68
68
|
# the given namespace.
|
69
69
|
def initialize(attrs = nil)
|
70
70
|
attrs = {} if attrs.nil?
|
71
|
-
@association_cache = {}
|
72
71
|
attributes = attrs.dup
|
73
72
|
@inner_object = UnsavedDigitalObject.new(self.class, attributes.delete(:namespace), attributes.delete(:pid))
|
74
73
|
self.relationships_loaded = true
|
@@ -81,7 +80,6 @@ module ActiveFedora
|
|
81
80
|
|
82
81
|
# Reloads the object from Fedora.
|
83
82
|
def reload
|
84
|
-
clear_association_cache
|
85
83
|
init_with(self.class.find(self.pid).inner_object)
|
86
84
|
end
|
87
85
|
|
@@ -96,7 +94,6 @@ module ActiveFedora
|
|
96
94
|
# post.init_with(DigitalObject.find(pid))
|
97
95
|
# post.properties.title # => 'hello world'
|
98
96
|
def init_with(inner_obj)
|
99
|
-
@association_cache = {}
|
100
97
|
@inner_object = inner_obj
|
101
98
|
unless @inner_object.is_a? SolrDigitalObject
|
102
99
|
@inner_object.original_class = self.class
|
@@ -307,7 +304,7 @@ module ActiveFedora
|
|
307
304
|
c_time = Time.parse(c_time) unless c_time.is_a?(Time)
|
308
305
|
m_time = modified_date
|
309
306
|
m_time = Time.parse(m_time) unless m_time.is_a?(Time)
|
310
|
-
solr_doc.merge!(SOLR_DOCUMENT_ID.to_sym => pid, ActiveFedora::SolrService.solr_name(:system_create, :date) => c_time.utc.xmlschema, ActiveFedora::SolrService.solr_name(:system_modified, :date) => m_time.utc.xmlschema, ActiveFedora::SolrService.solr_name(:active_fedora_model, :symbol) => self.class.inspect)
|
307
|
+
solr_doc.merge!(SOLR_DOCUMENT_ID.to_sym => pid, ActiveFedora::SolrService.solr_name(:system_create, type: :date) => c_time.utc.xmlschema, ActiveFedora::SolrService.solr_name(:system_modified, type: :date) => m_time.utc.xmlschema, ActiveFedora::SolrService.solr_name(:active_fedora_model, :symbol) => self.class.inspect)
|
311
308
|
solrize_profile(solr_doc)
|
312
309
|
end
|
313
310
|
datastreams.each_value do |ds|
|
@@ -317,6 +314,10 @@ module ActiveFedora
|
|
317
314
|
solr_doc
|
318
315
|
end
|
319
316
|
|
317
|
+
def solr_name(*args)
|
318
|
+
ActiveFedora::SolrService.solr_name(*args)
|
319
|
+
end
|
320
|
+
|
320
321
|
def solrize_profile(solr_doc = Hash.new) # :nodoc:
|
321
322
|
profile_hash = { 'datastreams' => {} }
|
322
323
|
if inner_object.respond_to? :profile
|
@@ -443,7 +444,6 @@ module ActiveFedora
|
|
443
444
|
include Attributes
|
444
445
|
include ActiveFedora::Persistence
|
445
446
|
include Model
|
446
|
-
include Solrizer::FieldNameMapper
|
447
447
|
include Loggable
|
448
448
|
include ActiveModel::Conversion
|
449
449
|
include Validations
|
data/lib/active_fedora/config.rb
CHANGED
@@ -21,13 +21,6 @@ module ActiveFedora
|
|
21
21
|
|
22
22
|
def init_single(vals)
|
23
23
|
@credentials = vals.symbolize_keys
|
24
|
-
if @credentials[:url] && !@credentials[:user]
|
25
|
-
ActiveSupport::Deprecation.warn("Configuring fedora with \":url\" without :user and :password is no longer supported.")
|
26
|
-
u = URI.parse @credentials[:url]
|
27
|
-
@credentials[:user] = u.user
|
28
|
-
@credentials[:password] = u.password
|
29
|
-
@credentials[:url] = "#{u.scheme}://#{u.host}:#{u.port}#{u.path}"
|
30
|
-
end
|
31
24
|
unless @credentials.has_key?(:user) && @credentials.has_key?(:password) && @credentials.has_key?(:url)
|
32
25
|
raise ActiveFedora::ConfigurationError, "Fedora configuration must provide :user, :password and :url."
|
33
26
|
end
|
@@ -2,7 +2,6 @@ module ActiveFedora
|
|
2
2
|
|
3
3
|
#This class represents a Fedora datastream
|
4
4
|
class Datastream < Rubydora::Datastream
|
5
|
-
extend Deprecation
|
6
5
|
attr_writer :digital_object
|
7
6
|
attr_accessor :last_modified
|
8
7
|
|
@@ -22,40 +21,12 @@ module ActiveFedora
|
|
22
21
|
dsid.gsub(/\./, '%2e')
|
23
22
|
end
|
24
23
|
|
25
|
-
# Test whether this datastream been modified since it was last saved
|
26
|
-
# Deprecated
|
27
|
-
def dirty?
|
28
|
-
changed?
|
29
|
-
end
|
30
|
-
deprecation_deprecate :dirty?
|
31
|
-
|
32
24
|
# @abstract Override this in your concrete datastream class.
|
33
25
|
# @return [boolean] does this datastream contain metadata (not file data)
|
34
26
|
def metadata?
|
35
27
|
false
|
36
28
|
end
|
37
29
|
|
38
|
-
# Deprecated
|
39
|
-
def dirty
|
40
|
-
changed?
|
41
|
-
end
|
42
|
-
deprecation_deprecate :dirty
|
43
|
-
|
44
|
-
# Deprecated
|
45
|
-
def dirty=(value)
|
46
|
-
if value
|
47
|
-
content_will_change! # an innocent hack to pretend something has changed
|
48
|
-
else
|
49
|
-
changed_attributes.clear
|
50
|
-
end
|
51
|
-
end
|
52
|
-
deprecation_deprecate :dirty=
|
53
|
-
|
54
|
-
def new_object?
|
55
|
-
new?
|
56
|
-
end
|
57
|
-
deprecation_deprecate :new_object?
|
58
|
-
|
59
30
|
def validate_content_present
|
60
31
|
has_content?
|
61
32
|
end
|
@@ -73,14 +44,6 @@ module ActiveFedora
|
|
73
44
|
# serializes any changed data into the content field
|
74
45
|
def serialize!
|
75
46
|
end
|
76
|
-
# Populate a Datastream object based on the "datastream" node from a FOXML file
|
77
|
-
# @param [ActiveFedora::Datastream] tmpl the Datastream object that you are building
|
78
|
-
# @param [Nokogiri::XML::Node] node the "foxml:datastream" node from a FOXML file
|
79
|
-
def self.from_xml(tmpl, node)
|
80
|
-
Deprecation.deprecated_method_warning(self, :from_xml)
|
81
|
-
tmpl.controlGroup= node['CONTROL_GROUP']
|
82
|
-
tmpl
|
83
|
-
end
|
84
47
|
|
85
48
|
def solrize_profile # :nodoc:
|
86
49
|
profile_hash = {}
|
@@ -323,15 +323,5 @@ module ActiveFedora
|
|
323
323
|
@named_datastreams_desc ||= self.class.class_named_datastreams_desc
|
324
324
|
end
|
325
325
|
|
326
|
-
# ** EXPERIMENTAL **
|
327
|
-
#
|
328
|
-
# Get class variable hash that stores has_datastream arguments.
|
329
|
-
# It is used to initialize the value returned by public named_datastreams_desc method
|
330
|
-
# Deprecated
|
331
|
-
def named_datastreams_desc_from_class
|
332
|
-
logger.warn "named_datastreams_desc_from_class is deprecated and will be removed in the next version"
|
333
|
-
self.class.class_named_datastreams_desc
|
334
|
-
end
|
335
|
-
|
336
326
|
end
|
337
327
|
end
|
@@ -1,7 +1,6 @@
|
|
1
1
|
module ActiveFedora
|
2
2
|
module Datastreams
|
3
3
|
extend ActiveSupport::Concern
|
4
|
-
extend Deprecation
|
5
4
|
|
6
5
|
included do
|
7
6
|
class_attribute :ds_specs
|
@@ -188,22 +187,6 @@ module ActiveFedora
|
|
188
187
|
ds
|
189
188
|
end
|
190
189
|
|
191
|
-
# This method provides validation of proper options for control_group 'E' and 'R' and builds an attribute hash to be merged back into ds.attributes prior to saving
|
192
|
-
#
|
193
|
-
# @param [Object] ds The datastream
|
194
|
-
# @param [Object] ds_config hash of options which may contain :disseminator and :url
|
195
|
-
def additional_attributes_for_external_and_redirect_control_groups(ds,ds_config)
|
196
|
-
if ds.controlGroup=='E'
|
197
|
-
if !ds_config[:disseminator].present? && ds_config[:url].present?
|
198
|
-
ds.dsLocation= ds_config[:url]
|
199
|
-
end
|
200
|
-
elsif ds.controlGroup=='R'
|
201
|
-
ds.dsLocation= ds_config[:url]
|
202
|
-
end
|
203
|
-
end
|
204
|
-
deprecation_deprecate :additional_attributes_for_external_and_redirect_control_groups
|
205
|
-
|
206
|
-
|
207
190
|
module ClassMethods
|
208
191
|
#This method is used to specify the details of a datastream.
|
209
192
|
# You can pass the name as the first argument and a hash of options as the second argument
|
@@ -35,7 +35,7 @@ module ActiveFedora
|
|
35
35
|
obj = Deprecation.silence(Rubydora::DigitalObject) do
|
36
36
|
begin
|
37
37
|
super(pid, conn)
|
38
|
-
rescue Rubydora::FedoraInvalidRequest
|
38
|
+
rescue Rubydora::FedoraInvalidRequest => e
|
39
39
|
# PID is nil
|
40
40
|
raise ActiveFedora::ObjectNotFoundError, "Unable to find '#{pid}' in fedora. See logger for details."
|
41
41
|
end
|
@@ -46,7 +46,6 @@ module ActiveFedora
|
|
46
46
|
# url: http://127.0.0.1:8983/fedora2
|
47
47
|
#
|
48
48
|
|
49
|
-
include Solrizer::FieldNameMapper
|
50
49
|
attr_accessor :config_env
|
51
50
|
attr_reader :config_options, :fedora_config_path, :solr_config_path
|
52
51
|
|
@@ -73,12 +72,6 @@ module ActiveFedora
|
|
73
72
|
@solr_config
|
74
73
|
end
|
75
74
|
|
76
|
-
def config_reload!
|
77
|
-
ActiveSupport::Deprecation.warn("config_reload! is not supported")
|
78
|
-
reset!
|
79
|
-
load_configs
|
80
|
-
end
|
81
|
-
|
82
75
|
def path
|
83
76
|
get_config_path(:fedora)
|
84
77
|
end
|
@@ -101,7 +94,6 @@ module ActiveFedora
|
|
101
94
|
|
102
95
|
load_fedora_config
|
103
96
|
load_solr_config
|
104
|
-
load_solrizer_config
|
105
97
|
@config_loaded = true
|
106
98
|
end
|
107
99
|
|
@@ -150,20 +142,6 @@ module ActiveFedora
|
|
150
142
|
@solr_config = {:url=> get_solr_url(config[ActiveFedora.environment.to_sym].symbolize_keys)}
|
151
143
|
end
|
152
144
|
|
153
|
-
def load_solrizer_config
|
154
|
-
if solrizer_config_path
|
155
|
-
logger.warn "loading_solrizer_config at #{solrizer_config_path}, this overwrites the default field mapper class."
|
156
|
-
ActiveFedora::SolrService.load_mappings
|
157
|
-
end
|
158
|
-
end
|
159
|
-
|
160
|
-
def solrizer_config_path
|
161
|
-
begin
|
162
|
-
get_config_path('solr_mappings')
|
163
|
-
rescue ActiveFedora::ConfigurationError
|
164
|
-
end
|
165
|
-
end
|
166
|
-
|
167
145
|
# Given the solr_config that's been loaded for this environment,
|
168
146
|
# determine which solr url to use
|
169
147
|
def get_solr_url(solr_config)
|