Class Factory
- java.lang.Object
-
- com.sun.jna.platform.win32.COM.util.ObjectFactory
-
- com.sun.jna.platform.win32.COM.util.Factory
-
public class Factory extends ObjectFactory
Factory is intended as a simpler to use version of ObjectFactory.The Factory abstracts the necessity to handle COM threading by introducing a dispatching thread, that is correctly COM initialized and is used to handle all outgoing calls.
NOTE: Remember to call factory.getComThread().terminate() at some appropriate point, when the factory is not used anymore
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) IDispatchCallbackcreateDispatchCallback(java.lang.Class<?> comEventCallbackInterface, IComEventCallbackListener comEventCallbackListener)<T> TcreateObject(java.lang.Class<T> comInterface)Creates a new COM object (CoCreateInstance) for the given progId and returns a ProxyObject for the given interface.<T> TcreateProxy(java.lang.Class<T> comInterface, IDispatch dispatch)Creates a ProxyObject for the given interface and IDispatch pointer.(package private) Guid.GUIDdiscoverClsId(ComObject annotation)<T> TfetchObject(java.lang.Class<T> comInterface)Gets and existing COM object (GetActiveObject) for the given progId and returns a ProxyObject for the given interface.ComThreadgetComThread()IRunningObjectTablegetRunningObjectTable()CoInitialize must be called be fore this method.-
Methods inherited from class com.sun.jna.platform.win32.COM.util.ObjectFactory
disposeAll, finalize, getLCID, register, setLCID, unregister
-
-
-
-
Constructor Detail
-
Factory
public Factory()
-
Factory
public Factory(ComThread comThread)
-
-
Method Detail
-
createProxy
public <T> T createProxy(java.lang.Class<T> comInterface, IDispatch dispatch)Description copied from class:ObjectFactoryCreates a ProxyObject for the given interface and IDispatch pointer.- Overrides:
createProxyin classObjectFactory
-
discoverClsId
Guid.GUID discoverClsId(ComObject annotation)
- Overrides:
discoverClsIdin classObjectFactory
-
fetchObject
public <T> T fetchObject(java.lang.Class<T> comInterface) throws COMExceptionDescription copied from class:ObjectFactoryGets and existing COM object (GetActiveObject) for the given progId and returns a ProxyObject for the given interface.- Overrides:
fetchObjectin classObjectFactory- Throws:
COMException
-
createObject
public <T> T createObject(java.lang.Class<T> comInterface)
Description copied from class:ObjectFactoryCreates a new COM object (CoCreateInstance) for the given progId and returns a ProxyObject for the given interface.- Overrides:
createObjectin classObjectFactory
-
createDispatchCallback
IDispatchCallback createDispatchCallback(java.lang.Class<?> comEventCallbackInterface, IComEventCallbackListener comEventCallbackListener)
- Overrides:
createDispatchCallbackin classObjectFactory
-
getRunningObjectTable
public IRunningObjectTable getRunningObjectTable()
Description copied from class:ObjectFactoryCoInitialize must be called be fore this method. Either explicitly or implicitly via other methods.- Overrides:
getRunningObjectTablein classObjectFactory- Returns:
- running object table
-
getComThread
public ComThread getComThread()
-
-