Class ContextAwareRemoteQuery<RESULT_TYPE>
java.lang.Object
com.illumon.iris.db.tables.remotequery.ContextAwareRemoteQuery<RESULT_TYPE>
- All Implemented Interfaces:
RemoteQuery<RESULT_TYPE>
,Serializable
- Direct Known Subclasses:
AllUsersGroupsStrategiesQuery
,ConsoleAttachmentQuery
,ConsoleDetachQuery
,ConstructSnapshotQuery
,CreateSessionQuery
,CreateUserTableQuery
,CsvTestImportQuery
,CustomAction.FetchQuery
,DbAclEditorTableQuery
,DriverWrapperQuery
,EmbeddedDefinitionGetQuery
,EmbeddedFetchQuery
,FetchInputTableQuery
,FetchQuery
,GenerateComparableStatsFunction
,GenerateDBDateTimeStatsFunction
,GenerateNumericalStatsFunction
,GetAllTableNames
,GetAllUsersQuery
,GetAttributesQuery
,GetDriverDisplayInfoQuery
,GetPermissionDataQuery
,GroupsForUserQuery
,GroupStrategyExistsQuery
,ImportHelperSetupQuery
,InputTableSnapshotter
,LiveWidgetUtils.ACLApplier
,MergeImportPersistentQuery
,MergeTables
,OneEditableQuery
,PandasTableFetchQuery
,PerformanceQueries.PerformanceOverview
,PerformanceQueries.PersistentQueryStatusMonitor
,PresentDelegateTokensQuery
,PythonEvalQuery
,PythonFetchQuery
,PythonPushClassQuery
,PythonRemoteQuery
,RemoteInputTableDescriptor.GetQuery
,RemoteInputTableDescriptor.ToServer.SetQuery
,RemoteMethodAsync
,RemoteScriptCommandQuery
,RemoteTableQuery
,RemoveSessionQuery
,RetrieveOneAclQuery
,RetrieveOneSystemAclQuery
,RetrieveSystemUserAclQuery
,RevertHelperSetupQuery
,SchemaDeployQuery
,ScriptSetupQuery
,SerializeRemoteQuery
,SetupRemoteSessionSource.CloseScriptLoaderClient
,SetupRemoteSessionSource.SetupControllerScriptPathLoader
,SetupRemoteSessionSource.SetupRemoteScriptLoader
,SnapshotQuery
,StrategyForAccountQuery
,SwappableTableOneClickAbstract.SwappableTablePreemptiveUpdatesQuery
,TableApplyQuery
,TableMapClient.TableMapGet
,TableMapClient.TableMapGetKeys
,TableMapClient.TableMapGetMerged
,TableMapClient.TableMapMerge
,TableMapUtils.MergeGet
,TableMapUtils.PresubscribeGet
,TelemetryHelperSetupQuery
,TelemetryQueries.TelemetrySummary
,UpdateWorkspaceDataTableQuery
,WebClientDataSetupQuery
,XmlTestImportQuery
public abstract class ContextAwareRemoteQuery<RESULT_TYPE> extends Object implements RemoteQuery<RESULT_TYPE>
Enables queries that require additional context, beyond a Database reference.
After deserializing a ContextAwareRemoteQuery, the RemoteQueryProcessor calls
initializeContext(com.illumon.iris.db.tables.remote.ExportedObjectClient, com.fishlib.auth.UserContext, com.illumon.iris.db.tables.remotequery.RemoteQueryProcessor, com.fishlib.io.logger.Logger)
on the query
before calling the RemoteQuery.execute(Database)
method. Within the execute method, the query can then retrieve
the context information about the client executing the query.- See Also:
- Serialized Form
-
Constructor Summary
Constructors Constructor Description ContextAwareRemoteQuery()
-
Method Summary
Modifier and Type Method Description ExportedObjectClient
getClient()
Returns the ExportedObjectClient that corresponds to the client executing this query.com.fishlib.io.logger.Logger
getLog()
Returns a suitable log for use within the query.RemoteQueryProcessor
getRemoteQueryProcessor()
Returns the RemoteQueryProcessor that is executing this query.com.fishlib.auth.UserContext
getUserContext()
Returns the UserContext that corresponds to the client executing this query.void
initializeContext(ExportedObjectClient client, com.fishlib.auth.UserContext userContext, RemoteQueryProcessor remoteQueryProcessor, com.fishlib.io.logger.Logger log)
Initializes this query's context.void
initializeContext(ContextAwareRemoteQuery<?> contextAwareRemoteQuery)
Initializes this query's context from another query.
-
Constructor Details
-
ContextAwareRemoteQuery
public ContextAwareRemoteQuery()
-
-
Method Details
-
initializeContext
public void initializeContext(ExportedObjectClient client, com.fishlib.auth.UserContext userContext, RemoteQueryProcessor remoteQueryProcessor, com.fishlib.io.logger.Logger log)Initializes this query's context.- Parameters:
client
- the ExportedObjectClient for the client requesting query executionuserContext
- the UserContext of the client requesting query executionremoteQueryProcessor
- the RemoteQueryProcessor executing this querylog
- the Logger object for this processor
-
initializeContext
Initializes this query's context from another query. This should only be called by the Deephaven system.- Parameters:
contextAwareRemoteQuery
- another ContextAwareRemoteQuery to copy the context from
-
getClient
Returns the ExportedObjectClient that corresponds to the client executing this query.- Returns:
- the ExportedObjectClient that corresponds to the client executing this query.
-
getUserContext
public com.fishlib.auth.UserContext getUserContext()Returns the UserContext that corresponds to the client executing this query.- Returns:
- the UserContext that corresponds to the client executing this query.
-
getRemoteQueryProcessor
Returns the RemoteQueryProcessor that is executing this query.- Returns:
- the RemoteQueryProcessor that is executing this query.
-
getLog
public com.fishlib.io.logger.Logger getLog()Returns a suitable log for use within the query.- Returns:
- a suitable log for use within the query.
-