Module: LinkedRails::Model::Singularable
- Extended by:
- ActiveSupport::Concern
- Included in:
- LinkedRails::Model
- Defined in:
- lib/linked_rails/model/singularable.rb
Instance Method Summary collapse
- #root_relative_iri(**opts) ⇒ Object
- #root_relative_singular_iri(**opts) ⇒ Object
- #singular_iri(**opts) ⇒ Object
- #singular_iri? ⇒ Boolean
- #singular_iri_opts ⇒ Object
- #singular_iri_template ⇒ Object
- #singular_resource? ⇒ Boolean
Instance Method Details
#root_relative_iri(**opts) ⇒ Object
16 17 18 19 20 |
# File 'lib/linked_rails/model/singularable.rb', line 16 def root_relative_iri(**opts) return super unless singular_iri? root_relative_singular_iri(**opts) end |
#root_relative_singular_iri(**opts) ⇒ Object
12 13 14 |
# File 'lib/linked_rails/model/singularable.rb', line 12 def root_relative_singular_iri(**opts) RDF::URI(singular_iri_template.(singular_iri_opts.merge(opts))) end |
#singular_iri(**opts) ⇒ Object
22 23 24 25 26 |
# File 'lib/linked_rails/model/singularable.rb', line 22 def singular_iri(**opts) return iri_with_root(root_relative_singular_iri(**opts)) if opts.present? @singular_iri ||= iri_with_root(root_relative_singular_iri) end |
#singular_iri? ⇒ Boolean
28 29 30 |
# File 'lib/linked_rails/model/singularable.rb', line 28 def singular_iri? anonymous_iri? end |
#singular_iri_opts ⇒ Object
32 33 34 |
# File 'lib/linked_rails/model/singularable.rb', line 32 def singular_iri_opts {} end |
#singular_iri_template ⇒ Object
36 37 38 |
# File 'lib/linked_rails/model/singularable.rb', line 36 def singular_iri_template self.class.singular_iri_template end |
#singular_resource? ⇒ Boolean
40 41 42 |
# File 'lib/linked_rails/model/singularable.rb', line 40 def singular_resource? singular_resource || false end |