Class SolaceJcsmpAdvancedConnectionProperties

java.lang.Object
com.adaptris.core.jcsmp.solace.SolaceJcsmpAdvancedConnectionProperties

@ComponentProfile(summary="Advanced connection properties for the JCSMP connection.", tag="connection,solace,jcsmp", since="4.3") public class SolaceJcsmpAdvancedConnectionProperties extends Object

Advanced properties specifically for

In the adapter configuration file this class is aliased as solace-jcsmp-connection-properties which is the preferred alternative to the fully qualified classname when building your configuration.

  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    applyAdvancedProperties(com.solacesystems.jcsmp.JCSMPProperties properties)
     
    SUPPORTED_ACK_EVENT_MODE_PER_MSG or SUPPORTED_ACK_EVENT_MODE_WINDOWED If this property is set to SUPPORTED_ACK_EVENT_MODE_PER_MSG, the message acknowledgement event acknowledges a single published Guaranteed message; if this property is set to SUPPORTED_ACK_EVENT_MODE_WINDOWED, the message acknowledgement event acknowledges a range of published Guaranteed messages.
    (Optional) The client description to report to an appliance.
    boolean
    (Optional) Indicates whether to calculate message expiration time in outgoing messages and incoming messages.
    int
    A compressionLevel setting of 1-9 sets the ZLIB compression level to use; a setting of 0 disables compression entirely.
    int
    The number of times to attempt and retry a connection to the host appliance (or list of appliances) during initial connection setup.
    int
    When using a host list for the HOST property, this property defines how many times to try to connect or reconnect to a single host before moving to the next host in the list.
    int
    Timeout value (in ms) for creating an initial connection to the appliance.
    int
    The amount of time (in ms) to wait between sending out keep-alive messages.
    int
    The maximum number of consecutive keep-alive messages that can be sent without receiving a response before the connection is closed by the API.
    int
    Timeout value (in ms) for reading a reply from the appliance.
    int
    The size (in bytes) of the receive socket buffer.
    int
    The number of times to attempt to reconnect to the appliance (or list of appliances) after an initial connected session goes down.
    int
    How much time in (MS) to wait between each attempt to connect or reconnect to a host.
    int
    The size (in bytes) of the send socket buffer.
    boolean
    Whether to set the TCP_NODELAY option.
    boolean
    (Optional) Indicates whether the acknowledgement of receiving a message is done by JCSMP automatically or by the application explicitly calling XMLMessage.ackMessage().
    (Optional) A unique client name to use to register to the appliance.
    GD_RECONNECT_FAIL_ACTION_AUTO_RETRY or GD_RECONNECT_FAIL_ACTION_DISCONNECT Defines the behavior when the API is unable to reconnect guaranteed delivery after reconnecting the session.
    boolean
    (Optional) Indicates whether to generate a receive timestamp on incoming messages.
    boolean
    (Optional) Indicates whether the client name should be included in the SenderID message header parameter.
    boolean
    (Optional) Indicates whether to generate a send timestamp in outgoing messages.
    boolean
    (Optional) Indicates whether to generate a sequence number in outgoing messages.
    boolean
    On addSubscription(Subscription), addSubscription(Endpoint, Subscription, int), or addSubscriptions(XpeList), ignore errors caused by subscriptions being already present.
    boolean
    On removeSubscription(Subscription), removeSubscription(Endpoint, Subscription, int), or removeSubscriptions(XpeList), ignore errors caused by subscriptions not being found.
    This property is used to specify the ServiceName portion of the Service Principal Name (SPN) that has a format of ServiceName/ApplianceName@REALM.
    boolean
    If enabled, messages delivered asynchronously to an XMLMessageListener are delivered directly from the I/O thread instead of a consumer notification thread.
    boolean
    If this property is true, messages published on the session will not be received on the same session even if the client has a subscription that matches the published topic.
    int
    The duration of the publisher acknowledgement timer (in milliseconds).
    int
    The size of the sliding publisher window for Guaranteed messages.
    boolean
    Defaults to true.
    boolean
    If enabled, the API maintains a local cache of subscriptions and reapplies them when the subscriber connection is reestablished.
    int
    The duration of the subscriber ACK timer (in milliseconds).
    int
    The size of the sliding subscriber ACK window.
    int
    The threshold for sending an acknowledgement, configured as a percentage.
    void
    setAckEventMode(String ackEventMode)
    SUPPORTED_ACK_EVENT_MODE_PER_MSG or SUPPORTED_ACK_EVENT_MODE_WINDOWED If this property is set to SUPPORTED_ACK_EVENT_MODE_PER_MSG, the message acknowledgement event acknowledges a single published Guaranteed message; if this property is set to SUPPORTED_ACK_EVENT_MODE_WINDOWED, the message acknowledgement event acknowledges a range of published Guaranteed messages.
    void
    setApplicationDescription(String applicationDescription)
    (Optional) The client description to report to an appliance.
    void
    setCalculateMessageExpiration(boolean calculateMessageExpiration)
    (Optional) Indicates whether to calculate message expiration time in outgoing messages and incoming messages.
    void
    setChannelCompressionLevel(int channelCompressionLevel)
    A compressionLevel setting of 1-9 sets the ZLIB compression level to use; a setting of 0 disables compression entirely.
    void
    setChannelConnectRetries(int channelConnectRetries)
    The number of times to attempt and retry a connection to the host appliance (or list of appliances) during initial connection setup.
    void
    setChannelConnectRetriesPerHost(int channelConnectRetriesPerHost)
    When using a host list for the HOST property, this property defines how many times to try to connect or reconnect to a single host before moving to the next host in the list.
    void
    setChannelConnectTimeoutInMillis(int channelConnectTimeoutInMillis)
    Timeout value (in ms) for creating an initial connection to the appliance.
    void
    setChannelKeepAliveIntervalInMillis(int channelKeepAliveIntervalInMillis)
    The amount of time (in ms) to wait between sending out keep-alive messages.
    void
    setChannelKeepAliveLimit(int channelKeepAliveLimit)
    The maximum number of consecutive keep-alive messages that can be sent without receiving a response before the connection is closed by the API.
    void
    setChannelReadTimeoutInMillis(int channelReadTimeoutInMillis)
    Timeout value (in ms) for reading a reply from the appliance.
    void
    setChannelReceiveBuffer(int channelReceiveBuffer)
    The size (in bytes) of the receive socket buffer.
    void
    setChannelReconnectRetries(int channelReconnectRetries)
    The number of times to attempt to reconnect to the appliance (or list of appliances) after an initial connected session goes down.
    void
    setChannelReconnectRetryWaitInMillis(int channelReconnectRetryWaitInMillis)
    How much time in (MS) to wait between each attempt to connect or reconnect to a host.
    void
    setChannelSendBuffer(int channelSendBuffer)
    The size (in bytes) of the send socket buffer.
    void
    setChannelTcpNoDelay(boolean channelTcpNoDelay)
    Whether to set the TCP_NODELAY option.
    void
    setClientAckMode(boolean clientAckMode)
    (Optional) Indicates whether the acknowledgement of receiving a message is done by JCSMP automatically or by the application explicitly calling XMLMessage.ackMessage().
    void
    setClientName(String clientName)
    (Optional) A unique client name to use to register to the appliance.
    void
    setGdReconnectFailAction(String gdReconnectFailAction)
    GD_RECONNECT_FAIL_ACTION_AUTO_RETRY or GD_RECONNECT_FAIL_ACTION_DISCONNECT Defines the behavior when the API is unable to reconnect guaranteed delivery after reconnecting the session.
    void
    setGenerateRcvTimestamps(boolean generateRcvTimestamps)
    (Optional) Indicates whether to generate a receive timestamp on incoming messages.
    void
    setGenerateSenderId(boolean generateSenderId)
    (Optional) Indicates whether the client name should be included in the SenderID message header parameter.
    void
    setGenerateSendTimestamps(boolean generateSendTimestamps)
    (Optional) Indicates whether to generate a send timestamp in outgoing messages.
    void
    setGenerateSequenceNumbers(boolean generateSequenceNumbers)
    (Optional) Indicates whether to generate a sequence number in outgoing messages.
    void
    setIgnoreDuplicateSubscriptionError(boolean ignoreDuplicateSubscriptionError)
    On addSubscription(Subscription), addSubscription(Endpoint, Subscription, int), or addSubscriptions(XpeList), ignore errors caused by subscriptions being already present.
    void
    setIgnoreSubscriptionNotFoundError(boolean ignoreSubscriptionNotFoundError)
    On removeSubscription(Subscription), removeSubscription(Endpoint, Subscription, int), or removeSubscriptions(XpeList), ignore errors caused by subscriptions not being found.
    void
    setKrbServiceName(String krbServiceName)
    This property is used to specify the ServiceName portion of the Service Principal Name (SPN) that has a format of ServiceName/ApplianceName@REALM.
    void
    setMessageCallbackOnReactor(boolean messageCallbackOnReactor)
    If enabled, messages delivered asynchronously to an XMLMessageListener are delivered directly from the I/O thread instead of a consumer notification thread.
    void
    setNoLocal(boolean noLocal)
    If this property is true, messages published on the session will not be received on the same session even if the client has a subscription that matches the published topic.
    void
    setPubAckTime(int pubAckTime)
    The duration of the publisher acknowledgement timer (in milliseconds).
    void
    setPubAckWindowSize(int pubAckWindowSize)
    The size of the sliding publisher window for Guaranteed messages.
    void
    setPubUseIntermediateDirectBuf(boolean pubUseIntermediateDirectBuf)
    Defaults to true.
    void
    setReapplySubscriptions(boolean reapplySubscriptions)
    If enabled, the API maintains a local cache of subscriptions and reapplies them when the subscriber connection is reestablished.
    void
    setSubAckTime(int subAckTime)
    The duration of the subscriber ACK timer (in milliseconds).
    void
    setSubAckWindowSize(int subAckWindowSize)
    The size of the sliding subscriber ACK window.
    void
    setSubAckWindowThreshold(int subAckWindowThreshold)
    The threshold for sending an acknowledgement, configured as a percentage.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • SolaceJcsmpAdvancedConnectionProperties

      public SolaceJcsmpAdvancedConnectionProperties()
  • Method Details

    • applyAdvancedProperties

      public void applyAdvancedProperties(com.solacesystems.jcsmp.JCSMPProperties properties)
    • setClientAckMode

      public void setClientAckMode(boolean clientAckMode)
      (Optional) Indicates whether the acknowledgement of receiving a message is done by JCSMP automatically or by the application explicitly calling XMLMessage.ackMessage(). If message acknowledgement mode should be handled automatically, then set to "false". If however you wish for the more explicit client mode, set to "true".
    • getClientAckMode

      public boolean getClientAckMode()
      (Optional) Indicates whether the acknowledgement of receiving a message is done by JCSMP automatically or by the application explicitly calling XMLMessage.ackMessage(). If message acknowledgement mode should be handled automatically, then set to "false". If however you wish for the more explicit client mode, set to "true".
    • setApplicationDescription

      public void setApplicationDescription(String applicationDescription)
      (Optional) The client description to report to an appliance. The maximum length is 254 ASCII characters. Setting this property is optional.
    • getApplicationDescription

      public String getApplicationDescription()
      (Optional) The client description to report to an appliance. The maximum length is 254 ASCII characters. Setting this property is optional.
    • getClientName

      public String getClientName()
      (Optional) A unique client name to use to register to the appliance. If specified, it must be a valid Topic name, and a maximum of 160 bytes in length when encoded as UTF-8. If a value of "" is specified, the default (auto-generated) client name is applied.
    • setClientName

      public void setClientName(String clientName)
      (Optional) A unique client name to use to register to the appliance. If specified, it must be a valid Topic name, and a maximum of 160 bytes in length when encoded as UTF-8. If a value of "" is specified, the default (auto-generated) client name is applied.
    • setGenerateSenderId

      public void setGenerateSenderId(boolean generateSenderId)
      (Optional) Indicates whether the client name should be included in the SenderID message header parameter.
    • getGenerateSenderId

      public boolean getGenerateSenderId()
      (Optional) Indicates whether the client name should be included in the SenderID message header parameter.
    • setSubAckWindowSize

      public void setSubAckWindowSize(int subAckWindowSize)
      The size of the sliding subscriber ACK window. The valid range is 1-255.
    • getSubAckWindowSize

      public int getSubAckWindowSize()
      The size of the sliding subscriber ACK window. The valid range is 1-255.
    • setPubAckWindowSize

      public void setPubAckWindowSize(int pubAckWindowSize)
      The size of the sliding publisher window for Guaranteed messages. The Guaranteed Message Publish Window Size property limits the maximum number of messages that can be published before the API must receive an acknowledgement from the appliance. The valid range is 1-255.
    • getPubAckWindowSize

      public int getPubAckWindowSize()
      The size of the sliding publisher window for Guaranteed messages. The Guaranteed Message Publish Window Size property limits the maximum number of messages that can be published before the API must receive an acknowledgement from the appliance. The valid range is 1-255.
    • setSubAckTime

      public void setSubAckTime(int subAckTime)
      The duration of the subscriber ACK timer (in milliseconds). The valid range is 20-1500.
    • getSubAckTime

      public int getSubAckTime()
      The duration of the subscriber ACK timer (in milliseconds). The valid range is 20-1500.
    • setPubAckTime

      public void setPubAckTime(int pubAckTime)
      The duration of the publisher acknowledgement timer (in milliseconds). When a published message is not acknowledged within the time specified for this timer, the API automatically retransmits the message. The valid range is 20-60000.
    • getPubAckTime

      public int getPubAckTime()
      The duration of the publisher acknowledgement timer (in milliseconds). When a published message is not acknowledged within the time specified for this timer, the API automatically retransmits the message. The valid range is 20-60000.
    • setSubAckWindowThreshold

      public void setSubAckWindowThreshold(int subAckWindowThreshold)
      The threshold for sending an acknowledgement, configured as a percentage. The API sends a transport acknowledgment every N messages where N is calculated as this percentage of the flow window size if the endpoint's max-delivered-unacked-msgs-per-flow setting at bind time is greater than or equal to the transport window size. Otherwise, N is calculated as this percentage of the endpoint's max-delivered-unacked-msgs-per-flow setting at bind time. The valid range is 1-75.
    • getSubAckWindowThreshold

      public int getSubAckWindowThreshold()
      The threshold for sending an acknowledgement, configured as a percentage. The API sends a transport acknowledgment every N messages where N is calculated as this percentage of the flow window size if the endpoint's max-delivered-unacked-msgs-per-flow setting at bind time is greater than or equal to the transport window size. Otherwise, N is calculated as this percentage of the endpoint's max-delivered-unacked-msgs-per-flow setting at bind time. The valid range is 1-75.
    • setGenerateRcvTimestamps

      public void setGenerateRcvTimestamps(boolean generateRcvTimestamps)
      (Optional) Indicates whether to generate a receive timestamp on incoming messages.
    • getGenerateRcvTimestamps

      public boolean getGenerateRcvTimestamps()
      (Optional) Indicates whether to generate a receive timestamp on incoming messages.
    • setGenerateSendTimestamps

      public void setGenerateSendTimestamps(boolean generateSendTimestamps)
      (Optional) Indicates whether to generate a send timestamp in outgoing messages.
    • getGenerateSendTimestamps

      public boolean getGenerateSendTimestamps()
      (Optional) Indicates whether to generate a send timestamp in outgoing messages.
    • setGenerateSequenceNumbers

      public void setGenerateSequenceNumbers(boolean generateSequenceNumbers)
      (Optional) Indicates whether to generate a sequence number in outgoing messages.
    • getGenerateSequenceNumbers

      public boolean getGenerateSequenceNumbers()
      (Optional) Indicates whether to generate a sequence number in outgoing messages.
    • setCalculateMessageExpiration

      public void setCalculateMessageExpiration(boolean calculateMessageExpiration)
      (Optional) Indicates whether to calculate message expiration time in outgoing messages and incoming messages.
    • getCalculateMessageExpiration

      public boolean getCalculateMessageExpiration()
      (Optional) Indicates whether to calculate message expiration time in outgoing messages and incoming messages.
    • setReapplySubscriptions

      public void setReapplySubscriptions(boolean reapplySubscriptions)
      If enabled, the API maintains a local cache of subscriptions and reapplies them when the subscriber connection is reestablished. Reapply subscriptions will only apply direct topic subscriptions unpon a Session reconnect. It will not reapply topic subscriptions on durable and non-durable endpoints.
    • getReapplySubscriptions

      public boolean getReapplySubscriptions()
      If enabled, the API maintains a local cache of subscriptions and reapplies them when the subscriber connection is reestablished. Reapply subscriptions will only apply direct topic subscriptions unpon a Session reconnect. It will not reapply topic subscriptions on durable and non-durable endpoints.
    • setPubUseIntermediateDirectBuf

      public void setPubUseIntermediateDirectBuf(boolean pubUseIntermediateDirectBuf)
      Defaults to true. If enabled, during send operations, the XMLMessageProducer concatenates all published data to an intermediate direct ByteBuffer in the API, and writes only that buffer to the socket instead of performing a vectored write(ByteBuffer[]) operation. This can result in higher throughput for certain send operations. It can, however, lead to performance degradation for some scenarios with large messages or sendMultiple(...) operations, especially if messages are already using direct ByteBuffers for data storage. This property should be set to false in those conditions.
    • getPubUseIntermediateDirectBuf

      public boolean getPubUseIntermediateDirectBuf()
      Defaults to true. If enabled, during send operations, the XMLMessageProducer concatenates all published data to an intermediate direct ByteBuffer in the API, and writes only that buffer to the socket instead of performing a vectored write(ByteBuffer[]) operation. This can result in higher throughput for certain send operations. It can, however, lead to performance degradation for some scenarios with large messages or sendMultiple(...) operations, especially if messages are already using direct ByteBuffers for data storage. This property should be set to false in those conditions.
    • setMessageCallbackOnReactor

      public void setMessageCallbackOnReactor(boolean messageCallbackOnReactor)
      If enabled, messages delivered asynchronously to an XMLMessageListener are delivered directly from the I/O thread instead of a consumer notification thread. An application making use of this setting MUST return quickly from the onReceive() callback, and MUST NOT call ANY session methods from the I/O thread. The above means that calling any blocking methods from an XMLMessageListener callback is not supported and may cause an application to deadlock.
    • getMessageCallbackOnReactor

      public boolean getMessageCallbackOnReactor()
      If enabled, messages delivered asynchronously to an XMLMessageListener are delivered directly from the I/O thread instead of a consumer notification thread. An application making use of this setting MUST return quickly from the onReceive() callback, and MUST NOT call ANY session methods from the I/O thread. The above means that calling any blocking methods from an XMLMessageListener callback is not supported and may cause an application to deadlock.
    • setIgnoreDuplicateSubscriptionError

      public void setIgnoreDuplicateSubscriptionError(boolean ignoreDuplicateSubscriptionError)
      On addSubscription(Subscription), addSubscription(Endpoint, Subscription, int), or addSubscriptions(XpeList), ignore errors caused by subscriptions being already present.
    • getIgnoreDuplicateSubscriptionError

      public boolean getIgnoreDuplicateSubscriptionError()
      On addSubscription(Subscription), addSubscription(Endpoint, Subscription, int), or addSubscriptions(XpeList), ignore errors caused by subscriptions being already present.
    • setIgnoreSubscriptionNotFoundError

      public void setIgnoreSubscriptionNotFoundError(boolean ignoreSubscriptionNotFoundError)
      On removeSubscription(Subscription), removeSubscription(Endpoint, Subscription, int), or removeSubscriptions(XpeList), ignore errors caused by subscriptions not being found.
    • getIgnoreSubscriptionNotFoundError

      public boolean getIgnoreSubscriptionNotFoundError()
      On removeSubscription(Subscription), removeSubscription(Endpoint, Subscription, int), or removeSubscriptions(XpeList), ignore errors caused by subscriptions not being found.
    • setNoLocal

      public void setNoLocal(boolean noLocal)
      If this property is true, messages published on the session will not be received on the same session even if the client has a subscription that matches the published topic. If this restriction is requested and the appliance does not have No Local support, the session connect will fail.
    • getNoLocal

      public boolean getNoLocal()
      If this property is true, messages published on the session will not be received on the same session even if the client has a subscription that matches the published topic. If this restriction is requested and the appliance does not have No Local support, the session connect will fail.
    • setAckEventMode

      public void setAckEventMode(String ackEventMode)
      SUPPORTED_ACK_EVENT_MODE_PER_MSG or SUPPORTED_ACK_EVENT_MODE_WINDOWED If this property is set to SUPPORTED_ACK_EVENT_MODE_PER_MSG, the message acknowledgement event acknowledges a single published Guaranteed message; if this property is set to SUPPORTED_ACK_EVENT_MODE_WINDOWED, the message acknowledgement event acknowledges a range of published Guaranteed messages.
    • getAckEventMode

      public String getAckEventMode()
      SUPPORTED_ACK_EVENT_MODE_PER_MSG or SUPPORTED_ACK_EVENT_MODE_WINDOWED If this property is set to SUPPORTED_ACK_EVENT_MODE_PER_MSG, the message acknowledgement event acknowledges a single published Guaranteed message; if this property is set to SUPPORTED_ACK_EVENT_MODE_WINDOWED, the message acknowledgement event acknowledges a range of published Guaranteed messages.
    • setKrbServiceName

      public void setKrbServiceName(String krbServiceName)
      This property is used to specify the ServiceName portion of the Service Principal Name (SPN) that has a format of ServiceName/ApplianceName@REALM.
    • getKrbServiceName

      public String getKrbServiceName()
      This property is used to specify the ServiceName portion of the Service Principal Name (SPN) that has a format of ServiceName/ApplianceName@REALM.
    • setGdReconnectFailAction

      public void setGdReconnectFailAction(String gdReconnectFailAction)
      GD_RECONNECT_FAIL_ACTION_AUTO_RETRY or GD_RECONNECT_FAIL_ACTION_DISCONNECT Defines the behavior when the API is unable to reconnect guaranteed delivery after reconnecting the session. This may occur if the session is configured with a host list where each Solace router in the host list is unaware of state on the previous router. It can also occur if the time to reconnect to the same router exceeds the publisher flow timeout on the router.
    • getGdReconnectFailAction

      public String getGdReconnectFailAction()
      GD_RECONNECT_FAIL_ACTION_AUTO_RETRY or GD_RECONNECT_FAIL_ACTION_DISCONNECT Defines the behavior when the API is unable to reconnect guaranteed delivery after reconnecting the session. This may occur if the session is configured with a host list where each Solace router in the host list is unaware of state on the previous router. It can also occur if the time to reconnect to the same router exceeds the publisher flow timeout on the router.
    • setChannelConnectTimeoutInMillis

      public void setChannelConnectTimeoutInMillis(int channelConnectTimeoutInMillis)
      Timeout value (in ms) for creating an initial connection to the appliance. Valid values are >= 0. 0 means an infinite timeout.
    • getChannelConnectTimeoutInMillis

      public int getChannelConnectTimeoutInMillis()
      Timeout value (in ms) for creating an initial connection to the appliance. Valid values are >= 0. 0 means an infinite timeout.
    • setChannelReadTimeoutInMillis

      public void setChannelReadTimeoutInMillis(int channelReadTimeoutInMillis)
      Timeout value (in ms) for reading a reply from the appliance. Valid values are > 0. Note: For subscriber control channels, the default is 120000 ms.
    • getChannelReadTimeoutInMillis

      public int getChannelReadTimeoutInMillis()
      Timeout value (in ms) for reading a reply from the appliance. Valid values are > 0. Note: For subscriber control channels, the default is 120000 ms.
    • setChannelConnectRetries

      public void setChannelConnectRetries(int channelConnectRetries)
      The number of times to attempt and retry a connection to the host appliance (or list of appliances) during initial connection setup. Valid values are >= -1. Zero means no automatic connection retries (that is, try once and give up). -1 means "retry forever".
    • getChannelConnectRetries

      public int getChannelConnectRetries()
      The number of times to attempt and retry a connection to the host appliance (or list of appliances) during initial connection setup. Valid values are >= -1. Zero means no automatic connection retries (that is, try once and give up). -1 means "retry forever".
    • setChannelReconnectRetries

      public void setChannelReconnectRetries(int channelReconnectRetries)
      The number of times to attempt to reconnect to the appliance (or list of appliances) after an initial connected session goes down. Valid values are >= -1. -1 means "retry forever". 0 means no automatic reconnection retries (that is, try once and give up).
    • getChannelReconnectRetries

      public int getChannelReconnectRetries()
      The number of times to attempt to reconnect to the appliance (or list of appliances) after an initial connected session goes down. Valid values are >= -1. -1 means "retry forever". 0 means no automatic reconnection retries (that is, try once and give up).
    • setChannelConnectRetriesPerHost

      public void setChannelConnectRetriesPerHost(int channelConnectRetriesPerHost)
      When using a host list for the HOST property, this property defines how many times to try to connect or reconnect to a single host before moving to the next host in the list. NOTE: This property works in conjunction with the connect and reconnect retries settings; it does not replace them. Valid values are >= -1. 0 means make a single connection attempt (that is, 0 retries). -1 means attempt an infinite number of reconnect retries (that is, the API only tries to connect or reconnect to first host listed.)
    • getChannelConnectRetriesPerHost

      public int getChannelConnectRetriesPerHost()
      When using a host list for the HOST property, this property defines how many times to try to connect or reconnect to a single host before moving to the next host in the list. NOTE: This property works in conjunction with the connect and reconnect retries settings; it does not replace them. Valid values are >= -1. 0 means make a single connection attempt (that is, 0 retries). -1 means attempt an infinite number of reconnect retries (that is, the API only tries to connect or reconnect to first host listed.)
    • setChannelReconnectRetryWaitInMillis

      public void setChannelReconnectRetryWaitInMillis(int channelReconnectRetryWaitInMillis)
      How much time in (MS) to wait between each attempt to connect or reconnect to a host. If a connect or reconnect attempt to host is not successful, the API waits for the amount of time set for reconnectRetryWaitInMillis, and then makes another connect or reconnect attempt. Note: connectRetriesPerHost sets how many connection or reconnection attempts can be made before moving on to the next host in the list. See the HOST for more details on the reconnect logic. Valid values are 0 - 60000, inclusively.
    • getChannelReconnectRetryWaitInMillis

      public int getChannelReconnectRetryWaitInMillis()
      How much time in (MS) to wait between each attempt to connect or reconnect to a host. If a connect or reconnect attempt to host is not successful, the API waits for the amount of time set for reconnectRetryWaitInMillis, and then makes another connect or reconnect attempt. Note: connectRetriesPerHost sets how many connection or reconnection attempts can be made before moving on to the next host in the list. See the HOST for more details on the reconnect logic. Valid values are 0 - 60000, inclusively.
    • setChannelKeepAliveIntervalInMillis

      public void setChannelKeepAliveIntervalInMillis(int channelKeepAliveIntervalInMillis)
      The amount of time (in ms) to wait between sending out keep-alive messages. Typically, this feature should be enabled for message receivers. Valid values are >= 50. 0 disables the keepalive function. Note: If using compression on a session, the configured KeepAlive interval should be longer than the maximum time required to compress the largest message likely to be published.
    • getChannelKeepAliveIntervalInMillis

      public int getChannelKeepAliveIntervalInMillis()
      The amount of time (in ms) to wait between sending out keep-alive messages. Typically, this feature should be enabled for message receivers. Valid values are >= 50. 0 disables the keepalive function. Note: If using compression on a session, the configured KeepAlive interval should be longer than the maximum time required to compress the largest message likely to be published.
    • setChannelKeepAliveLimit

      public void setChannelKeepAliveLimit(int channelKeepAliveLimit)
      The maximum number of consecutive keep-alive messages that can be sent without receiving a response before the connection is closed by the API. Valid values are >= 3.
    • getChannelKeepAliveLimit

      public int getChannelKeepAliveLimit()
      The maximum number of consecutive keep-alive messages that can be sent without receiving a response before the connection is closed by the API. Valid values are >= 3.
    • setChannelSendBuffer

      public void setChannelSendBuffer(int channelSendBuffer)
      The size (in bytes) of the send socket buffer.
    • getChannelSendBuffer

      public int getChannelSendBuffer()
      The size (in bytes) of the send socket buffer.
    • setChannelReceiveBuffer

      public void setChannelReceiveBuffer(int channelReceiveBuffer)
      The size (in bytes) of the receive socket buffer.
    • getChannelReceiveBuffer

      public int getChannelReceiveBuffer()
      The size (in bytes) of the receive socket buffer.
    • setChannelTcpNoDelay

      public void setChannelTcpNoDelay(boolean channelTcpNoDelay)
      Whether to set the TCP_NODELAY option. When enabled, this option disables the Nagle's algorithm.
    • getChannelTcpNoDelay

      public boolean getChannelTcpNoDelay()
      Whether to set the TCP_NODELAY option. When enabled, this option disables the Nagle's algorithm.
    • setChannelCompressionLevel

      public void setChannelCompressionLevel(int channelCompressionLevel)
      A compressionLevel setting of 1-9 sets the ZLIB compression level to use; a setting of 0 disables compression entirely. From the ZLIB manual: [...] 1 gives best speed, 9 gives best compression, 0 gives no compression at all (the input data is simply copied a block at a time). Note: If using compression on a session, the configured KeepAlive interval should be longer than the maximum time required to compress the largest message likely to be published.
    • getChannelCompressionLevel

      public int getChannelCompressionLevel()
      A compressionLevel setting of 1-9 sets the ZLIB compression level to use; a setting of 0 disables compression entirely. From the ZLIB manual: [...] 1 gives best speed, 9 gives best compression, 0 gives no compression at all (the input data is simply copied a block at a time). Note: If using compression on a session, the configured KeepAlive interval should be longer than the maximum time required to compress the largest message likely to be published.