|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectuka.karmi.rmi.DGCMarshalContext
uka.karmi.dgc.HierarchicalDGC.MarshalContext
Marshaling context for a hierarchical DGC implementation. The MarshalContext increases a counter to a local proxy when a reference is marshaled to a remote address space.
| Constructor Summary | |
(package private) |
HierarchicalDGC.MarshalContext()
|
| Method Summary | |
boolean |
done()
Called when all objects of a call are marshaled to the stream. |
java.lang.Object |
localReferenceMarshaled(SingleRemoteClientRef ref,
RemoteServerRef serverRef)
Called during marshaling of a remote reference, if the responsible DGC object is local. |
boolean |
proxyRequired(SingleRemoteClientRef ref)
This DGC implementation requires a proxy for each marshaled reference. |
java.lang.Object |
remoteReferenceMarshaled(SingleRemoteClientRef ref)
Called by a remote reference while it is serialized and the dgc object for the resulting object is no local DGC. |
void |
reset()
Reset context for reuse |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
HierarchicalDGC.MarshalContext()
| Method Detail |
public java.lang.Object localReferenceMarshaled(SingleRemoteClientRef ref,
RemoteServerRef serverRef)
localReferenceMarshaled in class DGCMarshalContextSingleRemoteClientRef.writeExternal(java.io.ObjectOutput)public java.lang.Object remoteReferenceMarshaled(SingleRemoteClientRef ref)
DGCMarshalContext
remoteReferenceMarshaled in class DGCMarshalContextpublic boolean done()
DGCMarshalContext
done in class DGCMarshalContextpublic void reset()
DGCMarshalContext
reset in class DGCMarshalContextpublic boolean proxyRequired(SingleRemoteClientRef ref)
SingleRemoteClientRef, this remote reference only dies,
when its proxy dies. The result is a hierarchical garbage
collection scheme, where remote references to other remote
references exist. These linked references are only used for
reference counting, not used for access. Method calls to
the referenced object use direct references when possible.
proxyRequired in class DGCMarshalContextDGCMarshalContext.proxyRequired(SingleRemoteClientRef)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||