A system and method that provides remoting services in a distributed
object system is provided. The system includes a remote object monitor
and a remote object manipulator. The remote object monitor can provide a
human readable reference to a remote object, where the human readable
reference is a URL (Uniform Resource Locator) and can include protocol
information, protocol data, an application name and an object URI
(Uniform Resource Identifier). The remote object monitor can also provide
metadata concerning a remote object, where the metadata can include
information concerning interfaces implemented by a remote object, the
type of a remote object, the class hierarchy of a remote object, methods
implemented by a remote object, properties implemented by a remote object
and attributes implemented by a remote object. The remote object monitor
can also provide entry points and code interception for custom attribute
based activation processing that can be performed before, after and/or
substantially in parallel with non-attribute code associated with a
remote object. The remote object monitor can also monitor and/or control
the lifetime of a remote object, using, for example, a lease manager. The
remote object manipulator can also update metadata concerning a remote
object and can control the lifetime of a remote object via a lease
manager, for example.