Module: Dor
- Extended by:
- ActiveSupport::Autoload
- Defined in:
- lib/dor/config.rb,
lib/dor/version.rb,
lib/dor-services.rb,
lib/dor/exceptions.rb,
lib/dor/models/set.rb,
lib/dor/models/item.rb,
lib/dor/workflow/graph.rb,
lib/dor/models/abstract.rb,
lib/dor/workflow/process.rb,
lib/dor/models/collection.rb,
lib/dor/workflow/document.rb,
lib/dor/datastreams/events_ds.rb,
lib/dor/services/suri_service.rb,
lib/dor/models/workflow_object.rb,
lib/dor/services/merge_service.rb,
lib/dor/datastreams/workflow_ds.rb,
lib/dor/models/concerns/geoable.rb,
lib/dor/services/search_service.rb,
lib/dor/models/concerns/editable.rb,
lib/dor/services/cleanup_service.rb,
lib/dor/models/concerns/eventable.rb,
lib/dor/models/concerns/shelvable.rb,
lib/dor/services/indexing_service.rb,
lib/dor/services/metadata_service.rb,
lib/dor/models/admin_policy_object.rb,
lib/dor/models/concerns/governable.rb,
lib/dor/models/concerns/itemizable.rb,
lib/dor/models/concerns/rightsable.rb,
lib/dor/datastreams/geo_metadata_ds.rb,
lib/dor/models/concerns/contentable.rb,
lib/dor/models/concerns/describable.rb,
lib/dor/models/concerns/embargoable.rb,
lib/dor/models/concerns/preservable.rb,
lib/dor/models/concerns/processable.rb,
lib/dor/models/concerns/publishable.rb,
lib/dor/models/concerns/releaseable.rb,
lib/dor/models/concerns/versionable.rb,
lib/dor/services/public_xml_service.rb,
lib/dor/services/sdr_ingest_service.rb,
lib/dor/datastreams/desc_metadata_ds.rb,
lib/dor/datastreams/role_metadata_ds.rb,
lib/dor/models/concerns/assembleable.rb,
lib/dor/models/concerns/identifiable.rb,
lib/dor/services/registration_service.rb,
lib/dor/datastreams/rights_metadata_ds.rb,
lib/dor/services/cleanup_reset_service.rb,
lib/dor/datastreams/content_metadata_ds.rb,
lib/dor/datastreams/embargo_metadata_ds.rb,
lib/dor/datastreams/version_metadata_ds.rb,
lib/dor/services/digital_stacks_service.rb,
lib/dor/datastreams/identity_metadata_ds.rb,
lib/dor/services/reset_workspace_service.rb,
lib/dor/datastreams/simple_dublin_core_ds.rb,
lib/dor/datastreams/workflow_definition_ds.rb,
lib/dor/services/technical_metadata_service.rb,
lib/dor/datastreams/default_object_rights_ds.rb,
lib/dor/services/public_desc_metadata_service.rb,
lib/dor/datastreams/administrative_metadata_ds.rb
Defined Under Namespace
Modules: Assembleable, Contentable, Describable, Editable, Embargoable, Eventable, Geoable, Governable, Identifiable, Itemizable, Preservable, Processable, Publishable, Releaseable, Rightsable, Shelvable, Versionable, Workflow
Classes: Abstract, AdminPolicyObject, AdministrativeMetadataDS, Agreement, CleanupResetService, CleanupService, Collection, Configuration, ContentMetadataDS, DefaultObjectRightsDS, DescMetadataDS, DigitalStacksService, DuplicateIdError, EmbargoMetadataDS, EventsDS, Exception, GeoMetadataDS, IdentityMetadataDS, IndexingService, Item, MergeService, MetadataError, MetadataService, ParameterError, PublicDescMetadataService, PublicXmlService, RegistrationService, ResetWorkspaceService, RightsMetadataDS, RoleMetadataDS, SdrIngestService, SearchService, Set, SimpleDublinCoreDs, SuriService, TechnicalMetadataService, VersionMetadataDS, VersionTag, WorkflowDefinitionDs, WorkflowDs, WorkflowObject
Constant Summary
collapse
- Config =
Configuration.new(YAML.load(File.read(File.expand_path('../../../config/config_defaults.yml', __FILE__))))
- VERSION =
'5.21.2'.freeze
- INDEX_VERSION_FIELD =
'dor_services_version_ssi'.freeze
- @@registered_classes =
{}
Class Method Summary
collapse
Instance Method Summary
collapse
Class Method Details
16
17
18
|
# File 'lib/dor-services.rb', line 16
def configure(*args, &block)
Dor::Config.configure *args, &block
end
|
.ensure_models_loaded! ⇒ Object
49
50
51
52
|
# File 'lib/dor-services.rb', line 49
def ensure_models_loaded!
ActiveSupport::Deprecation.warn 'Dor.ensure_models_loaded! is unnecessary and has been deprecated.'
eager_load!
end
|
.find(pid, opts = {}) ⇒ Object
Get objectType information from solr and load the correct class the first time, saving the overhead of using ActiveFedora::Base#adapt_to. It falls back to Dor.load_instance() if the item is not in the index, or is improperly indexed.
33
34
35
|
# File 'lib/dor-services.rb', line 33
def find(pid, opts = {})
load_instance(pid)
end
|
.find_all(query, opts = {}) ⇒ Object
TODO: return enumerable and lazy load_instance TODO: restrict fieldlist (fl) for non-:lightweight queries
39
40
41
42
43
44
45
46
|
# File 'lib/dor-services.rb', line 39
def find_all(query, opts = {})
ActiveSupport::Deprecation.warn 'Dor.find_all is deprecated; use activefedora finders instead'
resp = SearchService.query query, opts
resp['response']['docs'].collect do |solr_doc|
find solr_doc['id']
end
end
|
.load_instance(pid) ⇒ Object
Load an object and inspect its identityMetadata to figure out what class to adapt it to. This is necessary when the object is not indexed, or the index is missing the objectType property.
24
25
26
|
# File 'lib/dor-services.rb', line 24
def load_instance(pid)
Dor::Abstract.find pid, cast: true
end
|
.logger ⇒ Object
58
59
60
61
62
63
64
65
|
# File 'lib/dor-services.rb', line 58
def logger
require 'logger'
@logger ||= if defined?(::Rails) && ::Rails.respond_to?(:logger)
Rails.logger
else
Logger.new(STDOUT)
end
end
|
.root ⇒ Object
54
55
56
|
# File 'lib/dor-services.rb', line 54
def root
File.dirname(__FILE__)
end
|
Instance Method Details
#logger ⇒ Object
68
69
70
|
# File 'lib/dor-services.rb', line 68
def logger
Dor.logger
end
|