Class PersistentQueryState

java.lang.Object
com.illumon.iris.controller.PersistentQueryState
All Implemented Interfaces:
com.fishlib.base.log.LogOutputAppendable, StatusCallback, Serializable, Cloneable

public class PersistentQueryState extends Object implements Serializable, Cloneable, StatusCallback, com.fishlib.base.log.LogOutputAppendable
An Object describing the current state of a Persistent Query.
See Also:
  • Field Details

  • Constructor Details

    • PersistentQueryState

      public PersistentQueryState(long configurationSerial, long configurationVersion)
  • Method Details

    • setReplicaSlot

      public void setReplicaSlot(int replicaSlot)
    • getReplicaSlot

      public int getReplicaSlot()
    • getNumFailures

      public int getNumFailures()
    • setNumFailures

      public void setNumFailures(int numFailures)
    • getLastFailureTimeMillis

      public long getLastFailureTimeMillis()
    • setLastFailureTimeMillis

      public void setLastFailureTimeMillis(long lastFailureTimeMillis)
    • incrementNumFailures

      public int incrementNumFailures()
    • resetFailures

      public void resetFailures()
    • shallowCopy

      public PersistentQueryState shallowCopy()
    • clone

      Overrides:
      clone in class Object
      Throws:
      CloneNotSupportedException
    • getConfigurationSerial

      public long getConfigurationSerial()
    • getConfigurationVersion

      public long getConfigurationVersion()
      Get the configuration version of the currently running query. Note that this can be different from the version of the current PersistentQueryConfiguration, given that a query can be changed without immediately restarting it. A difference in these values can be used to detect this situation.
      Returns:
      The currently running query version.
    • getStatus

      public PersistentQueryState.Status getStatus()
    • isRunningForRestart

      public boolean isRunningForRestart()
    • isRunningForAttachment

      public boolean isRunningForAttachment()
    • setStatus

      public void setStatus(PersistentQueryState.Status status)
    • getInitializationStartTime

      public Date getInitializationStartTime()
    • setInitializationStartTime

      public void setInitializationStartTime(Date initializationStartTime)
    • getInitializationCompleteTime

      public Date getInitializationCompleteTime()
    • setInitializationCompleteTime

      public void setInitializationCompleteTime(Date initializationCompleteTime)
    • getShouldStopTime

      public Date getShouldStopTime()
    • setShouldStopTime

      public void setShouldStopTime(Date shouldStopTime)
    • getLastUpdateTime

      public Date getLastUpdateTime()
    • setLastUpdateTime

      public void setLastUpdateTime(Date lastUpdateTime)
    • getWorkerHost

      public String getWorkerHost()
    • getDispatcherHost

      public String getDispatcherHost()
    • setDispatcherHost

      public void setDispatcherHost(String dispatcherHost)
    • getDispatcherPort

      public int getDispatcherPort()
    • setDispatcherPort

      public void setDispatcherPort(int port)
    • getWorkerName

      public String getWorkerName()
    • getProcessInfoId

      public String getProcessInfoId()
    • setProcessInfoId

      public void setProcessInfoId(String processInfoId)
    • getTypeSpecificStateJson

      public String getTypeSpecificStateJson()
    • setTypeSpecificStateJson

      public void setTypeSpecificStateJson(String typeSpecificStateJson)
    • getTableGroups

      public Map<String,String[]> getTableGroups()
    • hasTableAcls

      public boolean hasTableAcls()
    • getTableGroups

      public String[] getTableGroups(String tableName)
    • setTableGroups

      public void setTableGroups(Map<String,String[]> tableGroups)
    • getScopeNamesAndTypes

      public Map<String,ExportedObjectInfo> getScopeNamesAndTypes()
    • setScopeNamesAndTypes

      public void setScopeNamesAndTypes(Map<String,ExportedObjectInfo> scopeNamesAndTypes)
    • getWorkerPort

      public int getWorkerPort()
    • getWorkerPortForLog

      public int getWorkerPortForLog()
    • getEnvoyPrefix

      public String getEnvoyPrefix()
    • getWebsocketPort

      public int getWebsocketPort()
    • getExceptionDetails

      public ExceptionDetails getExceptionDetails()
    • setExceptionDetails

      public void setExceptionDetails(Throwable t)
    • setExceptionDetails

      public void setExceptionDetails(@NotNull ExceptionDetails details)
    • getLastAuthenticatedUser

      public String getLastAuthenticatedUser()
    • setLastAuthenticatedUser

      public void setLastAuthenticatedUser(String lastAuthenticatedUser)
    • getLastEffectiveUser

      public String getLastEffectiveUser()
    • setLastEffectiveUser

      public void setLastEffectiveUser(String lastEffectiveUser)
    • setScriptLoaderStateJson

      public void setScriptLoaderStateJson(String stateJson)
    • getScriptLoaderStateJson

      public String getScriptLoaderStateJson()
    • hasProgress

      public boolean hasProgress()
    • getProgressMessage

      public String getProgressMessage()
    • getProgressPercentage

      public int getProgressPercentage()
    • setConnectionDetails

      public void setConnectionDetails(QueryProcessorConnectionDetails details)
    • getConnectionDetails

      public QueryProcessorConnectionDetails getConnectionDetails()
    • getEngineVersion

      public String getEngineVersion()
    • setEngineVersion

      public void setEngineVersion(String engineVerion)
    • getStatusDetails

      public String getStatusDetails()
    • setStatusDetails

      public void setStatusDetails(String statusDetails)
    • update

      public void update(int progress, Supplier<String> statusSupplier)
      Description copied from interface: StatusCallback
      Update the progress % and status message.
      Specified by:
      update in interface StatusCallback
      Parameters:
      progress - percent complete (0-100)
      statusSupplier - optional message supplier
    • getValue

      public int getValue()
      Description copied from interface: StatusCallback
      get the current value of the progress object.
      Specified by:
      getValue in interface StatusCallback
      Returns:
      the % complete of the topmost ProcessStatus - a number between 1 and 100
    • append

      public com.fishlib.base.log.LogOutput append(@NotNull com.fishlib.base.log.LogOutput logOutput)
      Specified by:
      append in interface com.fishlib.base.log.LogOutputAppendable
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • clearProtocols

      public boolean clearProtocols()
      Clear any protocols to indicate the query cannot be connected to.
      Returns:
      true if details were cleared, false if nothing changed.