Class: Lutaml::Hal::Link
- Inherits:
-
Model::Serializable
- Object
- Model::Serializable
- Lutaml::Hal::Link
- Defined in:
- lib/lutaml/hal/link.rb
Instance Attribute Summary collapse
-
#_global_register_id ⇒ Object
Returns the value of attribute _global_register_id.
-
#parent_resource ⇒ Object
Returns the value of attribute parent_resource.
Instance Method Summary collapse
Instance Attribute Details
#_global_register_id ⇒ Object
Returns the value of attribute _global_register_id.
8 9 10 |
# File 'lib/lutaml/hal/link.rb', line 8 def _global_register_id @_global_register_id end |
#parent_resource ⇒ Object
Returns the value of attribute parent_resource.
8 9 10 |
# File 'lib/lutaml/hal/link.rb', line 8 def parent_resource @parent_resource end |
Instance Method Details
#realize(register: nil, parent_resource: nil, force_refresh: false) ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/lutaml/hal/link.rb', line 19 def realize(register: nil, parent_resource: nil, force_refresh: false) effective_parent = parent_resource || @parent_resource register = find_register(register) raise "No register provided for link resolution (class: #{self.class}, href: #{href})" if register.nil? if !force_refresh && effective_parent && ( = (effective_parent, register)) register.cache_manager&.set(href, nil, ) return end register.cache_manager&.invalidate(href) if force_refresh Hal.debug_log "Resolving link href: #{href} using register" register.resolve_and_cast(self, href) end |