Class: Valkyrie::Persistence::Fedora::Persister::OrmConverter
- Inherits:
-
Object
- Object
- Valkyrie::Persistence::Fedora::Persister::OrmConverter
- Defined in:
- lib/valkyrie/persistence/fedora/persister/orm_converter.rb
Overview
Responsible for converting LDP::Container::Basic to RDF::Resource
Defined Under Namespace
Classes: GraphToAttributes
Instance Attribute Summary collapse
-
#adapter ⇒ Object
readonly
Returns the value of attribute adapter.
-
#object ⇒ Object
readonly
Returns the value of attribute object.
Instance Method Summary collapse
- #attributes ⇒ Object
- #convert ⇒ Object
- #id ⇒ Object
- #id_property ⇒ Object
-
#initialize(object:, adapter:) ⇒ OrmConverter
constructor
A new instance of OrmConverter.
Constructor Details
#initialize(object:, adapter:) ⇒ OrmConverter
Returns a new instance of OrmConverter.
8 9 10 11 |
# File 'lib/valkyrie/persistence/fedora/persister/orm_converter.rb', line 8 def initialize(object:, adapter:) @object = object @adapter = adapter end |
Instance Attribute Details
#adapter ⇒ Object (readonly)
Returns the value of attribute adapter.
6 7 8 |
# File 'lib/valkyrie/persistence/fedora/persister/orm_converter.rb', line 6 def adapter @adapter end |
#object ⇒ Object (readonly)
Returns the value of attribute object.
6 7 8 |
# File 'lib/valkyrie/persistence/fedora/persister/orm_converter.rb', line 6 def object @object end |
Instance Method Details
#attributes ⇒ Object
17 18 19 20 21 |
# File 'lib/valkyrie/persistence/fedora/persister/orm_converter.rb', line 17 def attributes GraphToAttributes.new(graph: graph, adapter: adapter) .convert .merge(id: id, new_record: false) end |
#convert ⇒ Object
13 14 15 |
# File 'lib/valkyrie/persistence/fedora/persister/orm_converter.rb', line 13 def convert Valkyrie::Types::Anything[attributes] end |
#id ⇒ Object
23 24 25 |
# File 'lib/valkyrie/persistence/fedora/persister/orm_converter.rb', line 23 def id id_property.present? ? Valkyrie::ID.new(id_property) : adapter.uri_to_id(object.subject_uri) end |
#id_property ⇒ Object
27 28 29 30 |
# File 'lib/valkyrie/persistence/fedora/persister/orm_converter.rb', line 27 def id_property return unless object.subject_uri.to_s.include?("#") object.graph.query([RDF::URI(""), PermissiveSchema.id, nil]).to_a.first.try(:object).to_s end |