public class WmiQueryHandler extends Object
WmiQueryHandler class.
| Constructor and Description |
|---|
WmiQueryHandler() |
| Modifier and Type | Method and Description |
|---|---|
static WmiQueryHandler |
createInstance()
Factory method to create an instance of this class.
|
int |
getComThreading()
Returns the current threading model for COM initialization, as OSHI is
required to match if an external program has COM initialized already.
|
int |
getWmiTimeout()
Gets the current WMI timeout.
|
protected void |
handleComException(com.sun.jna.platform.win32.COM.WbemcliUtil.WmiQuery<?> query,
com.sun.jna.platform.win32.COM.COMException ex)
handleComException.
|
boolean |
initCOM()
Initializes COM library and sets security to impersonate the local user
|
protected boolean |
initCOM(int coInitThreading)
initCOM.
|
boolean |
isSecurityInitialized()
Security only needs to be initialized once.
|
<T extends Enum<T>> |
queryWMI(com.sun.jna.platform.win32.COM.WbemcliUtil.WmiQuery<T> query)
Query WMI for values, with no timeout.
|
static void |
setInstanceClass(Class<? extends WmiQueryHandler> instanceClass)
Define a subclass to be instantiated by
createInstance(). |
void |
setWmiTimeout(int wmiTimeout)
Sets the WMI timeout.
|
int |
switchComThreading()
Switches the current threading model for COM initialization, as OSHI is
required to match if an external program has COM initialized already.
|
void |
unInitCOM()
UnInitializes COM library.
|
public static WmiQueryHandler createInstance()
setInstanceClass(Class) to define a sublcass which extends
WmiQueryHandler.setInstanceClass(Class)public static void setInstanceClass(Class<? extends WmiQueryHandler> instanceClass)
createInstance(). The class
must extend WmiQueryHandler.instanceClass - The class to instantiate with createInstance().public <T extends Enum<T>> com.sun.jna.platform.win32.COM.WbemcliUtil.WmiResult<T> queryWMI(com.sun.jna.platform.win32.COM.WbemcliUtil.WmiQuery<T> query)
T - WMI queries use an Enum to identify the fields to query, and use
the enum values as keys to retrieve the results.query - A WmiQuery object encapsulating the namespace, class, and
propertiesprotected void handleComException(com.sun.jna.platform.win32.COM.WbemcliUtil.WmiQuery<?> query,
com.sun.jna.platform.win32.COM.COMException ex)
handleComException.
query - a WbemcliUtil.WmiQuery
object.ex - a COMException object.public boolean initCOM()
protected boolean initCOM(int coInitThreading)
initCOM.
coInitThreading - a int.public void unInitCOM()
public int getComThreading()
public int switchComThreading()
public boolean isSecurityInitialized()
public int getWmiTimeout()
public void setWmiTimeout(int wmiTimeout)
wmiTimeout - The wmiTimeout to set, in milliseconds. To disable timeouts, set
timeout as -1 (infinite).Copyright © 2020. All rights reserved.