Class: DRb::DRbIdConv
- Inherits:
-
Object
- Object
- DRb::DRbIdConv
- Defined in:
- lib/drb/drb.rb
Overview
Class responsible for converting between an object and its id.
This, the default implementation, uses an object’s local ObjectSpace __id__ as its id. This means that an object’s identification over drb remains valid only while that object instance remains alive within the server runtime.
For alternative mechanisms, see DRb::TimerIdConv in drb/timeridconv.rb and DRbNameIdConv in sample/name.rb in the full drb distribution.
Direct Known Subclasses
Instance Method Summary collapse
-
#to_id(obj) ⇒ Object
Convert an object into a reference id.
-
#to_obj(ref) ⇒ Object
Convert an object reference id to an object.
Instance Method Details
#to_id(obj) ⇒ Object
Convert an object into a reference id.
This implementation returns the object’s __id__ in the local object space.
373 374 375 376 377 378 379 380 |
# File 'lib/drb/drb.rb', line 373 def to_id(obj) case obj when Object obj.nil? ? nil : obj.__id__ when BasicObject obj.__id__ end end |
#to_obj(ref) ⇒ Object
Convert an object reference id to an object.
This implementation looks up the reference id in the local object space and returns the object it refers to.
365 366 367 |
# File 'lib/drb/drb.rb', line 365 def to_obj(ref) ObjectSpace._id2ref(ref) end |