Interface SessionKernel
-
- All Known Implementing Classes:
AbstractSession,AbstractSessionKernel,PerspectiveDesignSession,PerspectiveProjectSession,SecuredPerspectiveProjectSession,SessionKernelWrapper
public interface SessionKernelThe nucleus of a Perspective Session. Instances are meant to be fixed and reused per-session. Useful for sharing between session proxies.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Deprecated Methods Modifier and Type Method Description java.util.Optional<com.inductiveautomation.ignition.common.gson.JsonElement>claimToken(java.lang.String type, java.lang.String token)Claim the given token associated with the given data type previously created by this session kernel.java.lang.StringcreateToken(java.lang.String type, com.inductiveautomation.ignition.common.gson.JsonElement data)Create a new token associated with the given type and data for the this session kernel.com.google.common.eventbus.EventBusgetEventBus()Deprecated.Replaced by getEventManager.EventManagergetEventManager()default com.inductiveautomation.ignition.common.gson.GsongetGson()longgetLastMessageTime()LoggerExgetLogger()java.lang.StringgetProjectName()PerspectiveSessionCollectiongetSessionCollection()java.util.UUIDgetSessionId()SessionStatsgetSessionStats()longgetStartupTime()ExecutionQueuequeue()voidshutdown()Shuts down the session kernelvoidstartup()Starts up the session kernelvoidtouch()Updates the last message time to the current time in nanoseconds
-
-
-
Method Detail
-
getSessionCollection
PerspectiveSessionCollection getSessionCollection()
- Returns:
- the
PerspectiveSessionCollectionwhich contains the session
-
getProjectName
java.lang.String getProjectName()
- Returns:
- the name of the project associated with the session
-
getGson
default com.inductiveautomation.ignition.common.gson.Gson getGson()
- Returns:
- a
Gsoninstance for json serialization / de-serialization
-
queue
ExecutionQueue queue()
- Returns:
- the
ExecutionQueueused to run session tasks in serial
-
getEventBus
@Deprecated com.google.common.eventbus.EventBus getEventBus()
Deprecated.Replaced by getEventManager. To be removed in 8.2.0
-
getEventManager
EventManager getEventManager()
- Returns:
- the
EventManagerassociated with the session
-
getSessionId
java.util.UUID getSessionId()
- Returns:
- the session's unique identifier
-
startup
void startup()
Starts up the session kernel- Throws:
java.lang.IllegalStateException- if the session kernel has already been started or shutdown
-
shutdown
void shutdown()
Shuts down the session kernel- Throws:
java.lang.IllegalStateException- if the session has not been started or if it has already been shut down
-
getStartupTime
long getStartupTime()
- Returns:
- the time in nanoseconds when the session kernel started (or 0 if the session kernel has not yet been started)
-
getLastMessageTime
long getLastMessageTime()
- Returns:
- the time in nanoseconds when the last message was received by the session containing this kernel
-
getSessionStats
SessionStats getSessionStats()
-
touch
void touch()
Updates the last message time to the current time in nanoseconds- See Also:
System.nanoTime()
-
createToken
java.lang.String createToken(java.lang.String type, com.inductiveautomation.ignition.common.gson.JsonElement data)Create a new token associated with the given type and data for the this session kernel. The token expires in 30 seconds.- Returns:
- the new short-lived token
-
claimToken
java.util.Optional<com.inductiveautomation.ignition.common.gson.JsonElement> claimToken(java.lang.String type, java.lang.String token)Claim the given token associated with the given data type previously created by this session kernel.- Parameters:
token- the token to claim- Returns:
- an
Optionalcontaining theJsonElementdata associated with the given data type and token, or an empty Optional if no data exists for the given data type and token pair
-
-