Class AbstractSessionKernel
java.lang.Object
com.inductiveautomation.ignition.common.lifecycle.AbstractLifecycle
com.inductiveautomation.perspective.gateway.session.AbstractSessionKernel
- All Implemented Interfaces:
SessionKernel
Base class for
SessionKernel
implementations. Encapsulates the basic properties and lifecycle of a session
kernel.-
Method Summary
Modifier and TypeMethodDescriptionOptional<com.inductiveautomation.ignition.common.gson.JsonElement>
claimToken
(String type, String token) Claim the given token associated with the given data type previously created by this session kernel.createToken
(String type, com.inductiveautomation.ignition.common.gson.JsonElement jsonElement) Create a new token associated with the given type and data for the this session kernel.com.google.common.eventbus.EventBus
long
long
protected void
protected void
queue()
void
touch()
Updates the last message time to the current time in nanosecondsMethods inherited from class com.inductiveautomation.ignition.common.lifecycle.AbstractLifecycle
isRunning, shutdown, startup
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.inductiveautomation.perspective.gateway.session.SessionKernel
getGson, shutdown, startup
-
Method Details
-
getSessionCollection
- Specified by:
getSessionCollection
in interfaceSessionKernel
- Returns:
- the
PerspectiveSessionCollection
which contains the session
-
getProjectName
- Specified by:
getProjectName
in interfaceSessionKernel
- Returns:
- the name of the project associated with the session
-
queue
- Specified by:
queue
in interfaceSessionKernel
- Returns:
- the
ExecutionQueue
used to run session tasks in serial
-
getLogger
- Specified by:
getLogger
in interfaceSessionKernel
- Returns:
- the
LoggerEx
associated with the session
-
getEventBus
public com.google.common.eventbus.EventBus getEventBus()- Specified by:
getEventBus
in interfaceSessionKernel
-
getEventManager
- Specified by:
getEventManager
in interfaceSessionKernel
- Returns:
- the
EventManager
associated with the session
-
getSessionId
- Specified by:
getSessionId
in interfaceSessionKernel
- Returns:
- the session's unique identifier
-
getStartupTime
public long getStartupTime()- Specified by:
getStartupTime
in interfaceSessionKernel
- Returns:
- the time in nanoseconds when the session kernel started (or 0 if the session kernel has not yet been started)
-
getLastMessageTime
public long getLastMessageTime()- Specified by:
getLastMessageTime
in interfaceSessionKernel
- Returns:
- the time in nanoseconds when the last message was received by the session containing this kernel
-
getSessionStats
- Specified by:
getSessionStats
in interfaceSessionKernel
-
touch
public void touch()Description copied from interface:SessionKernel
Updates the last message time to the current time in nanoseconds- Specified by:
touch
in interfaceSessionKernel
- See Also:
-
onStartup
protected void onStartup()- Specified by:
onStartup
in classAbstractLifecycle
-
onShutdown
protected void onShutdown()- Specified by:
onShutdown
in classAbstractLifecycle
-
createToken
public String createToken(String type, com.inductiveautomation.ignition.common.gson.JsonElement jsonElement) Description copied from interface:SessionKernel
Create a new token associated with the given type and data for the this session kernel. The token expires in 30 seconds.- Specified by:
createToken
in interfaceSessionKernel
- Returns:
- the new short-lived token
-
claimToken
public Optional<com.inductiveautomation.ignition.common.gson.JsonElement> claimToken(String type, String token) Description copied from interface:SessionKernel
Claim the given token associated with the given data type previously created by this session kernel.- Specified by:
claimToken
in interfaceSessionKernel
token
- the token to claim- Returns:
- an
Optional
containing theJsonElement
data associated with the given data type and token, or an empty Optional if no data exists for the given data type and token pair
-