Class: Riser::ResourceSet::Proxy
- Inherits:
-
Delegator
- Object
- Delegator
- Riser::ResourceSet::Proxy
- Includes:
- DRb::DRbUndumped, Riser::Resource::Delegatable, Riser::Resource::DelegateUnrefAlias
- Defined in:
- lib/riser/resource.rb
Instance Method Summary collapse
- #__unref__ ⇒ Object
-
#initialize(manager, unref_alias_set, access_key) ⇒ Proxy
constructor
A new instance of Proxy.
Methods included from Riser::Resource::DelegateUnrefAlias
Methods included from Riser::Resource::Delegatable
Constructor Details
#initialize(manager, unref_alias_set, access_key) ⇒ Proxy
Returns a new instance of Proxy.
303 304 305 306 307 308 309 310 |
# File 'lib/riser/resource.rb', line 303 def initialize(manager, unref_alias_set, access_key) @manager = manager @unref_alias_set = unref_alias_set @access_key = access_key # if an exception occurs at `@create.call', the proxy should not be referenced. __setobj__(@manager.ref_object(@access_key)) @manager.ref_proxy(self) end |
Instance Method Details
#__unref__ ⇒ Object
312 313 314 315 316 317 318 319 320 321 322 323 324 |
# File 'lib/riser/resource.rb', line 312 def __unref__ delegated = true __getobj__{ delegated = false } if (delegated) then __setobj__(nil) @manager.unref_proxy(self) # even if an exception occurs at `@destroy.call', the proxy should be unreferenced. @manager.unref_object(@access_key) end nil end |