Class VSViewerTransactionProcessor

java.lang.Object
com.iizix.server.vsviewer.VSViewerTransactionProcessor
All Implemented Interfaces:
ITransactionCreator, ITransactionProcessor, ITransactionSender, IRootPropTransactionSender

public class VSViewerTransactionProcessor extends Object implements ITransactionProcessor, IRootPropTransactionSender
The TransactionProcessor contains all the code required to process transactions with the application being run for a single client reconnectable connection. If parallel client sessions is enabled or allowed, a single AppSessionGyro is shared.
Author:
Christopher Mindus
  • Method Details

    • getVSViewerParams

      public VSViewerParams getVSViewerParams()
      Gets the VS Viewer parameters.
    • onConnection

      public void onConnection(SessionTransMgr manager)
      Called when a connection is established.
      Specified by:
      onConnection in interface ITransactionProcessor
    • onPause

      public void onPause(SessionTransMgr manager)
      Called when a connection is paused.
      Specified by:
      onPause in interface ITransactionProcessor
    • onReconnected

      public void onReconnected(SessionTransMgr manager)
      Called when a connection is reconnected.
      Specified by:
      onReconnected in interface ITransactionProcessor
    • onDisposed

      public void onDisposed(SessionTransMgr manager)
      Called when a connection is disposed of.
      Specified by:
      onDisposed in interface ITransactionProcessor
    • processTransaction

      public void processTransaction(SessionTransMgr manager, ReadTransaction trans)
      Process incoming transaction that itself can consist of several sub-transactions.

      Management transaction are not present here, but GConstants.TRANS_NEXT_SERIAL that should call manager.onNextSerialTransaction();.

      Specified by:
      processTransaction in interface ITransactionProcessor
      Parameters:
      trans - The transaction to process.
    • createTransaction

      public SendTransaction createTransaction()
      Creates a transaction with the configured write cache.
      Specified by:
      createTransaction in interface ITransactionCreator
      Returns:
      The new Transaction instance.
    • sendTransaction

      public void sendTransaction(SendTransaction trans)
      Sends the transaction to the remote party.
      Specified by:
      sendTransaction in interface IRootPropTransactionSender
      Specified by:
      sendTransaction in interface ITransactionSender
      Parameters:
      trans - The transaction.
    • isConnected

      public boolean isConnected()
      Verifies that the connection is established and not paused, reconnecting, etc.
      Specified by:
      isConnected in interface IRootPropTransactionSender
      Returns:
      true if connected, false otherwise.
    • showMessageInClient

      public void showMessageInClient(int severity, String heading, String msg)
      Sends an error message to be displayed on the client immediately.
      Parameters:
      severity - The message severity (-1 none, 0=info, 1=warning, 2=error).
      heading - The heading text.
      msg - The message text.
    • closeClient

      public void closeClient(String msg)
      Sends an HTML message to be displayed on the client that will immediately close the connection.
      Parameters:
      msg - The message text in HTML.
    • getClientContextMenuReference

      public String getClientContextMenuReference(UIContextMenu contextMenu)
      Gets the reference to use for a context menu.
      Specified by:
      getClientContextMenuReference in interface IRootPropTransactionSender
      Parameters:
      contextMenu - The context menu.
      Returns:
      The reference to use, empty string for none (never null).