org.virtualbox_6_0
Class IToken

java.lang.Object
  extended by org.virtualbox_6_0.IUnknown
      extended by org.virtualbox_6_0.IToken

public class IToken
extends IUnknown

The IToken interface represents a token passed to an API client, which triggers cleanup actions when it is explicitly released by calling theabandon()method (preferred, as it is accurately defined when the release happens), or when the object reference count drops to 0. The latter way is implicitly used when an API client crashes, however the discovery that there was a crash can take rather long, depending on the platform (COM needs 6 minutes). So better don't rely on the crash behavior too much. Interface ID: {20479EAF-D8ED-44CF-85AC-C83A26C95A4D}


Field Summary
 
Fields inherited from class org.virtualbox_6_0.IUnknown
obj, objMgr, port
 
Constructor Summary
IToken(java.lang.String wrapped, org.virtualbox_6_0.ObjectRefManager objMgr, org.virtualbox_6_0.jaxws.VboxPortType port)
           
 
Method Summary
 void abandon()
          Releases this token.
 void dummy()
          Purely a NOOP.
static IToken queryInterface(IUnknown obj)
           
 
Methods inherited from class org.virtualbox_6_0.IUnknown
getObjMgr, getRemoteWSPort, getWrapped, releaseRemote
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IToken

public IToken(java.lang.String wrapped,
              org.virtualbox_6_0.ObjectRefManager objMgr,
              org.virtualbox_6_0.jaxws.VboxPortType port)
Method Detail

queryInterface

public static IToken queryInterface(IUnknown obj)

abandon

public void abandon()
Releases this token. Cannot be undone in any way, and makes the token object unusable (even thedummy()method will return an error), ready for releasing. It is a more defined way than just letting the reference count drop to 0, because the latter (depending on the platform) can trigger asynchronous cleanup activity.


dummy

public void dummy()
Purely a NOOP. Useful when using proxy type API bindings (e.g. the webservice) which manage objects on behalf of the actual client, using an object reference expiration time based garbage collector.