ara.t.howard / noaa.gov schrieb: > (... mauricio's as always fine solution ...) > > thanks a bunch - i'll play with this Ara, do you need to control this on the client or on the server? Per object or per class? There are several possible implementations based on Mauricio's code. For example, with the following the disable/enable methods work on a per object basis: module DRbUndumped @undumped_disabled = {} def self.undumped_disabled? obj @undumped_disabled[ DRb.to_id(obj) ] end def self.disable_undumped obj @undumped_disabled[ DRb.to_id(obj) ] = true end def self.enable_undumped obj @undumped_disabled.delete DRb.to_id(obj) end def undumped_disabled? DRbUndumped.undumped_disabled? self end def disable_undumped DRbUndumped.disable_undumped self end def enable_undumped DRbUndumped.enable_undumped self end def kind_of? arg (arg != DRbUndumped || !undumped_disabled?) && super end def respond_to? arg (arg != :_dump || !undumped_disabled?) && super end end It doesn't allow to re-enable DRbUndumped on the client side. If you need this, the code has to be changed a little bit. Regards, Pit