Class ServerInfo

  • java.lang.Object
    • com.tibco.tibjms.admin.ServerInfo

  • public class ServerInfo
    extends java.lang.Object
    This class represents configuration parameters for a TIBCO Enterprise Message Service server. Changes made to this object will not take effect on the server until the changes are saved with a call to TibjmsAdmin.updateServer().
    • Field Detail

      • SERVER_STANDBY

        @Deprecated
        public static final int SERVER_STANDBY
        Deprecated.
        Internal status code that will never be returned.
        See Also:
        Constant Field Values
      • SERVER_FT_STANDBY

        public static final int SERVER_FT_STANDBY
        The server is currently the fault tolerant standby.
        Since:
        EMS 4.2
        See Also:
        Constant Field Values
      • SERVER_ACTIVE

        public static final int SERVER_ACTIVE
        The server is currently active.
        See Also:
        Constant Field Values
      • DETAIL_CHANNELS

        @Deprecated
        public static final int DETAIL_CHANNELS
        Deprecated.
        As of release 8.3
        See Also:
        Constant Field Values
      • CLIENT_TRACE_TARGET_NONE

        public static final short CLIENT_TRACE_TARGET_NONE
        See Also:
        Constant Field Values
      • CLIENT_TRACE_TARGET_STDOUT

        public static final short CLIENT_TRACE_TARGET_STDOUT
        See Also:
        Constant Field Values
      • CLIENT_TRACE_TARGET_STDERR

        public static final short CLIENT_TRACE_TARGET_STDERR
        See Also:
        Constant Field Values
      • CLIENT_TRACE_FILTER_NONE

        public static final short CLIENT_TRACE_FILTER_NONE
        See Also:
        Constant Field Values
      • CLIENT_TRACE_FILTER_USER

        public static final short CLIENT_TRACE_FILTER_USER
        See Also:
        Constant Field Values
      • CLIENT_TRACE_FILTER_CLIENTID

        public static final short CLIENT_TRACE_FILTER_CLIENTID
        See Also:
        Constant Field Values
      • CLIENT_TRACE_FILTER_CONNID

        public static final short CLIENT_TRACE_FILTER_CONNID
        See Also:
        Constant Field Values
      • USER_AUTH_LOCATION_LDAP

        public static final int USER_AUTH_LOCATION_LDAP
        See Also:
        Constant Field Values
      • USER_AUTH_LOCATION_SYSTEM

        public static final int USER_AUTH_LOCATION_SYSTEM
        See Also:
        Constant Field Values
      • USER_AUTH_LOCATION_LOCAL

        public static final int USER_AUTH_LOCATION_LOCAL
        See Also:
        Constant Field Values
      • USER_AUTH_LOCATION_JAAS

        public static final int USER_AUTH_LOCATION_JAAS
        See Also:
        Constant Field Values
      • USER_AUTH_LOCATION_OAUTH

        public static final int USER_AUTH_LOCATION_OAUTH
        See Also:
        Constant Field Values
      • CONFIGURATION_MODE_CONF

        public static final int CONFIGURATION_MODE_CONF
        See Also:
        Constant Field Values
      • FTLDR_ROLE_UNKNOWN

        public static final int FTLDR_ROLE_UNKNOWN
        This value indicates that the role of the site where the server is running is not known.
        See Also:
        Constant Field Values
      • FTLDR_ROLE_PRIMARY_SITE

        public static final int FTLDR_ROLE_PRIMARY_SITE
        This value indicates that the server is running on the primary site.
        See Also:
        Constant Field Values
      • FTLDR_ROLE_DR_SITE

        public static final int FTLDR_ROLE_DR_SITE
        This value indicates that the server is running on the DR site.
        See Also:
        Constant Field Values
      • FTLDR_ROLE_STANDALONE

        public static final int FTLDR_ROLE_STANDALONE
        This value indicates that the server is running on a standalone site.
        See Also:
        Constant Field Values
      • FTLDR_STATE_UNKNOWN

        public static final int FTLDR_STATE_UNKNOWN
        This value indicates that the sync state of the DR site is not known.
        See Also:
        Constant Field Values
      • FTLDR_STATE_OUTOFSYNC

        public static final int FTLDR_STATE_OUTOFSYNC
        This value indicates that the DR site is out of sync with the primary site.
        See Also:
        Constant Field Values
      • FTLDR_STATE_INSYNC

        public static final int FTLDR_STATE_INSYNC
        This value indicates that the DR site is in sync with the primary site.
        See Also:
        Constant Field Values
      • CONFIGURATION_MODE_XML

        @Deprecated
        public static final int CONFIGURATION_MODE_XML
        Deprecated.
        The XML Configuration mode has been deprecated. Use CONFIGURATION_MODE_JSON instead.
        See Also:
        Constant Field Values
      • CONFIGURATION_MODE_JSON

        public static final int CONFIGURATION_MODE_JSON
        See Also:
        Constant Field Values
    • Method Detail

      • getConfigFile

        public java.lang.String getConfigFile()
        Get the name and location of the main configuration file.
        Returns:
        the name (including full path) of the main configuration file.
      • getUsersFile

        public java.lang.String getUsersFile()
        Get the name and location of the configuration file containing the definitions of users.
        Returns:
        the name (including full path) of the users file.
      • getGroupsFile

        public java.lang.String getGroupsFile()
        Get the name and location of the configuration file containing the definitions of groups.
        Returns:
        the name (including full path) of the groups file.
      • getTopicsFile

        public java.lang.String getTopicsFile()
        Get the name and location of the configuration file containing the definitions of topics.
        Returns:
        the name (including full path) of the topics file.
      • getQueuesFile

        public java.lang.String getQueuesFile()
        Get the name and location of the configuration file containing the definitions of queues.
        Returns:
        the name (including full path) of the queues file.
      • getACLsFile

        public java.lang.String getACLsFile()
        Get the name and location of the configuration file containing the definitions of acls.
        Returns:
        the name (including full path) of the acls file.
      • getFactoriesFile

        public java.lang.String getFactoriesFile()
        Get the name and location of the configuration file containing the definitions of connection factories.
        Returns:
        the name (including full path) of the factories file.
      • getRoutesFile

        public java.lang.String getRoutesFile()
        Get the name and location of the configuration file containing the definitions of routes.
        Returns:
        the name (including full path) of the routes file.
      • getBridgesFile

        public java.lang.String getBridgesFile()
        Get the name and location of the configuration file containing the definitions of bridges.
        Returns:
        the name (including full path) of the bridges file.
      • getTransportsFile

        public java.lang.String getTransportsFile()
        Get the name and location of the configuration file containing the definitions of external transports.
        Returns:
        the name (including full path) of the transports file.
      • getTibrvcmFile

        public java.lang.String getTibrvcmFile()
        Get the name and location of the configuration file containing the definitions of pre-configured TIBCO Rendezvous Certified Messaging listeners.
        Returns:
        the name (including full path) of the tibrvcm file.
      • getDurablesFile

        public java.lang.String getDurablesFile()
        Get the name and location of the configuration file containing the definitions of pre-configured durable subscribers.
        Returns:
        the name (including full path) of the durables file.
      • getChannelsFile

        @Deprecated
        public java.lang.String getChannelsFile()
        Deprecated.
        As of release 8.3
        Get the name and location of the configuration file containing the definitions of pre-configured multicast channels.
        Returns:
        the name (including full path) of the channels file.
      • getStoresFile

        public java.lang.String getStoresFile()
        Get the name and location of the configuration file containing the definitions of pre-configured stores.
        Returns:
        the name (including full path) of the stores file.
      • getRouteRecoverInterval

        public long getRouteRecoverInterval()
        Get the route recover interval in milliseconds.
        Returns:
        the route recover interval in milliseconds.
        Since:
        EMS 4.2
      • getRouteRecoverCount

        public int getRouteRecoverCount()
        Get the route recover message count.
        Returns:
        the route recover message count.
        Since:
        EMS 4.3
      • getServerRateInterval

        public long getServerRateInterval()
        Get the server statistics rate interval in milliseconds.
        Returns:
        the server statistics rate interval in milliseconds.
      • getRateInterval

        public long getRateInterval()
        Get the statistics rate interval in milliseconds.
        Returns:
        the statistics rate interval in milliseconds.
      • getStatisticsCleanupInterval

        public long getStatisticsCleanupInterval()
        Get the statistics cleanup interval in milliseconds.
        Returns:
        the statistics cleanup interval in milliseconds.
      • isStatisticsEnabled

        public boolean isStatisticsEnabled()
        Indicates whether or not statistics are enabled.
        Returns:
        true if statistics are enabled, false otherwise.
      • getDetailedStatistics

        public int getDetailedStatistics()
        Get the detailed statistics flags.
        Returns:
        the detailed statistics flags.
      • getMaxStatisticsMemory

        public long getMaxStatisticsMemory()
        Get the maximum amount of memory that will be allocated to collecting statistics.
        Returns:
        the maximum statistics memory in bytes.
      • getMulticastStatisticsInterval

        @Deprecated
        public long getMulticastStatisticsInterval()
        Deprecated.
        As of release 8.3
        Get the multicast statistics interval in milliseconds.
        Returns:
        the multicast statistics interval in milliseconds.
      • getXADefaultTimeout

        public int getXADefaultTimeout()
        Get the default timeout for XA transactions in seconds.
        Returns:
        the default timeout for XA transactions in seconds.
        Since:
        EMS 6.3
      • setServerRateInterval

        public void setServerRateInterval​(long value)
                                   throws java.lang.IllegalArgumentException
        Set the server statistics rate interval. The value is rounded to nearest second. Serverwide statistics are always collected.
        Parameters:
        value - the interval rate in milliseconds, this value can not be set to less than 1 second.
        Throws:
        java.lang.IllegalArgumentException - if value is less than 1 second.
      • setRateInterval

        public void setRateInterval​(long value)
                             throws java.lang.IllegalArgumentException
        Set the statistics rate interval. The value is rounded to nearest second. If the value is set to 0, this disables collecting the message rate for producers, consumers and destinations.
        Parameters:
        value - the interval rate in milliseconds. If value is 0, this disables collecting the message rate for producers, consumers and destinations.
        Throws:
        java.lang.IllegalArgumentException - if value is negative.
      • setStatisticsCleanupInterval

        public void setStatisticsCleanupInterval​(long value)
                                          throws java.lang.IllegalArgumentException
        Set the statistics cleanup interval. Value is rounded to nearest second. If the interval is set to 0, it disables removing inactive destinations from the detailed statistics collected for producers, consumers and destinations.
        Parameters:
        value - new cleanup interval in milliseconds. If 0 it disables cleanup.
        Throws:
        java.lang.IllegalArgumentException - if value is negative.
      • setStatisticsEnabled

        public void setStatisticsEnabled​(boolean enabled)
        Enables or disables statistics gathering for each producer, consumer, routed server and other. This parameter has no effect on the serverwide rates gathering, which is performed regardless of this parameter.
        Parameters:
        enabled - true if the gathering of statistics for each producer, consumer, routed server, etc. is to be enabled or false if it is to be disabled.
      • setDetailedStatistics

        public void setDetailedStatistics​(int flags)
                                   throws java.lang.IllegalArgumentException
        Enables or disables gathering of detailed statistics for various types of objects.
        Parameters:
        flags - any combination of DETAIL_PRODUCERS, DETAIL_CONSUMERS, DETAIL_ROUTES and DETAIL_CHANNELS flags combined by the bitwise OR operator (|). If flags is 0, gathering of all detailed statistics is disabled.
        Throws:
        java.lang.IllegalArgumentException - if value contains invalid flags.
      • setMaxStatisticsMemory

        public void setMaxStatisticsMemory​(long bytes)
                                    throws java.lang.IllegalArgumentException
        Set the maximum memory allocated to gathering detailed statistics. The maximum must at least 64KB.
        Parameters:
        bytes - the maximum number of bytes of memory that will be allocated to gathering detailed statistics. If bytes is 0 then this indicates no limit.
        Throws:
        java.lang.IllegalArgumentException - if bytes is less than 64KB.
      • setMulticastStatisticsInterval

        @Deprecated
        public void setMulticastStatisticsInterval​(long value)
                                            throws java.lang.IllegalArgumentException
        Deprecated.
        As of release 8.3
        Set the multicast statistics interval. Value is rounded to nearest second. If the interval is set to 0, it disables collecting multicast statistcs.
        Parameters:
        value - new multicast statistcs interval in milliseconds.
        Throws:
        java.lang.IllegalArgumentException - if value is negative.
      • getServerName

        public java.lang.String getServerName()
        Get the name of the server.
        Returns:
        the name of the server.
      • getServerHostname

        public java.lang.String getServerHostname()
        Get the hostname of the server.
        Returns:
        the hostname of the server.
        Since:
        EMS 8.4.0
      • isAppliance

        public boolean isAppliance()
        Indicates whether or not this server instance is running in an appliance
        Returns:
        true if this server instance is running in an appliance, false otherwise.
        Since:
        EMS 8.1.0
      • getLogFileName

        public java.lang.String getLogFileName()
        Get the log file name.
        Returns:
        the log file name or null if log file not set.
      • getSecondaryLogFileName

        public java.lang.String getSecondaryLogFileName()
        Get the secondary log file name.
        Returns:
        the secondary log file name or null if log file not set.
      • getLogFileMaxSize

        public long getLogFileMaxSize()
        Get the maximum allowed size of the log file.
        Returns:
        the maximum allowed size of the log file in bytes.
      • getLogFileMaxCount

        public int getLogFileMaxCount()
        Get the maximum allowed number of log files.
        Returns:
        the maximum allowed number of log files.
      • getListenPorts

        public java.lang.String[] getListenPorts()
        Get the server's listener ports.
        Returns:
        an array of server listen ports.
      • getBackupName

        public java.lang.String getBackupName()
        Get the server name and host name of the backup server connected to this server.
        Returns:
        the server name and host name of the backup server in the form server-name@host-name. Returns null if this is not an active server or there is no backup server connected to this server.
      • getProcessId

        public int getProcessId()
        Get the current process id of the server.
        Returns:
        the server process id.
      • getState

        @Deprecated
        public int getState()
        Deprecated.
        As of release 8.1.0. Please use State.get() after either StateInfo.getState() or getStateObj()
        Get the current state of the server. Can return one of the constants:
        SERVER_FT_STANDBY - server is in fault tolerant standby state
        SERVER_ACTIVE - active server
        Note that this method has been deprecated as it will not return state values that pertain to the EMS Appliance fault tolerance mode introduced with release 8.1.0.
        Returns:
        the server state as an integer.
      • getStateObj

        public State getStateObj()
        Get the current state of the server.
        Returns:
        the State object representing the server's state.
        Since:
        EMS 8.1.0
      • getRuntimeModulePath

        public java.lang.String getRuntimeModulePath()
        Get the module path's runtime value, which may be different from the value configured.
        Returns:
        the runtime value of the server's module path.
        Since:
        EMS 8.3.0
      • getVersionInfo

        public VersionInfo getVersionInfo()
        Get the version of TIBCO Enterprise Message Service that the server binary is from.
        Returns:
        the VersionInfo object representing the server's version.
      • isEvaluation

        public boolean isEvaluation()
        Indicates whether the server binary is an evaluation copy or a fully licensed one.
        Returns:
        true if software is evaluation release, false otherwise.
      • getOverallSyncProgress

        public int getOverallSyncProgress()
        Get the current overall progress of the synchronization of store files for this server when it is running in the EMS Appliance.
        Returns:
        the synchronization progress percentage as an integer between 0 and 100 or -1 either if no synchronization is ongoing or if requested from a server that is running outside the EMS Appliance
        Since:
        EMS 8.1.0
        See Also:
        State.SERVER_COMPSTATE_SYNCHRONIZING
      • getURL

        public java.lang.String getURL()
        Get the URL that should be used to contact this server.
        Returns:
        the URL in String form.
      • getFaultTolerantURL

        public java.lang.String getFaultTolerantURL()
        Get the URL of the fault-tolerant server for this server. This is same as set by the ft_active parameter in the server configuration file.
        Returns:
        the URL in String form or null if fault-tolerant server is not specified.
      • getFaultTolerantHeartbeat

        public int getFaultTolerantHeartbeat()
        Get the period (in seconds) of the heartbeat messages sent by the active server.
        Returns:
        the heartbeat period in seconds.
      • getFaultTolerantActivation

        public int getFaultTolerantActivation()
        Get the length of time a backup server will wait for a heartbeat message before concluding that the active server has failed.
        Returns:
        the activation interval in seconds.
      • getFaultTolerantReconnectTimeout

        public int getFaultTolerantReconnectTimeout()
        Get the length of time a server which has just become the active server following a failover will wait for clients to reconnect before their state is removed from the shared state.
        Returns:
        the reconnect timeout interval in seconds.
      • getFaultTolerantFailoverReread

        @Deprecated
        public boolean getFaultTolerantFailoverReread()
        Deprecated.
        As of release 6.0
        Indicates whether or not the secondary server will reread all the configuration files with the exception of the main file following a failover.
        Returns:
        true if the configuration will be reread following failover, false otherwise.
      • getStartTime

        public long getStartTime()
        Get the server start time.
        Returns:
        the server start time in milliseconds
      • getUpTime

        public long getUpTime()
        Get the server uptime. Uptime is how long this invocation of the server has been running.
        Returns:
        the server uptime in milliseconds.
      • isTibrvTransportsEnabled

        public boolean isTibrvTransportsEnabled()
        Indicates whether or not bridging to and from transports of type tibrv and tibrvcm is enabled. If this is not enabled then, even though transports of this type may be defined in the transports.conf file, messages will not be exported to or imported from those transports.
        Returns:
        true if TIBCO Rendezvous bridge is enabled, false otherwise.
      • isTibssTransportsEnabled

        @Deprecated
        public boolean isTibssTransportsEnabled()
        Deprecated.
        As of release 8.6
        Indicates whether or not bridging to and from SmartSockets transports is enabled. If this is not enabled then, even though transports of this type may be defined in the transports.conf file, messages will not be exported to or imported from those transports.
        Returns:
        true if TIBCO SmartSockets bridge is enabled, false otherwise.
      • isAuthorizationEnabled

        public boolean isAuthorizationEnabled()
        Indicates whether or not authorization of user credentials and permissions is enabled.
        Returns:
        true if authorization is enabled, false otherwise.
      • getAuthThreadCount

        public int getAuthThreadCount()
        Get the number of threads used for authentication.
        Returns:
        the number of threads used for authentication.
      • getUserAuthLocations

        public int[] getUserAuthLocations()
        Returns an array indicating where users will be authenticated. Each element of the array will be equal to either USER_AUTH_LOCATION_LDAP, USER_AUTH_LOCATION_LOCAL or USER_AUTH_LOCATION_JAAS. The order of the array is the order in which the server uses them for authentication.
        Returns:
        the array or null if not defined.
        Since:
        EMS 4.2
      • getOAuth2ServerValidationKey

        public java.lang.String getOAuth2ServerValidationKey()
        Get the path to the file containing the PEM-encoded public key, or JWKS that will be used to validate the signature of OAuth 2.0 JWT access tokens presented by incoming connections.
        Returns:
        the path to the file containing the public key / JWKS, or null if not configured.
        Since:
        EMS 10.3.0
      • getOAuth2UserClaim

        public java.lang.String getOAuth2UserClaim()
        Get the name of the claim in the OAuth 2.0 access token that contains the EMS user to associate with the incoming connection.
        Returns:
        the name of the claim, or null if not configured.
        Since:
        EMS 10.3.0
      • getOAuth2GroupClaim

        public java.lang.String getOAuth2GroupClaim()
        Get the name of the claim in the OAuth 2.0 access token that contains the list of groups the EMS user belongs to.
        Returns:
        the name of the claim, or null if not configured.
        Since:
        EMS 10.3.0
      • getOAuth2Audience

        public java.lang.String getOAuth2Audience()
        Get the expected value of the 'aud' claim in the OAuth 2.0 access tokens presented by incoming connections.
        Returns:
        the expected audience claim values, or null if not configured.
        Since:
        EMS 10.3.0
      • getFaultTolerantOAuth2ServerURL

        public java.lang.String getFaultTolerantOAuth2ServerURL()
        Get the URL of the OAuth 2.0 authorization server that will issue access tokens for authenticating with the fault-tolerant peer EMS server.
        Returns:
        the URL of the OAuth 2.0 authorization server, or null if not configured.
        Since:
        EMS 10.3.0
      • getFaultTolerantOAuth2GrantType

        public java.lang.String getFaultTolerantOAuth2GrantType()
        Get the OAuth 2.0 grant type used to obtain access tokens from the OAuth 2.0 authorization server. Obtained access tokens will be used to authenticate with the fault-tolerant peer EMS server.
        Returns:
        the name of the grant type, or null if not configured. configured, null otherwise.
        Since:
        EMS 10.3.0
      • getFaultTolerantOAuth2ClientId

        public java.lang.String getFaultTolerantOAuth2ClientId()
        Get the OAuth 2.0 client ID. This value is used along with the OAuth 2.0 client secret to connect to the OAuth 2.0 authorization server and obtain access tokens for authenticating with the fault-tolerant peer EMS server.
        Returns:
        the OAuth 2.0 client ID, or null if not configured.
        Since:
        EMS 10.3.0
      • getFaultTolerantOAuth2ServerTrustFile

        public java.lang.String getFaultTolerantOAuth2ServerTrustFile()
        Get the path to the trust file used to validate the OAuth 2.0 authorization server's identity. This validation is performed when connecting to a secure authorization server to obtain access tokens for authenticating with the fault-tolerant peer EMS server.
        Returns:
        the path to the trust file, or null if not configured.
        Since:
        EMS 10.3.0
      • getFaultTolerantOAuth2DisableVerifyHostname

        public boolean getFaultTolerantOAuth2DisableVerifyHostname()
        Returns whether client verification of the OAuth 2.0 authorization server's hostname is disabled. Verification is enabled by default and is performed when connecting to a secure authorization server to obtain access tokens for authenticating with the fault-tolerant peer EMS server.
        Returns:
        true if verification is disabled, false otherwise.
        Since:
        EMS 10.3.0
      • getFaultTolerantOAuth2ExpectedHostname

        public java.lang.String getFaultTolerantOAuth2ExpectedHostname()
        Get the hostname expected to be set in the OAuth 2.0 authorization server host's certificate. Hostname verification is performed when connecting to a secure authorization server to obtain access tokens for authenticating with the fault-tolerant peer EMS server.
        Returns:
        the expected hostname, or null if not configured.
        Since:
        EMS 10.3.0
      • isRoutingEnabled

        public boolean isRoutingEnabled()
        Indicates whether or not routing of messages between servers is enabled.
        Returns:
        true if routing is enabled, false otherwise.
      • isMulticastEnabled

        @Deprecated
        public boolean isMulticastEnabled()
        Deprecated.
        As of release 8.3
        Indicates whether or not multicast is enabled on the server.
        Returns:
        true if multicast is enabled, false otherwise.
      • isFlowControlEnabled

        public boolean isFlowControlEnabled()
        Indicates whether or not flow control is enabled. Flow control involves limiting the rate of publication of messages when receivers are unable to keep up with the publisher(s). For a destination to be flow controlled, isFlowControlEnabled() must be true and a getFlowControlMaxBytes() must return a non-zero value.
        Returns:
        true if flow control is enabled, false otherwise.
      • getNPSendCheckMode

        public int getNPSendCheckMode()
        Returns global send check mode for NON_PERSISTENT messages.

        If property not defined in the server this method returns Tibjms.NPSEND_CHECK_DEFAULT

        Returns:
        send check mode for NON_PERSISTENT messages. Values are constants beginning with NPSEND_... documented in Tibjms class, such as Tibjms.NPSEND_CHECK_DEFAULT.
      • getClockSyncInterval

        public int getClockSyncInterval()
        Returns interval between clock synchronization commands sent by this server to its clients. These commands ensure that clients expire messages consistently with the server when one or other machines' clocks are changed or drift apart.
        Returns:
        interval in seconds. 0 indicates that the clocks are only synchronized when the client connects to the server. A value of -1 indicates that no clock synchronization is done at all and it is assumed that the client and server clocks are always in sync.
        Since:
        EMS 6.1
      • getServerHeartbeatServerInterval

        public int getServerHeartbeatServerInterval()
        Returns interval between heartbeats this server requests other servers to send to this server.
        Returns:
        interval in seconds or 0 if not specified and heartbeats are not sent.
        See Also:
        getServerTimeoutServerConnection()
      • getServerTimeoutServerConnection

        public int getServerTimeoutServerConnection()
        Returns timeout after which this server destroys connection from another server if heartbeats were not being received.
        Returns:
        timeout interval in seconds or 0 if not specified and this server does not check heartbeats from other servers.
        See Also:
        getServerHeartbeatServerInterval()
      • getClientHeartbeatServerInterval

        public int getClientHeartbeatServerInterval()
        Returns interval between heartbeats this server requests client connections to send to this server.
        Returns:
        interval in seconds or 0 if not specified and heartbeats are not sent.
        See Also:
        getServerTimeoutClientConnection()
      • getServerTimeoutClientConnection

        public int getServerTimeoutClientConnection()
        Returns timeout after which this server destroys connection from client application if heartbeats were not being received.
        Returns:
        timeout interval in seconds or 0 if not specified and this server does not check heartbeats from client connections.
        See Also:
        getClientHeartbeatServerInterval()
      • getServerHeartbeatClientInterval

        public int getServerHeartbeatClientInterval()
        Returns interval between heartbeats this server sends to client connections.
        Returns:
        interval in seconds or 0 if not specified and heartbeats are not sent.
        See Also:
        getClientTimeoutServerConnection()
      • getClientTimeoutServerConnection

        public int getClientTimeoutServerConnection()
        Returns timeout after which clients terminate connection to this server if they do not receive heartbeats from this server.
        Returns:
        timeout interval in seconds or 0 if not specified and clients do not check heartbeats from this server.
        See Also:
        getServerHeartbeatClientInterval()
      • getStoreDirectory

        public java.lang.String getStoreDirectory()
        Get the directory in which the server is storing its store files.
        Returns:
        the server store files directory.
      • getStoreMinimum

        public long getStoreMinimum()
        Get the minimum size of the server store files.
        Returns:
        the minimum size in bytes or 0 if no minimum is set.
      • getStoreSyncMinimum

        public long getStoreSyncMinimum()
        Get the minimum size of the server's synchronous store file.
        Returns:
        the minimum size in bytes or 0 if no minimum is set.
      • getStoreAsyncMinimum

        public long getStoreAsyncMinimum()
        Get the minimum size of the server's asynchronous store file.
        Returns:
        the minimum size in bytes or 0 if no minimum is set.
      • isStoreTruncateEnabled

        public boolean isStoreTruncateEnabled()
        Indicates whether or no the server will attempt to truncate the store files when possible.
        Returns:
        true if the server will truncate the store files, false otherwise.
      • isStoreCRCEnabled

        public boolean isStoreCRCEnabled()
        Indicates whether or not the server uses CRC verification when reading data from the store files.
        Returns:
        true if the server does use CRC verification, false otherwise.
      • isInMemoryReplicationEnabled

        public boolean isInMemoryReplicationEnabled()
        When using FTL stores, indicates whether or not data will be persisted and replicated only in-memory by each FTL server in the cluster, rather than being persisted and replicated both in-memory and on disk.
        Returns:
        true if data will be persisted and replicated only in-memory, false otherwise.
        Since:
        EMS 10.2.0
      • getMaxConnections

        public int getMaxConnections()
        Get the maximum number of connections this server will allow.
        Returns:
        the maximum number of connections or zero if not set.
      • setAuthorizationEnabled

        public void setAuthorizationEnabled​(boolean authorization)
        Endable or disable the verification of user credentials and permissions on secure destinations.
        Parameters:
        authorization - true if authorization is to be enabled, false if it is to be disabled.
      • getLogTraceInfo

        public TraceInfo getLogTraceInfo()
        Get the trace settings that determine what will be logged in the server's log file. This method does not copy the TraceInfo object. Therefore, to modify the trace settings, one needs to modify the TraceInfo object returned by this method and save the ServerInfo object.
        Returns:
        a TraceInfo object representing the current log trace settings.
      • setLogTraceInfo

        public void setLogTraceInfo​(TraceInfo logTraceInfo)
        Set the trace settings that determine what will be logged in the server's log file. This replaces any existing log trace settings.
        Parameters:
        logTraceInfo - a TraceInfo object representing the new settings.
      • getConsoleTraceInfo

        public TraceInfo getConsoleTraceInfo()
        Get the trace settings that determine what will be logged to the server's console window. This method does not copy the TraceInfo object. Therefore, to modify the trace settings, one needs to modify the TraceInfo object returned by this method and save the ServerInfo object.
        Returns:
        a TraceInfo object representing the current console trace settings.
      • setConsoleTraceInfo

        public void setConsoleTraceInfo​(TraceInfo conTraceInfo)
        Set the trace settings that determine what will be logged to the server's console. This replaces any existing console trace settings.
        Parameters:
        conTraceInfo - a TraceInfo object representing the new settings.
      • getTraceBufferTraceInfo

        public TraceInfo getTraceBufferTraceInfo()
        Reserved for internal provider use only - Do not use this method.
      • setTraceBufferTraceInfo

        public void setTraceBufferTraceInfo​(TraceInfo bufTraceInfo)
        Reserved for internal provider use only - Do not use this method.
      • setTraceBufferSize

        public void setTraceBufferSize​(long size)
        Reserved for internal provider use only - Do not use this method.
      • getTraceBufferSize

        public long getTraceBufferSize()
        Reserved for internal provider use only - Do not use this method.
      • isClientTraceEnabled

        public boolean isClientTraceEnabled()
        Indicates whether or not client tracing has been enabled.
        Returns:
        true if client tracing is enabled, false otherwise.
      • getClientTraceTarget

        public short getClientTraceTarget()
        Get the current target for client tracing.
        Returns:
        CLIENT_TRACE_TARGET_NONE if client tracing is not enabled, CLIENT_TRACE_TARGET_STDOUT if client tracing is enabled and is directed to stdout and CLIENT_TRACE_TARGET_STDERR if client tracing is enabled and is directed to stderr.
      • getClientTraceFilterType

        public short getClientTraceFilterType()
        Get the current filter type for client tracing. If a filter is set then only clients that match the value for the filter will be traced.
        Returns:
        CLIENT_TRACE_FILTER_NONE if client tracing is not enabled or no filter is set, CLIENT_TRACE_FILTER_USER if only clients with a matching user are to be traced, CLIENT_TRACE_FILTER_CLIENTID if only clients with a matching client id are to be traced and CLIENT_TRACE_FILTER_CONNID if only clients with a matching client id are to be traced.
      • getClientTraceFilterValue

        public java.lang.Object getClientTraceFilterValue()
        Get the value that clients must match in order to be traced. If the filtering is by user or client id then the object returned is a String. If the filtering is by connection id then the object returned is a Long. If there is no filtering or client tracing is not enabled then null is returned.
        Returns:
        the value a client must match in order to be traced.
      • disableClientTracing

        public void disableClientTracing()
        Turn off client tracing, clearing all filtering settings.
      • enableClientTracing

        public void enableClientTracing()
        Enable client tracing with default settings. Default settings are that the target is stderr and there is no filtering.
      • enableClientTracing

        public void enableClientTracing​(short target,
                                        short filterType,
                                        java.lang.Object filterValue)
                                 throws java.lang.IllegalArgumentException
        Enable client tracing with specific settings.
        Parameters:
        target - target for client tracing, must be either CLIENT_TRACE_TARGET_STDOUT or CLIENT_TRACE_TARGET_STDERR.
        filterType - type of filter to be applied, either CLIENT_TRACE_FILTER_NONE for no filtering or one of CLIENT_TRACE_FILTER_USER, CLIENT_TRACE_FILTER_CLIENTID or CLIENT_TRACE_FILTER_CONNID.
        filterValue - value a client needs to match for client tracing to be enabled. For CLIENT_TRACE_FILTER_USER and CLIENT_TRACE_FILTER_CLIENTID this must be a String, for CLIENT_TRACE_FILTER_CONNID must be a Long.
        Throws:
        java.lang.IllegalArgumentException - if target or filterType are not valid or the type of filterValue does not match the type required for the given filterType.
      • getQueueCount

        public int getQueueCount()
        Get the number of queues in the server.
        Returns:
        the number of queues.
      • getTopicCount

        public int getTopicCount()
        Get the number of topics in the server.
        Returns:
        the number of topics.
      • getDynamicQueueCount

        public int getDynamicQueueCount()
        Get the number of dynamic queues in the server.
        Returns:
        the number of dynamic queues.
      • getDynamicTopicCount

        public int getDynamicTopicCount()
        Get the number of dynamic topics in the server.
        Returns:
        the number of dynamic topics.
      • getTemporaryQueueCount

        public int getTemporaryQueueCount()
        Get the number of temporary queues in the server.
        Returns:
        the number of temporary queues.
      • getTemporaryTopicCount

        public int getTemporaryTopicCount()
        Get the number of temporary topics in the server.
        Returns:
        the number of temporary topics.
      • getConnectionCount

        public int getConnectionCount()
        Get the number of connections to the server.
        Returns:
        the number of connections.
      • getClientConnectionCount

        public int getClientConnectionCount()
        Get the number of client connections to the server.
        Returns:
        the number of client connections.
        Since:
        EMS 8.4.0
      • getAdminConnectionCount

        public int getAdminConnectionCount()
        Get the number of admin connections to the server.
        Returns:
        the number of admin connections.
        Since:
        EMS 8.4.0
      • getSessionCount

        public int getSessionCount()
        Get the number of sessions created by client applications.
        Returns:
        the number of sessions.
        Since:
        EMS 4.4
      • getProducerCount

        public int getProducerCount()
        Get the total number of producers.
        Returns:
        total number of producers.
        Since:
        EMS 4.4
      • getConsumerCount

        public int getConsumerCount()
        Get the total number of consumers.
        Returns:
        total number of consumers.
        Since:
        EMS 4.4
      • getDurableCount

        public int getDurableCount()
        Get the number of durable subscribers in the server.
        Returns:
        the number of durable subscribers.
      • getPendingMessageCount

        public long getPendingMessageCount()
        Get the total number of pending messages for this server.
        Returns:
        the number of pending messages.
      • getPendingMessageSize

        public long getPendingMessageSize()
        Get the total size of pending messages for this server.
        Returns:
        the total size of pending messages.
      • getInboundMessageCount

        public long getInboundMessageCount()
        Get the number of inbound messages for the server.
        Returns:
        the number of inbound messages.
      • getOutboundMessageCount

        public long getOutboundMessageCount()
        Get the number of outbound messages for the server.
        Returns:
        the number of outbound messages
      • getInboundMessageSize

        public long getInboundMessageSize()
        Get the total size of inbound messages for the server.
        Returns:
        the total size of inbound messages.
      • getOutboundMessageSize

        public long getOutboundMessageSize()
        Get the total size of outbound messages for the server.
        Returns:
        the total size of outbound messages
      • getInboundMessageRate

        public long getInboundMessageRate()
        Get the number of inbound messages per second for the server as a whole.
        Returns:
        the inbound message rate.
      • getOutboundMessageRate

        public long getOutboundMessageRate()
        Get the number of outbound messages per second for the server as a whole.
        Returns:
        the outbound message rate.
      • getInboundBytesRate

        public long getInboundBytesRate()
        Get the volume of inbound messages per second for the server as a whole.
        Returns:
        the inbound rate in bytes per second rate.
      • getOutboundBytesRate

        public long getOutboundBytesRate()
        Get the volume of outbound messages per second for the server as a whole.
        Returns:
        the outbound rate in bytes per second rate.
      • getLogFileSize

        public long getLogFileSize()
        Get the total size of the log file.
        Returns:
        the size of the log file or 0 if log file is not set.
      • getSyncDBSize

        public long getSyncDBSize()
        Get the current size of the synchronous message store.
        Returns:
        the size in bytes.
      • getAsyncDBSize

        public long getAsyncDBSize()
        Get the current size of the asynchronous message store.
        Returns:
        the size in bytes.
      • getMsgMem

        public long getMsgMem()
        Get the amount of memory in use to store messages.
        Returns:
        the size in bytes.
      • getMsgMemPooled

        public long getMsgMemPooled()
        Get the amount of memory in use by the message pools.
        Returns:
        the size in bytes.
      • getDiskReadRate

        public long getDiskReadRate()
        Get the rate at which messages are being read from storage. Does not apply to database stores.
        Returns:
        the bytes per second.
      • getDiskWriteRate

        public long getDiskWriteRate()
        Get the rate at which messages are being written to storage. Does not apply to database stores.
        Returns:
        the bytes per second.
      • getDiskReadOperationsRate

        public long getDiskReadOperationsRate()
        Get the rate at which messages are being read from storage.
        Returns:
        the operations per second.
      • getDiskWriteOperationsRate

        public long getDiskWriteOperationsRate()
        Get the rate at which messages are being written to storage.
        Returns:
        the operations per second.
      • getSSLParams

        public SSLParams getSSLParams()
        Get the TLS parameters used by the server when communicating with TLS clients.
        Returns:
        the TLS parameters if set, null otherwise.
      • getLDAPParams

        public LDAPParams getLDAPParams()
        Get the LDAP parameters used by the server for client authentication.
        Returns:
        the LDAP parameters if set, null otherwise.
      • getFTLParams

        public FTLParams getFTLParams()
        Get the FTL parameters used by the server for FTL transports.
        Returns:
        the FTL parameters if set, null otherwise.
        Since:
        EMS 8.2
      • getSSLDHSize

        @Deprecated
        public int getSSLDHSize()
        Deprecated.
        As of release 10.2 - always returns 0
        Get the size of the Diffie-Hellman key used by the server for client communications.
        Returns:
        the size in bits.
      • isSSLRequireClientCert

        public boolean isSSLRequireClientCert()
        Indicates whether or not the server will only accept TLS clients that have certificates.
        Returns:
        true if clients are required to have certificates, false otherwise.
      • isSSLRequireRouteCertOnly

        public boolean isSSLRequireRouteCertOnly()
        Indicates whether or not the server requires a certificate only for incoming route TLS connections, while leaving the other types of connections unaffected (clients and FT peer).
        Returns:
        true if only routes are required to have certificates, false otherwise.
        Since:
        EMS 8.4.0
      • isSSLUserCertUsername

        public boolean isSSLUserCertUsername()
        Indicates whether or not the client's username is always extracted from the CN field of the client's digital certificate.
        Returns:
        true if the client's username is to be extracted, false otherwise.
      • getSSLCertUserSpecname

        public java.lang.String getSSLCertUserSpecname()
        Get the username clients will use to connect to the server when their username is to be extracted from the CN field of their digital certificate.
        Returns:
        the username if set, null otherwise.
      • getFaultTolerantSSLParams

        public SSLParams getFaultTolerantSSLParams()
        Get the server's Fault Tolerant TLS parameters. These are the parameters that the server uses to connect to its Fault Tolerant partner.
        Returns:
        the FT TLS parameters if set, null otherwise.
      • getMonitorSSLParams

        public SSLParams getMonitorSSLParams()
        Get the server's monitor TLS parameters. These are the parameters that the server uses to service monitoring requests on the monitor listen port.
        Returns:
        the monitor TLS parameters if set, null otherwise.
      • isTrackCorrelationIds

        public boolean isTrackCorrelationIds()
        Indicates whether or not tracking messages by correlation ID is enabled.
        Returns:
        true if tracking messages by correlation ID is enabled, false otherwise.
      • setTrackCorrelationIds

        public void setTrackCorrelationIds​(boolean trackCorIds)
        Enable or disable tracking messages by correlation ID.
        Parameters:
        trackCorIds - true if tracking by correlation ID it to be enabled, or false if it is to be disabled.
      • isTrackMsgIds

        public boolean isTrackMsgIds()
        Indicates whether or not tracking messages by message ID is enabled.
        Returns:
        true if tracking messages by message ID is enabled, false otherwise.
      • setTrackMsgIds

        public void setTrackMsgIds​(boolean trackMsgIds)
        Enable or disable tracking messages by message ID.
        Parameters:
        trackMsgIds - true if tracking by message ID it to be enabled, or false if it is to be disabled.
      • setPassword

        public void setPassword​(java.lang.String password)
        Set the new server password.
        Parameters:
        password - the new password.
      • setSSLPassword

        public void setSSLPassword​(java.lang.String sslPassword)
        Set the new server's private key or PKCS12 file password.
        Parameters:
        sslPassword - the new private key or PKCS12 file password.
      • setFTSSLPassword

        public void setFTSSLPassword​(java.lang.String ftSSLPassword)
        Set the new private key or PKCS12 file password for fault-tolerant TLS connection.
        Parameters:
        ftSSLPassword - the new private key or PKCS12 file password.
      • getMaxMsgMemory

        public long getMaxMsgMemory()
        Get the maximum allowed message memory.
        Returns:
        the maximum allowed message memory in bytes, or 0 if no limit is set.
      • setMaxMsgMemory

        public void setMaxMsgMemory​(long maxMsgMemory)
                             throws java.lang.IllegalArgumentException
        Set the maximum allowed message memory. Lowering this value will not immediately free memory occupied by messages.
        Parameters:
        maxMsgMemory - the new maximum allowed message memory in bytes. If 0 is specified then memory limit is reset to unlimited.
        Throws:
        java.lang.IllegalArgumentException - if maxMsgMemory is less than 64KB.
      • getReserveMemory

        public long getReserveMemory()
        Get the size of the reserve memory.
        Returns:
        the size of the reserve memory in bytes, or zero if not enabled.
        Since:
        EMS 4.2
      • getMaxClientMsgSize

        public long getMaxClientMsgSize()
        Get the maximum allowed size of an incoming client message.
        Returns:
        the maximum allowed size of incoming client message in bytes, or zero if not enabled.
        Since:
        EMS 6.0
      • getDestinationBacklogSwapout

        public int getDestinationBacklogSwapout()
        Get the per destination limit of backlogged messages which are not automatically swapped out.
        Returns:
        limit of unswapped backlogged messages per destination.
        Since:
        EMS 6.0
      • getMessagePoolBlockSize

        public long getMessagePoolBlockSize()
        Get the message pool block size setting.
        Returns:
        the value of the setting, or zero if not enabled.
        Since:
        EMS 4.2
      • getMessagePoolSize

        public long getMessagePoolSize()
        Get the message pool size setting.
        Returns:
        the value of the setting, or zero if not enabled.
        Since:
        EMS 4.2
      • isMessageSwappingEnabled

        public boolean isMessageSwappingEnabled()
        Indicates whether or not server message swapping is enabled.
        Returns:
        true if server message swapping is enabled, false otherwise.
      • setMessageSwappingEnabled

        public void setMessageSwappingEnabled​(boolean enabled)
        Enable or disable server message swapping.
        Parameters:
        enabled - true if message swapping is to be enabled, or false if it is to be disabled.
      • getLargeDestMemory

        public long getLargeDestMemory()
        Get the amount of message memory in bytes that an unbounded destination can hold before the server starts logging warnings about the destination's size.
        Returns:
        the amount of message memory in bytes that an unbounded destination can hold before the server starts logging warnings about the destination's size, or 0 if this logging is disabled.
        Since:
        EMS 8.4.0
      • setLargeDestMemory

        public void setLargeDestMemory​(long largeDestMemory)
        Set the amount of message memory in bytes that an unbounded destination can hold before the server starts logging warnings about the destination's size.
        Parameters:
        largeDestMemory - the new amount of message memory in bytes. If 0 is specified then no warnings will be logged about unbounded destination size.
        Since:
        EMS 8.4.0
      • getLargeDestCount

        public long getLargeDestCount()
        Get the number of messages that an unbounded destination can hold before the server starts logging warnings about the destination's message count.
        Returns:
        the number of messages that an unbounded destination can hold before the server starts logging warnings about the destination's message count, or 0 if this logging is disabled.
        Since:
        EMS 8.4.0
      • setLargeDestCount

        public void setLargeDestCount​(long largeDestCount)
        Set the number of messages that an unbounded destination can hold before the server starts logging warnings about the destination's message count.
        Parameters:
        largeDestCount - the new number of messages. If 0 is specified, then no warnings will be logged about unbounded destination message count.
        Since:
        EMS 8.4.0
      • isAlwaysExitOnDiskErrorEnabled

        public boolean isAlwaysExitOnDiskErrorEnabled()
        Indicates whether or not the server is configured to exit on any disk error.
        Returns:
        true if the server is configured to exit on any disk error, false otherwise.
        Since:
        EMS 8.4.0
      • getHealthCheckListen

        public java.lang.String getHealthCheckListen()
        Deprecated.
        As of release 10.3
        Get the configured listen URL for an EMS HTTP health check service.
        Returns:
        a string with the listen URL for health check service if configured, null otherwise.
        Since:
        EMS 8.5.0
      • getSecondaryHealthCheckListen

        public java.lang.String getSecondaryHealthCheckListen()
        Deprecated.
        As of release 10.3
        Get the configured secondary listen URL for an EMS HTTP health check service.
        Returns:
        a string with the secondary listen URL for health check service if configured, null otherwise.
        Since:
        EMS 8.5.0
      • getMonitorListen

        public java.lang.String getMonitorListen()
        Get the configured listen URL for an EMS HTTP(S) monitoring service.
        Returns:
        a string with the listen URL for monitoring service if configured, null otherwise.
        Since:
        EMS 10.3.0
      • getSecondaryMonitorListen

        public java.lang.String getSecondaryMonitorListen()
        Get the configured secondary listen URL for an EMS HTTP(S) monitoring service.
        Returns:
        a string with the listen URL for monitoring service if configured, null otherwise.
        Since:
        EMS 10.3.0
      • setAlwaysExitOnDiskErrorEnabled

        public void setAlwaysExitOnDiskErrorEnabled​(boolean enabled)
        Enable or disable the server behavior to exit on any disk error.
        Parameters:
        enabled - true if the server behavior to exit on any disk error is to be enabled, or false if it is to be disabled.
        Since:
        EMS 8.4.0
      • isFSyncEnabled

        public boolean isFSyncEnabled()
        Indicates whether or not the fsync mode is used by the server when writing data to its store file. On most platforms this is not the most efficient way to write to the store file.
        Returns:
        true if fsync is enabled, false otherwise.
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • getServerConfigurationMode

        public int getServerConfigurationMode()
        Get the configuration mode of the server
        Returns:
        the value of the setting. Valid values include CONFIGURATION_MODE_CONF representing traditional "*.conf" files and CONFIGURATION_MODE_JSON representing the newer JSON format. CONFIGURATION_MODE_XML represents XML or JSON and is being deprecated.
        Since:
        EMS 6.0
      • getDbStoreClasspath

        public java.lang.String getDbStoreClasspath()
        Get the classpath set for the database store.
        Returns:
        the value of the setting. Null will be returned if this server is not using a database store.
        Since:
        EMS 6.1
      • getDbStoreJDBCDriverName

        public java.lang.String getDbStoreJDBCDriverName()
        Get the JDBC driver name for the database store.
        Returns:
        the value of the setting. Null will be returned if this server is not using a database store.
        Since:
        EMS 6.1
      • getDbStoreJDBCDialect

        public java.lang.String getDbStoreJDBCDialect()
        Get the JDBC dialect set for the database store.
        Returns:
        the value of the setting. Null will be returned if this server is not using a database store.
        Since:
        EMS 6.1
      • getJRELibrary

        public java.lang.String getJRELibrary()
        Get the JVM library being used by the server.
        Returns:
        the value of the setting. Null will be returned if this server does not have the jvm enabled.
        Since:
        EMS 6.1
      • getJREOptions

        public java.lang.String[] getJREOptions()
        Get the options being used by the server's jvm.
        Returns:
        the value of the setting. Null will be returned if this server does not have the jvm enabled.
        Since:
        EMS 6.1
      • getFTLDRSiteRole

        public int getFTLDRSiteRole()
        When using FTL stores, get the DR role of the site. Can return one of the constants:
        FTLDR_ROLE_UNKNOWN
        FTLDR_ROLE_PRIMARY_SITE
        FTLDR_ROLE_DR_SITE
        FTLDR_ROLE_STANDALONE
        Returns:
        the DR role of the site.
        Since:
        EMS 10.2.0
      • getFTLDRState

        public int getFTLDRState()
        When using FTL stores and connected to a server on the DR site, get the DR state of the FTL server cluster. Can return one of the constants:
        FTLDR_STATE_UNKNOWN
        FTLDR_STATE_OUTOFSYNC
        FTLDR_STATE_INSYNC
        Returns:
        the DR state.
        Since:
        EMS 10.2.0
      • getFTLDRPrimaryLastContact

        public long getFTLDRPrimaryLastContact()
        When using FTL stores and connected to a server on the DR site, get the amount of time elapsed since the last contact of the DR site with the primary site, in milliseconds.
        Returns:
        the time elapsed since the last contact with the primary site.
        Since:
        EMS 10.2.0