Interface ISessionStatistics

All Known Subinterfaces:
ISessionTransMgr
All Known Implementing Classes:
NonUIClient, SessionID, SessionTransMgr

public interface ISessionStatistics
Interface used for the session statistics.
Author:
Christopher Mindus
  • Method Details

    • getSessionStatistics

      SessionStatistics getSessionStatistics()
      Gets the statistics instance of the session.
      Returns:
      The SessionStatistics instance.
    • setProperty

      default void setProperty(String name, String value)
      Sets a property for the session. When a reconnection is done, the previous statistics instance keeps track of the differences in properties between the last properties and the new ones.

      The default implementation delegates this call to {@link SessionStatistics#setProperty(String, String)}.

      Parameters:
      name - The property name.
      value - The value to set, non-null.
      Throws:
      NullPointerException - If either name or value is null.
    • getProperty

      default String getProperty(String name, boolean searchPrevious)
      Gets a property.
      Parameters:
      name - The property name.
      searchPrevious - Flag indicating previous connections should be included in locating the property. Searching is done backwards in history.

      The default implementation delegates this call to {@link SessionStatistics#getProperty(String, boolean)}.

      Returns:
      The value, or null if not found.
      Throws:
      NullPointerException - If name is null.
    • getProperties

      default Map<String,String> getProperties()
      Gets a copy of all properties of the last or current connection.

      The default implementation delegates this call to {@link SessionStatistics#getProperties()}.

      Returns:
      The copy of the properties, or null if none are present.
    • getLastConnectionTime

      default long getLastConnectionTime()
      Gets the last connection time.

      The default implementation delegates this call to {@link SessionStatistics#getLastConnectionTime()}.

      Returns:
      The time in milliseconds like System.currentTimeMillis(), or zero if not connected ever.