Class QueryManager
- java.lang.Object
-
- com.inductiveautomation.factorypmi.application.gateway.QueryManager
-
- All Implemented Interfaces:
GatewayConstants
public class QueryManager extends java.lang.Object implements GatewayConstants
-
-
Field Summary
-
Fields inherited from interface com.inductiveautomation.ignition.common.gateway.GatewayConstants
_DATE_FORMATTER, ARG_MESSAGETYPE, ARG_MODULEID, ATR_INDEX, ATR_LENGTH, ATR_NAME, ATR_TYPE, booleanNull, byteNull, charNull, CONNECT_TIMEOUT, DATE_FORMAT_STRING, doubleNull, ELM_ARG, ELM_COLLIST, ELM_COLUMN, ELM_COMPRESSEDROWS, ELM_DATA, ELM_ERRORCODE, ELM_ERRORMESSAGE, ELM_EXCLS, ELM_EXMSG, ELM_EXOVERRIDES_TOSTRING, ELM_EXSTRING, ELM_MBODY, ELM_MESSAGE, ELM_MTYPE, ELM_NOTIFICATION, ELM_NOTIFICATIONS, ELM_RESPONSE, ELM_ROW, ELM_ROWS, ELM_SERIALIZED_RESPONSE, ELM_SETCOOKIE, ELM_STACKTRACE, ELM_STELM, ELM_STELM_DECL, ELM_STELM_FILE, ELM_STELM_LINE, ELM_STELM_METH, ERRNO_ASYNC_CALL, ERRNO_ASYNC_CALL_CANCELED, ERRNO_ASYNC_CALL_FAILED, ERRNO_BROWSE_ERROR, ERRNO_COMM_ERROR, ERRNO_CONNECTION_MODE, ERRNO_DBCONNECTION_NAMING, ERRNO_DBCONNECTION_SQL, ERRNO_HISTORY_QUERY_ERROR, ERRNO_INSECURE_REDIRECT, ERRNO_INTERNAL, ERRNO_INVALIDARGS, ERRNO_INVOCATION_EXCEPTION, ERRNO_LICENE_RESTRICTED, ERRNO_LOGIN_CANCELLED, ERRNO_LOGIN_FAILED, ERRNO_LOGIN_FAILED_LICENSING, ERRNO_NAMING, ERRNO_NO_SESSION, ERRNO_NON_ACTIVE_NODE, ERRNO_NON_MASTER_NODE, ERRNO_NOT_AUTHORIZED, ERRNO_NOTIMP, ERRNO_OK, ERRNO_PARSE, ERRNO_PASSWORD_EXPIRED, ERRNO_PONG, ERRNO_POST_ERROR, ERRNO_PROJECT_PULL, ERRNO_PROJECT_PUSH, ERRNO_RUNTIME_EXPIRED, ERRNO_SQL, ERRNO_SQLTAGS_PROVIDER_DISABLED, ERRNO_SQLTAGS_PROVIDER_FAULTED, ERRNO_SQLTAGS_PROVIDER_LOADING, ERRNO_SQLTAGS_PROVIDER_MISSING, ERRNO_SQLTAGS_SEND_TAGS, ERRNO_SSL_REQUIRED, ERRNO_TIMEOUT, ERRNO_TRIAL_EXPIRED, ERRNO_VERSION_INCOMPATABILITY, ERROR_MESSAGE_TYPE, floatNull, intNull, longNull, MODE_DISCONNECTED, MODE_FULL, MODE_READ_ONLY, MTYPE_COPY_IMAGE, MTYPE_CREATE_IMAGE_FOLDER, MTYPE_DBTEST, MTYPE_GET_NEW_RESOURCEID, MTYPE_INVALID, MTYPE_INVOKE_FUNCTION, MTYPE_LIST_AUTHS, MTYPE_LIST_COLS, MTYPE_LIST_DBS, MTYPE_LIST_IDPS, MTYPE_LIST_IMAGES, MTYPE_LIST_MODULES, MTYPE_LIST_ROLES, MTYPE_LIST_SECURITY_LEVELS, MTYPE_LIST_SQLTAG_PROVIDERS, MTYPE_LIST_TABLES, MTYPE_LIST_ZONES, MTYPE_PING, MTYPE_PLATFORM_EDITION, MTYPE_PUBLIC_PING, MTYPE_REMOVE_IMAGE, MTYPE_RENAME_IMAGE_FOLDER, MTYPE_REPORT_ERROR, MTYPE_SEND_EMAIL, MTYPE_SQLTAGS_ADD_SCANCLASS, MTYPE_SQLTAGS_ADD_TAGS, MTYPE_SQLTAGS_EDIT_SCANCLASS, MTYPE_SQLTAGS_EDIT_TAGS, MTYPE_SQLTAGS_ERROR_LIST, MTYPE_SQLTAGS_FSQL_BROWSE, MTYPE_SQLTAGS_FSQL_LIST, MTYPE_SQLTAGS_GET_SCANCLASS, MTYPE_SQLTAGS_LIST, MTYPE_SQLTAGS_META_LIST, MTYPE_SQLTAGS_POLL, MTYPE_SQLTAGS_REMOVE_SCANCLASS, MTYPE_SQLTAGS_REMOVE_TAGS, MTYPE_SQLTAGS_WRITE, MTYPE_STATUS_POLL, MTYPE_UPLOAD_IMAGE, MTYPE_VERSION_CHECK, OPC_BROWSE_TIMEOUT, PROTECT_DIALOG_TYPE, shortNull, SOCKET_TIMEOUT, WARNING_MESSAGE_TYPE
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static void
createInstance(int numWorkers, int numUpdaters)
int
getActiveThreads()
static QueryManager
getInstance()
int
getQueryCount()
void
printReport()
java.lang.Object
registerQuery(IQuery query, IQueryResponseListener listener, java.lang.Class targetType, int updateRate, boolean runOnce, boolean notifyLoading)
Registers a new query to be run, either periodically or once.void
runUpdateQuery(IQueryResponseListener adapter, IQuery query)
void
runUpdateQuery(IQueryResponseListener adapter, java.lang.String query, java.lang.String datasource)
void
setPaused(boolean paused)
void
stop()
void
unregisterQuery(java.lang.Object key)
-
-
-
Method Detail
-
getInstance
public static QueryManager getInstance()
-
createInstance
public static void createInstance(int numWorkers, int numUpdaters)
-
stop
public void stop()
-
getActiveThreads
public int getActiveThreads()
-
getQueryCount
public int getQueryCount()
-
printReport
public void printReport()
-
runUpdateQuery
public void runUpdateQuery(IQueryResponseListener adapter, java.lang.String query, java.lang.String datasource)
-
runUpdateQuery
public void runUpdateQuery(IQueryResponseListener adapter, IQuery query)
-
registerQuery
public java.lang.Object registerQuery(IQuery query, IQueryResponseListener listener, java.lang.Class targetType, int updateRate, boolean runOnce, boolean notifyLoading)
Registers a new query to be run, either periodically or once. This "query" is an implementation of IQuery - anything that can retrieve a Dataset from the gateway.- Parameters:
targetType
- The data type that will be pushed into the query response listener. Use Dataset.class to leave the IQuery's resulting dataset untouched. Use a scalar type to coerce the 1st value.updateRate
- The rate (actually a delay) at which to run the query.runOnce
- If true, the query will only be run once, regardless of the update ratenotifyLoading
- Controls whether or not the response listener will be notified when this query is running.
-
unregisterQuery
public void unregisterQuery(java.lang.Object key)
-
setPaused
public void setPaused(boolean paused)
-
-