Interface ConnectorSettings

All Known Implementing Classes:
ClientProvider

public interface ConnectorSettings
Provides constants for connection settings of the Liberty profile JMX REST connector client. The settings can be adjusted in 2 ways:

  1. Globally, by setting a system property with the desired value. For example, to set READ_TIMEOUT to 2 minutes (120000 milliseconds), use the Java option:

     -Dcom.ibm.ws.jmx.connector.client.rest.readTimeout=120000
     
  2. On a per connection basis, by adding an entry to the environment Map parameter of the JMXConnectorFactory.newJMXConnector(javax.management.remote.JMXServiceURL, java.util.Map) or JMXConnector.connect(java.util.Map) method.

     
     HashMap<String, Object> environment = new HashMap<String, Object>();
     environment.put("jmx.remote.protocol.provider.pkgs", "com.ibm.ws.jmx.connector.client");
     environment.put(JMXConnector.CREDENTIALS, new String[] { "bob", "bobpassword" });
     environment.put(ConnectorSettings.MAX_SERVER_WAIT_TIME, 120000);
    
     JMXServiceURL url = new JMXServiceURL("service:jmx:rest://<host>:<port>/IBMJMXConnectorREST");
     JMXConnector connector = JMXConnectorFactory.newJMXConnector(url, environment);
     connector.connect(environment);
     
     
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
    This parameter represents a request for an asynchronous execution within the collective.
    static final String
    Indicates that the JMXConnector.CREDENTIALS will be handled by SSL certificate based authentication.
    static final String
    This parameter represents a comma-separated list of host names within the collective.
    static final String
    Indicates that all JMX connections will use the specified SSLSocketFactory
    static final String
    Boolean setting that when enabled disables hostname verification on the client connections.
    static final String
    Integer setting for the amount of time in milliseconds that the client waits for the server to become available before the JMX connection fails and a new connection must be created.
    static final String
    Integer setting for the maximum amount of time in milliseconds that the server waits for new notifications before responding to a request for notifications from the client.
    static final String
    Integer setting for the amount of time in milliseconds that the client waits before making a new request to fetch notifications.
    static final String
    Integer setting for the amount of time in milliseconds that the server waits before discarding notification registrations if the client has not checked for new notifications.
    static final String
    Integer setting for the read timeout in milliseconds for notification fetching.
    static final String
    This parameter represents the request for a post transfer action within the collective.
    static final String
    This parameter represents the default value for the collective post-transfer-action.
    static final String
    This parameter represents the action of extarcting a severName from a Liberty zip package for the collective post-transfer-action.
    static final String
    This parameter represents the options pertaining to the collective post-transfer-action.
    static final String
    This parameter represents the request for a pre transfer action within the collective.
    static final String
    This parameter represents the default value for the collective pre-transfer-action.
    static final String
    This parameter represents the options pertaining to the collective pre-transfer-action.
    static final String
    Integer setting for the read timeout in milliseconds for all client communications with the server, except notification fetching.
    static final String
    This parameter represents the host name to be used in a routing context.
    static final String
    This parameter represents the server name to be used in a routing context.
    static final String
    This parameter represents the server user directory to be used in a routing context.
    static final String
    Integer setting for the amount of time in milliseconds that the client waits between checks that the server is still available.
    static final String
    Integer setting for the amount of time in milliseconds that the client waits between checks that the server is available again when MAX_SERVER_WAIT_TIME is non-zero.
    static final String
    This parameter represents the set of credentials to be used for the transfer action.
    static final String
    This parameter represents a set of environment variables and their corresponding values.
    static final String
    Work Load Management Endpoints
  • Field Details

    • DISABLE_HOSTNAME_VERIFICATION

      static final String DISABLE_HOSTNAME_VERIFICATION
      Boolean setting that when enabled disables hostname verification on the client connections. This can be useful for environments where the hostname used does not match the one specified in the server certificate.
      See Also:
    • NOTIFICATION_DELIVERY_INTERVAL

      static final String NOTIFICATION_DELIVERY_INTERVAL
      Integer setting for the maximum amount of time in milliseconds that the server waits for new notifications before responding to a request for notifications from the client. A larger value results in better notification delivery times because less time is spent establishing new connections. Normally it is not necessary to adjust this value.
      See Also:
    • NOTIFICATION_INBOX_EXPIRY

      static final String NOTIFICATION_INBOX_EXPIRY
      Integer setting for the amount of time in milliseconds that the server waits before discarding notification registrations if the client has not checked for new notifications. Normally it is not necessary to adjust this value.
      See Also:
    • NOTIFICATION_FETCH_INTERVAL

      static final String NOTIFICATION_FETCH_INTERVAL
      Integer setting for the amount of time in milliseconds that the client waits before making a new request to fetch notifications.
      See Also:
    • READ_TIMEOUT

      static final String READ_TIMEOUT
      Integer setting for the read timeout in milliseconds for all client communications with the server, except notification fetching. Adjust this value if the client throws read timeout exceptions because of a slow connection or client or server process.
      See Also:
    • NOTIFICATION_READ_TIMEOUT

      static final String NOTIFICATION_READ_TIMEOUT
      Integer setting for the read timeout in milliseconds for notification fetching. Because the server might wait up to NOTIFICATION_DELIVERY_INTERVAL before responding, this value must be somewhat larger, though normally it is not necessary to adjust this value.
      See Also:
    • SERVER_FAILOVER_INTERVAL

      static final String SERVER_FAILOVER_INTERVAL
      Integer setting for the amount of time in milliseconds that the client waits between checks that the server is still available. To disable this behaviour, set the value to a negative integer. This value is overridden by ConnectorSettings.NOTIFICATION_FETCH_INTERVAL whenever there are notification listeners registered with this client.
      See Also:
    • MAX_SERVER_WAIT_TIME

      static final String MAX_SERVER_WAIT_TIME
      Integer setting for the amount of time in milliseconds that the client waits for the server to become available before the JMX connection fails and a new connection must be created. If the connection is restored, any previous notification listeners are registered again. To disable this behavior, set the value to zero.
      See Also:
    • SERVER_STATUS_POLLING_INTERVAL

      static final String SERVER_STATUS_POLLING_INTERVAL
      Integer setting for the amount of time in milliseconds that the client waits between checks that the server is available again when MAX_SERVER_WAIT_TIME is non-zero. Normally it is not necessary to adjust this value.
      See Also:
    • CERTIFICATE_AUTHENTICATION

      static final String CERTIFICATE_AUTHENTICATION
      Indicates that the JMXConnector.CREDENTIALS will be handled by SSL certificate based authentication.
      See Also:
    • CUSTOM_SSLSOCKETFACTORY

      static final String CUSTOM_SSLSOCKETFACTORY
      Indicates that all JMX connections will use the specified SSLSocketFactory
      See Also:
    • WLM_ENDPOINTS

      static final String WLM_ENDPOINTS

      Work Load Management Endpoints

      List of Strings setting to indicate which endpoints, in addition to the host and port in the JMXServiceURL, are valid for establishing a connection. An endpoint is defined as "host:port".

      When the work load management endpoint list is set, the initial connection is made using one of the endpoints in the complete set of available endpoints. The complete set of endpoints is the host and port specified to the JMXServiceURL as well as the contents of the work load management endpoint list.

      This property is only supported in the programmatic JMX environment.

       
       List<String> endpoints = new ArrayList<String>
       endpoints.add("<host2>:<port>");
      
       HashMap<String, Object> environment = new HashMap<String, Object>();
       environment.put("jmx.remote.protocol.provider.pkgs", "com.ibm.ws.jmx.connector.client");
       environment.put(JMXConnector.CREDENTIALS, new String[] { "bob", "bobpassword" });
       environment.put(ConnectorSettings.WLM_ENDPOINTS, endpoints);
      
       JMXServiceURL url = new JMXServiceURL("service:jmx:rest://<host>:<port>/IBMJMXConnectorREST");
       JMXConnector connector = JMXConnectorFactory.newJMXConnector(url, environment);
       connector.connect(environment);
       
       
      The preceding code would establish the available endpoint set as host:port and host2:port.

      No ordering guarantees are made regarding which endpoint is ultimately used for the connection, but all endpoints will be tried in order to establish a connection. Only when all endpoints in the complete set are inaccessible is a connection considered to be unobtainable.

      Fail-over retry will occur if the invoked operation could not be started. If the connection is lost during an operation, no retry will be done so as to not issue the same command twice. In other words, if we loose the connection before the operation can report success, an IOException will be thrown and the operation will not be re-tried.

      See Also:
    • ROUTING_KEY_HOST_NAME

      static final String ROUTING_KEY_HOST_NAME
      This parameter represents the host name to be used in a routing context. This parameter is not applicable to the settings passed into the client-side of the JMX REST connector. It is used only by the file transfer RESTful endpoint and the Routing MBean, exposed by the server-side of the JMX REST connector.
      See Also:
    • ROUTING_KEY_SERVER_NAME

      static final String ROUTING_KEY_SERVER_NAME
      This parameter represents the server name to be used in a routing context. This parameter is not applicable to the settings passed into the client-side of the JMX REST connector. It is used only by the file transfer RESTful endpoint and the Routing MBean, exposed by the server-side of the JMX REST connector.
      See Also:
    • ROUTING_KEY_SERVER_USER_DIR

      static final String ROUTING_KEY_SERVER_USER_DIR
      This parameter represents the server user directory to be used in a routing context. This parameter is not applicable to the settings passed into the client-side of the JMX REST connector. It is used only by the file transfer RESTful endpoint and the Routing MBean, exposed by the server-side of the JMX REST connector.
      See Also:
    • COLLECTIVE_HOST_NAMES

      static final String COLLECTIVE_HOST_NAMES
      This parameter represents a comma-separated list of host names within the collective. This parameter is not applicable to the settings passed into the client-side of the JMX REST connector. It is used only by the file transfer RESTful endpoint, exposed by the server-side of the JMX REST connector.
      See Also:
    • ASYNC_EXECUTION

      static final String ASYNC_EXECUTION
      This parameter represents a request for an asynchronous execution within the collective. This parameter is not applicable to the settings passed into the client-side of the JMX REST connector. It is used only by the file transfer RESTful endpoint, exposed by the server-side of the JMX REST connector.
      See Also:
    • TRANSFER_CREDENTIALS

      static final String TRANSFER_CREDENTIALS
      This parameter represents the set of credentials to be used for the transfer action. The payload of the header is a JSON object with attributes from the CollectiveRegistrationMBean. Only credentials (user name, password, keys) are defined. The host and port attributes are not supported. This parameter is not applicable to the settings passed into the client-side of the JMX REST connector. It is used only by the file transfer RESTful endpoint, exposed by the server-side of the JMX REST connector.
      See Also:
    • PRE_TRANSFER_ACTION

      static final String PRE_TRANSFER_ACTION
      This parameter represents the request for a pre transfer action within the collective. This parameter is not applicable to the settings passed into the client-side of the JMX REST connector. It is used only by the file transfer RESTful endpoint, exposed by the server-side of the JMX REST connector.
      See Also:
    • POST_TRANSFER_ACTION

      static final String POST_TRANSFER_ACTION
      This parameter represents the request for a post transfer action within the collective. This parameter is not applicable to the settings passed into the client-side of the JMX REST connector. It is used only by the file transfer RESTful endpoint, exposed by the server-side of the JMX REST connector.
      See Also:
    • PRE_TRANSFER_ACTION_DEFAULT

      static final String PRE_TRANSFER_ACTION_DEFAULT
      This parameter represents the default value for the collective pre-transfer-action. This parameter is not applicable to the settings passed into the client-side of the JMX REST connector. It is used only by the file transfer RESTful endpoint, exposed by the server-side of the JMX REST connector.
      See Also:
    • POST_TRANSFER_ACTION_DEFAULT

      static final String POST_TRANSFER_ACTION_DEFAULT
      This parameter represents the default value for the collective post-transfer-action. This parameter is not applicable to the settings passed into the client-side of the JMX REST connector. It is used only by the file transfer RESTful endpoint, exposed by the server-side of the JMX REST connector.
      See Also:
    • POST_TRANSFER_ACTION_FIND_SERVER_NAME

      static final String POST_TRANSFER_ACTION_FIND_SERVER_NAME
      This parameter represents the action of extarcting a severName from a Liberty zip package for the collective post-transfer-action. This parameter is not applicable to the settings passed into the client-side of the JMX REST connector. It is used only by the file transfer RESTful endpoint, exposed by the server-side of the JMX REST connector.
      See Also:
    • PRE_TRANSFER_ACTION_OPTIONS

      static final String PRE_TRANSFER_ACTION_OPTIONS
      This parameter represents the options pertaining to the collective pre-transfer-action. This parameter is not applicable to the settings passed into the client-side of the JMX REST connector. It is used only by the file transfer RESTful endpoint, exposed by the server-side of the JMX REST connector.
      See Also:
    • POST_TRANSFER_ACTION_OPTIONS

      static final String POST_TRANSFER_ACTION_OPTIONS
      This parameter represents the options pertaining to the collective post-transfer-action. This parameter is not applicable to the settings passed into the client-side of the JMX REST connector. It is used only by the file transfer RESTful endpoint, exposed by the server-side of the JMX REST connector.
      See Also:
    • TRANSFER_ENV_VARS

      static final String TRANSFER_ENV_VARS
      This parameter represents a set of environment variables and their corresponding values. The payload of the header is a JSON object that has envKey : envValue pairs. This parameter is not applicable to the settings passed into the client-side of the JMX REST connector. It is used only by the file transfer RESTful endpoint, exposed by the server-side of the JMX REST connector.
      See Also: