Class Factory
java.lang.Object
com.sun.jna.platform.win32.COM.util.ObjectFactory
com.sun.jna.platform.win32.COM.util.Factory
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
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) IDispatchCallback
createDispatchCallback
(Class<?> comEventCallbackInterface, IComEventCallbackListener comEventCallbackListener) <T> T
createObject
(Class<T> comInterface) Creates a new COM object (CoCreateInstance) for the given progId and returns a ProxyObject for the given interface.<T> T
createProxy
(Class<T> comInterface, IDispatch dispatch) Creates a ProxyObject for the given interface and IDispatch pointer.(package private) Guid.GUID
discoverClsId
(ComObject annotation) <T> T
fetchObject
(Class<T> comInterface) Gets and existing COM object (GetActiveObject) for the given progId and returns a ProxyObject for the given interface.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 Details
-
Factory
public Factory() -
Factory
-
-
Method Details
-
createProxy
Description copied from class:ObjectFactory
Creates a ProxyObject for the given interface and IDispatch pointer.- Overrides:
createProxy
in classObjectFactory
-
discoverClsId
- Overrides:
discoverClsId
in classObjectFactory
-
fetchObject
Description copied from class:ObjectFactory
Gets and existing COM object (GetActiveObject) for the given progId and returns a ProxyObject for the given interface.- Overrides:
fetchObject
in classObjectFactory
- Throws:
COMException
-
createObject
Description copied from class:ObjectFactory
Creates a new COM object (CoCreateInstance) for the given progId and returns a ProxyObject for the given interface.- Overrides:
createObject
in classObjectFactory
-
createDispatchCallback
IDispatchCallback createDispatchCallback(Class<?> comEventCallbackInterface, IComEventCallbackListener comEventCallbackListener) - Overrides:
createDispatchCallback
in classObjectFactory
-
getRunningObjectTable
Description copied from class:ObjectFactory
CoInitialize must be called be fore this method. Either explicitly or implicitly via other methods.- Overrides:
getRunningObjectTable
in classObjectFactory
- Returns:
- running object table
-
getComThread
-