Interface WmConnectionFactory

    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      boolean compareConnectionFactory​(java.lang.Object connFactory)
      Define equality of connection factory state
      javax.jms.Connection createConnection​(java.lang.String userName, java.lang.String password, java.lang.String accessLabelHint)  
      java.lang.String getApplication()
      Get the client application for a connection created from this factory.
      java.util.concurrent.CopyOnWriteArrayList<java.lang.String> getBrokerCluster()
      Get the list of cluster Brokers assigned to this connection factory.
      java.lang.String getBrokerHost()
      Get the Broker host for a connection created from this factory.
      java.lang.String getBrokerList()
      Use this to get the Broker list for webMethods Broker Publisher Reconnect feature.
      java.lang.String getBrokerListOrder()
      Use this to get the Broker list for webMethods Broker Publisher Reconnect feature.
      java.lang.String getBrokerName()
      Get the Broker name for a connection created from this factory.
      java.lang.String getClientGroup()
      Gets the client group for this factory.
      java.lang.String getClientID()
      Gets the client identifier for this factory.
      long getClusterCreationTime()
      Get the time of creation of this cluster connection factory
      java.lang.String getClusterName()
      Get the cluster name of the connection factory.
      int getClusterPolicy()
      Get the integer constant representing the cluster policy assigned to this connection factory.
      java.lang.String getClusterPolicyName()
      Get the cluster policy name of the cluster connection factory.
      boolean getClusterPolicyOverride()
      Get if the user has overridden the cluster policy to enable custom stickiness.
      long getClusterRefreshInterval()
      Get the refresh interval for this connection factory.
      java.util.concurrent.CopyOnWriteArrayList<WmConnectionFactory> getCompositeChildConnFactories()
      Get the list of child cluster connection factory objects assigned to this connection factory.
      java.util.concurrent.CopyOnWriteArrayList<java.lang.String> getCompositeClusterCF()
      Get the list of JNDI look up names for the child cluster connection factories assigned to this connection factory.
      java.util.HashMap<java.lang.String,​java.util.List<java.lang.String>> getDocSizeDataMap()  
      java.util.concurrent.CopyOnWriteArrayList<DocumentSize> getDocSizeList()  
      boolean getIncludeAllBrokers()
      Get whether the include all flag is set.
      WmMarshalIn getMarshalIn()
      Get the inbound message marshalling object for connections created from this factory.
      java.lang.String getMarshalInClassName()
      Get the inbound message marshalling class name.
      WmMarshalOut getMarshalOut()
      Get the outbound message marshalling object for connections created from this factory.
      java.lang.String getMarshalOutClassName()
      Get the outbound message marshalling class name.
      int getMultiSendCount()
      Gets the count of N brokers in cluster for MULTISEND_GUARANTEED policy The JMS provider will ensure that a message is published to N out of M brokers in the Cluster for MULTISEND_GUARANTEED.
      boolean getReadOnly()
      Get whether this connection factory is read-only.
      boolean getSSLEncrypted()
      Get whether SSL encryption is enabled or disabled.
      java.lang.String getSSLKeystore()
      Get the SSL certificate keystore.
      java.lang.String getSSLKeystoreType()
      Get the SSL certificate keystore type.
      java.lang.String getSSLTruststore()
      Get the SSL truststore.
      java.lang.String getSSLTruststoreType()
      Get the SSL truststore type.
      java.util.HashMap<java.lang.String,​java.util.List<java.lang.String>> getWeightedRoundRobinDataMap()  
      java.util.concurrent.CopyOnWriteArrayList<WeightedRoundRobin> getWeightedRoundRobinList()
      Get a list of WeightedRoundRobin objects for the WEIGHTED_ROUND_ROBIN policy.
      boolean isClusterFactory()
      Checks whether this connection factory is associated with a cluster of Brokers.
      boolean isCompositeClusterFactory()
      Checks if this connection factory is a composite connection factory and hence associated with a list of child cluster connection factories.
      void setApplication​(java.lang.String application)
      Set the client application for a connection created from this factory.
      void setAutomaticControlLabel​(boolean enable)
      Enable broker to set control label automatically ( for webMethods' content based security )
      void setBrokerCluster​(java.lang.String[] brokers)
      Set the list of cluster Brokers for a connection created from this factory.
      void setBrokerHost​(java.lang.String brokerHost)
      Set the Broker host for a connection created from this factory.
      void setBrokerList​(java.lang.String brokerList)
      Use this to set the Broker list for webMethods Broker Publisher Reconnect feature.
      void setBrokerListOrder​(java.lang.String brokerListOrder)
      Use this to get the Broker list for webMethods Broker Publisher Reconnect feature.
      void setBrokerName​(java.lang.String brokerName)
      Set the Broker name for a connection created from this factory.
      void setClientGroup​(java.lang.String clientGroup)
      Sets the client group for a connection created from this factory.
      void setClientID​(java.lang.String clientID)
      Sets the client identifier for a connection created from this factory.
      void setClusterCreationTime​(long time)  
      void setClusterName​(java.lang.String name)
      Set the name of the cluster for the connection factory.
      void setClusterPolicy​(int policy)
      Set the specified cluster load balancing policy to this cluster connection factory.
      void setClusterPolicyName​(java.lang.String policyName)
      Set the cluster policy name to the cluster connection factory.
      void setClusterPolicyOverride​(boolean clusterPolicyOverride)
      Override the cluster policy to enable custom stickiness.
      void setClusterRefreshInterval​(long time)
      Set the refresh interval for this connection factory.
      void setCompositeChildConnFactories​(java.util.concurrent.CopyOnWriteArrayList<WmConnectionFactory> childConnFactories)
      Set a list of child Cluster Connection Factory objects for this connection factory.
      void setCompositeClusterCF​(java.lang.String[] connectionFactories)
      Assigns the list of child cluster connection factory names to this connection factory, which will enable it as a composite factory.
      void setDocSizeDataMap​(java.util.HashMap<java.lang.String,​java.util.List<java.lang.String>> map)  
      void setDocSizeList​(java.util.concurrent.CopyOnWriteArrayList<DocumentSize> docList)
      Sets the data for DocumentSize policy
      void setIncludeAllBrokers​(boolean includeAll)
      Sets the flag that would include all the brokers in the cluster If the flag is set all the brokers in the cluster will be included as a part of this connection factory.
      void setMarshalIn​(WmMarshalIn marshaller, java.lang.Object userData)
      Set the inbound message marshalling object for a connection created from this factory.
      void setMarshalInClassName​(java.lang.String className)
      Set the inbound message marshalling class name for connections created from this factory.
      void setMarshalOut​(WmMarshalOut marshaller, java.lang.Object userData)
      Set the outbound message marshalling object for a connection created from this factory.
      void setMarshalOutClassName​(java.lang.String className)
      Set the outbound message marshalling class name for connections created from this factory.
      void setMultiSendCount​(int count)
      Sets the count of N brokers for MULTISEND_GUARANTEED policy The JMS provider will ensure that a message is published to N out of M brokers in the Cluster for MULTISEND_GUARANTEED.
      void setReadOnly()
      Set this connection factory to read-only.
      void setSSLEncrypted​(boolean sslEncryption)
      Enable or disable SSL encryption..
      void setSSLKeystore​(java.lang.String sslKeystore)
      Set the SSL certificate keystore.
      void setSSLKeystoreType​(java.lang.String sslKeystoreType)
      Set the SSL certificate keystore type.
      void setSSLTruststore​(java.lang.String sslTruststore)
      Set the SSL truststore.
      void setSSLTruststoreType​(java.lang.String sslTruststoreType)
      Set the SSL truststore type.
      void setWeightedRoundRobinDataMap​(java.util.HashMap<java.lang.String,​java.util.List<java.lang.String>> map)  
      void setWeightedRoundRobinList​(java.util.concurrent.CopyOnWriteArrayList<WeightedRoundRobin> weightedList)
      Set a list of WeightedRoundRobin objects for the WEIGHTED_ROUND_ROBIN policy.
      • Methods inherited from interface javax.jms.ConnectionFactory

        createConnection, createConnection
    • Field Detail

      • DEFAULT_CLIENT_GROUP

        static final java.lang.String DEFAULT_CLIENT_GROUP
        Default client group.
        See Also:
        Constant Field Values
      • DEFAULT_APPLICATION_NAME

        static final java.lang.String DEFAULT_APPLICATION_NAME
        Default application name.
        See Also:
        Constant Field Values
      • DEFAULT_BROKER_LIST_ORDER

        static final java.lang.String DEFAULT_BROKER_LIST_ORDER
        See Also:
        Constant Field Values
      • DEFAULT_KEYSTORE_TYPE

        static final java.lang.String DEFAULT_KEYSTORE_TYPE
        See Also:
        Constant Field Values
      • DEFAULT_TRUSTSTORE_TYPE

        static final java.lang.String DEFAULT_TRUSTSTORE_TYPE
        See Also:
        Constant Field Values
    • Method Detail

      • setClientID

        void setClientID​(java.lang.String clientID)
                  throws javax.jms.JMSException
        Sets the client identifier for a connection created from this factory.
        Parameters:
        clientID - the unique client identifier
        Throws:
        javax.jms.JMSException - if the JMS provider fails to set the client ID for this factory due to some internal error.
        See Also:
        getClientID()
      • getClientID

        java.lang.String getClientID()
                              throws javax.jms.JMSException
        Gets the client identifier for this factory.
        Returns:
        the unique client identifier
        Throws:
        javax.jms.JMSException - if the JMS provider fails to return the client ID for this connection due to some internal error.
        See Also:
        setClientID(java.lang.String)
      • setClientGroup

        void setClientGroup​(java.lang.String clientGroup)
                     throws javax.jms.JMSException
        Sets the client group for a connection created from this factory.
        Parameters:
        clientGroup - the connection's client group
        Throws:
        javax.jms.JMSException - if the JMS provider fails to set the client group for this factory due to some internal error.
        See Also:
        getClientGroup()
      • getClientGroup

        java.lang.String getClientGroup()
                                 throws javax.jms.JMSException
        Gets the client group for this factory.
        Returns:
        the connection's client group
        Throws:
        javax.jms.JMSException - if the JMS provider fails to return the client group for this connection due to some internal error.
        See Also:
        setClientGroup(java.lang.String)
      • setBrokerName

        void setBrokerName​(java.lang.String brokerName)
                    throws javax.jms.JMSException
        Set the Broker name for a connection created from this factory.
        Parameters:
        brokerName - the connection's Broker name
        Throws:
        javax.jms.JMSException - if the JMS provider fails to set the Broker name for this factory due to some internal error.
        See Also:
        getBrokerName()
      • getBrokerName

        java.lang.String getBrokerName()
                                throws javax.jms.JMSException
        Get the Broker name for a connection created from this factory.
        Returns:
        the connection's Broker name
        Throws:
        javax.jms.JMSException - if the JMS provider fails to return the Broker name for this connection due to some internal error.
        See Also:
        setBrokerName(java.lang.String)
      • setBrokerHost

        void setBrokerHost​(java.lang.String brokerHost)
                    throws javax.jms.JMSException
        Set the Broker host for a connection created from this factory.
        Parameters:
        brokerHost - the connection's Broker host
        Throws:
        javax.jms.JMSException - if the JMS provider fails to set the Broker host for this factory due to some internal error.
        See Also:
        getBrokerHost()
      • getBrokerHost

        java.lang.String getBrokerHost()
                                throws javax.jms.JMSException
        Get the Broker host for a connection created from this factory.
        Returns:
        the connection's Broker host
        Throws:
        javax.jms.JMSException - if the JMS provider fails to return the Broker host for this connection due to some internal error.
        See Also:
        setBrokerHost(java.lang.String)
      • setBrokerList

        void setBrokerList​(java.lang.String brokerList)
                    throws javax.jms.JMSException
        Use this to set the Broker list for webMethods Broker Publisher Reconnect feature. See the webMethods Broker Messaging Guide for more details on the feature. Use getBrokerList() for fetching the list of Brokers for the Publisher Reconnect feature. A set of comma delimited list of Broker addresses for this factory. The syntax for a Broker address is:
                 [Broker Name]@host[:port]
         
        The list also supports the "-random" keyword. By inserting the keyword "-random" into the list the Broker addresses following the keyword "-random" will be shuffled.
        Parameters:
        brokerList - a comma delimited list of Broker addresses
        Throws:
        javax.jms.JMSException - if the JMS provider fails to set the list of Broker addresses for this factory due to some internal error.
      • setBrokerListOrder

        void setBrokerListOrder​(java.lang.String brokerListOrder)
                         throws javax.jms.JMSException
        Use this to get the Broker list for webMethods Broker Publisher Reconnect feature. See the webMethods Broker Messaging Guide for more details on the feature. Set the order to connect with Brokers list
        Parameters:
        brokerListOrder - Random or Sequential
        Throws:
        javax.jms.JMSException - if the JMS provider fails to set the list of Broker addresses for this factory due to some internal error.
      • getBrokerList

        java.lang.String getBrokerList()
                                throws javax.jms.JMSException
        Use this to get the Broker list for webMethods Broker Publisher Reconnect feature. See the webMethods Broker Messaging Guide for more details on the feature. Use setBrokerList(String) for setting the Broker list. It does not give you a list of Brokers in the JMS client-side policy based cluster. Get the comma delimited list of Broker addresses for this factory.
        Returns:
        the comma delimited list of Broker addresses
        Throws:
        javax.jms.JMSException - if the JMS provider fails to return the list of Broker addresses for this connection due to some internal error.
      • getBrokerListOrder

        java.lang.String getBrokerListOrder()
                                     throws javax.jms.JMSException
        Use this to get the Broker list for webMethods Broker Publisher Reconnect feature. See the webMethods Broker Messaging Guide for more details on the feature. Get the order to connect with brokers list
        Returns:
        broker list order
        Throws:
        javax.jms.JMSException - if the JMS provider fails to return the list of Broker addresses for this connection due to some internal error.
      • setApplication

        void setApplication​(java.lang.String application)
                     throws javax.jms.JMSException
        Set the client application for a connection created from this factory.
        Parameters:
        application - the connection's application
        Throws:
        javax.jms.JMSException - if the JMS provider fails to set the application for this connection due to some internal error.
        See Also:
        getApplication()
      • getApplication

        java.lang.String getApplication()
                                 throws javax.jms.JMSException
        Get the client application for a connection created from this factory.
        Returns:
        the connection's application
        Throws:
        javax.jms.JMSException - if the JMS provider fails to return the application for this connection due to some internal error.
        See Also:
        setApplication(java.lang.String)
      • setSSLKeystore

        void setSSLKeystore​(java.lang.String sslKeystore)
                     throws javax.jms.JMSException
        Set the SSL certificate keystore.
        Parameters:
        sslKeystore - the SSL certificate keystore
        Throws:
        javax.jms.JMSException - if the JMS provider fails to set the SSL certificate keystore for this connection due to some internal error.
      • setSSLKeystoreType

        void setSSLKeystoreType​(java.lang.String sslKeystoreType)
                         throws javax.jms.JMSException
        Set the SSL certificate keystore type.
        Parameters:
        sslKeystoreType - the SSL certificate keystore type
        Throws:
        javax.jms.JMSException - if the JMS provider fails to set the SSL certificate keystore type for this connection due to some internal error.
      • setSSLTruststore

        void setSSLTruststore​(java.lang.String sslTruststore)
                       throws javax.jms.JMSException
        Set the SSL truststore.
        Parameters:
        sslTruststore - the SSL truststore
        Throws:
        javax.jms.JMSException - if the JMS provider fails to set the SSL truststore for this connection due to some internal error.
      • setSSLTruststoreType

        void setSSLTruststoreType​(java.lang.String sslTruststoreType)
                           throws javax.jms.JMSException
        Set the SSL truststore type.
        Parameters:
        sslTruststoreType - the SSL truststore type
        Throws:
        javax.jms.JMSException - if the JMS provider fails to set the SSL truststore type for this connection due to some internal error.
      • getSSLKeystore

        java.lang.String getSSLKeystore()
                                 throws javax.jms.JMSException
        Get the SSL certificate keystore.
        Returns:
        the SSL certificate keystore
        Throws:
        javax.jms.JMSException - if the JMS provider fails to get the SSL certificate keystore for this connection due to some internal error.
      • getSSLKeystoreType

        java.lang.String getSSLKeystoreType()
                                     throws javax.jms.JMSException
        Get the SSL certificate keystore type.
        Returns:
        the SSL certificate keystore type
        Throws:
        javax.jms.JMSException - if the JMS provider fails to get the SSL certificate keystore type for this connection due to some internal error.
      • getSSLTruststore

        java.lang.String getSSLTruststore()
                                   throws javax.jms.JMSException
        Get the SSL truststore.
        Returns:
        the SSL truststore
        Throws:
        javax.jms.JMSException - if the JMS provider fails to get the SSL truststore for this connection due to some internal error.
      • getSSLTruststoreType

        java.lang.String getSSLTruststoreType()
                                       throws javax.jms.JMSException
        Get the SSL truststore type.
        Returns:
        the SSL truststore type
        Throws:
        javax.jms.JMSException - if the JMS provider fails to get the SSL truststore type for this connection due to some internal error.
      • setSSLEncrypted

        void setSSLEncrypted​(boolean sslEncryption)
                      throws javax.jms.JMSException
        Enable or disable SSL encryption..
        Parameters:
        sslEncryption - true to encrypt the data
        Throws:
        javax.jms.JMSException - if the JMS provider fails to set the encryption for this connection due to some internal error.
      • getSSLEncrypted

        boolean getSSLEncrypted()
                         throws javax.jms.JMSException
        Get whether SSL encryption is enabled or disabled.
        Returns:
        true if encryption is enabled
        Throws:
        javax.jms.JMSException - if the JMS provider fails to get whether SSL encryption is enabled or disabled for this connection due to some internal error.
      • setMarshalOut

        void setMarshalOut​(WmMarshalOut marshaller,
                           java.lang.Object userData)
                    throws javax.jms.JMSException
        Set the outbound message marshalling object for a connection created from this factory.
        Parameters:
        marshaller - the marshaller that will be called for each message that is published or sent on the connections created from this factory
        userData - a user Object that will be passed to the marshaller on each invocation
        Throws:
        javax.jms.JMSException - if the JMS provider fails to set the marshalling object for this connection due to some internal error.
        See Also:
        setMarshalIn(com.webmethods.jms.marshal.WmMarshalIn, java.lang.Object), WmMarshalOut
      • getMarshalOut

        WmMarshalOut getMarshalOut()
                            throws javax.jms.JMSException
        Get the outbound message marshalling object for connections created from this factory.

        If the marshaller was set using the classname method, the class is instantiated at this time if it hasn't already been created.

        Returns:
        the marshaller that will be called for each message that is published or sent on the connections created from this factory
        Throws:
        javax.jms.JMSException - if the ConnectionFactory is unable to return the marshalling object. Generally this is caused by problems instantiating the marshalling object from the class specified using setMarshalOutClassName.
        See Also:
        setMarshalOut(com.webmethods.jms.marshal.WmMarshalOut, java.lang.Object), setMarshalOutClassName(String), WmMarshalOut
      • setMarshalOutClassName

        void setMarshalOutClassName​(java.lang.String className)
                             throws javax.jms.JMSException
        Set the outbound message marshalling class name for connections created from this factory.

        The class will be instantiated when the first connection is created from the ConnectionFactory or when the marshalling object is retrieved using getMarshalOut.

        Parameters:
        className - the class for the marshaller that will be called for each message that is published or sent on the connections created from this factory
        Throws:
        javax.jms.JMSException - if the JMS provider fails to set the marshalling class name.
        See Also:
        getMarshalOutClassName(), WmMarshalOut
      • getMarshalOutClassName

        java.lang.String getMarshalOutClassName()
                                         throws javax.jms.JMSException
        Get the outbound message marshalling class name.
        Returns:
        the name of the class of the marshaller that will be called for each message that is published or sent on the connections created from this factory
        Throws:
        javax.jms.JMSException - if the ConnectionFactory is unable to return the marshalling object. Generally this is caused by problems instantiating the marshalling object from the class specified using setMarshalOutClassName.
        See Also:
        setMarshalOutClassName(String), WmMarshalOut
      • setMarshalIn

        void setMarshalIn​(WmMarshalIn marshaller,
                          java.lang.Object userData)
                   throws javax.jms.JMSException
        Set the inbound message marshalling object for a connection created from this factory.
        Parameters:
        marshaller - the marshaller that will be called for each event that is received from the broker on the connections created from this factory
        userData - a user Object that will be passed to the marshaller on each invocation
        Throws:
        javax.jms.JMSException - if the ConnectionFactory is unable to return the marshalling class name.
        See Also:
        setMarshalOut(com.webmethods.jms.marshal.WmMarshalOut, java.lang.Object), WmMarshalIn
      • getMarshalIn

        WmMarshalIn getMarshalIn()
                          throws javax.jms.JMSException
        Get the inbound message marshalling object for connections created from this factory.

        If the marshaller was set using the classname method, the class is instantiated at this time if it hasn't already been created.

        Returns:
        the marshaller the marshaller that will be called for each event that is received from the broker on the connections created from this factory
        Throws:
        javax.jms.JMSException - if the ConnectionFactory is unable to return the marshalling object. Generally this is caused by problems instantiating the marshalling object from the class specified using setMarshalInClassName.
        See Also:
        setMarshalIn(com.webmethods.jms.marshal.WmMarshalIn, java.lang.Object), setMarshalInClassName(String), WmMarshalIn
      • setMarshalInClassName

        void setMarshalInClassName​(java.lang.String className)
                            throws javax.jms.JMSException
        Set the inbound message marshalling class name for connections created from this factory.

        The class will be instantiated when the first connection is created from the ConnectionFactory or when the marshalling object is retrieved using getMarshalIn.

        Parameters:
        className - the class for the marshaller that will be called for each message that is received on the connections created from this factory
        Throws:
        javax.jms.JMSException - if the JMS provider fails to set the marshalling class name.
        See Also:
        getMarshalInClassName(), WmMarshalIn
      • getMarshalInClassName

        java.lang.String getMarshalInClassName()
                                        throws javax.jms.JMSException
        Get the inbound message marshalling class name.
        Returns:
        the name of the class of the marshaller that will be called for each message that is received on the connections created from this factory
        Throws:
        javax.jms.JMSException - if the ConnectionFactory is unable to return the marshalling class name.
        See Also:
        setMarshalInClassName(String), WmMarshalIn
      • setReadOnly

        void setReadOnly()
                  throws javax.jms.JMSException
        Set this connection factory to read-only. Once set to read-only none of the connection factory's attributes can be modified.
        Throws:
        javax.jms.JMSException
        See Also:
        getReadOnly()
      • getReadOnly

        boolean getReadOnly()
                     throws javax.jms.JMSException
        Get whether this connection factory is read-only.
        Returns:
        whether this connection factory is read-only
        Throws:
        javax.jms.JMSException
      • setAutomaticControlLabel

        void setAutomaticControlLabel​(boolean enable)
                               throws javax.jms.JMSException
        Enable broker to set control label automatically ( for webMethods' content based security )
        Parameters:
        enable -
        Throws:
        javax.jms.JMSException
      • createConnection

        javax.jms.Connection createConnection​(java.lang.String userName,
                                              java.lang.String password,
                                              java.lang.String accessLabelHint)
                                       throws javax.jms.JMSException
        Throws:
        javax.jms.JMSException
      • setBrokerCluster

        void setBrokerCluster​(java.lang.String[] brokers)
                       throws javax.jms.JMSException
        Set the list of cluster Brokers for a connection created from this factory. This will enable the factory to work as a cluster connection factory.
        Parameters:
        brokers - - Array of Broker URLs. Each Broker URL must be specified as brokername@hostname:port.
        Throws:
        javax.jms.JMSException
      • getBrokerCluster

        java.util.concurrent.CopyOnWriteArrayList<java.lang.String> getBrokerCluster()
        Get the list of cluster Brokers assigned to this connection factory.
        Returns:
        cluster Brokers assigned to this connection factory.
      • isClusterFactory

        boolean isClusterFactory()
        Checks whether this connection factory is associated with a cluster of Brokers.
        Returns:
        true if this connection factory has one or more cluster Brokers assigned to it.
      • setClusterPolicy

        void setClusterPolicy​(int policy)
                       throws javax.jms.JMSException
        Set the specified cluster load balancing policy to this cluster connection factory. The messages are distributed to the cluster Brokers based on the cluster policy.
        Parameters:
        policy - - a cluster policy constant from the defined list below WmClusterPolicyManager.ROUND_ROBIN 0 (default) WmClusterPolicyManager.STICKY 1 WmClusterPolicyManager.RANDOM 2 WmClusterPolicyManager.WEIGHTED_ROUND_ROBIN 3 WmClusterPolicyManager.MULTISEND_GUARANTEED 4 WmClusterPolicyManager.MULTISEND_BEST_EFFORT 5
        Throws:
        javax.jms.JMSException - if the policy is not supported for the type of connection factory . ex: Multi Send Best effort policy is not supported for XA connection factory.
      • setClusterPolicyName

        void setClusterPolicyName​(java.lang.String policyName)
                           throws javax.jms.JMSException
        Set the cluster policy name to the cluster connection factory.
        Parameters:
        policyName - - a Cluster policy name from the below list ROUND_ROBIN (default) STICKY RANDOM WEIGHTED_ROUND_ROBIN MULTISEND_GUARANTEED MULTISEND_BEST_EFFORT
        Throws:
        javax.jms.JMSException
      • getClusterPolicyName

        java.lang.String getClusterPolicyName()
                                       throws javax.jms.JMSException
        Get the cluster policy name of the cluster connection factory.
        Returns:
        cluster policy name
        Throws:
        javax.jms.JMSException
      • getClusterPolicy

        int getClusterPolicy()
        Get the integer constant representing the cluster policy assigned to this connection factory.
        Returns:
        cluster policy constant WmClusterPolicyManager.ROUND_ROBIN 0 WmClusterPolicyManager.STICKY 1 WmClusterPolicyManager.RANDOM 2 WmClusterPolicyManager.WEIGHTED_ROUND_ROBIN 3 WmClusterPolicyManager.MULTISEND_GUARANTEED 4 WmClusterPolicyManager.MULTISEND_BEST_EFFORT 5
      • getClusterName

        java.lang.String getClusterName()
        Get the cluster name of the connection factory.
        Returns:
        cluster name
      • setClusterName

        void setClusterName​(java.lang.String name)
        Set the name of the cluster for the connection factory. This will used if includeAllBrokers is true to retrieve the other Brokers in the cluster.
        Parameters:
        name - Cluster name
        See Also:
        setIncludeAllBrokers(boolean)
      • setClusterRefreshInterval

        void setClusterRefreshInterval​(long time)
        Set the refresh interval for this connection factory. This is used to refresh the connections to cluster brokers if the connection factory is modified. Default interval is 24 hours if no value is specified.
        Parameters:
        time - in minutes
      • getClusterRefreshInterval

        long getClusterRefreshInterval()
        Get the refresh interval for this connection factory.
        Returns:
        cluster refresh interval
      • setClusterCreationTime

        void setClusterCreationTime​(long time)
        Parameters:
        time -
      • getClusterCreationTime

        long getClusterCreationTime()
        Get the time of creation of this cluster connection factory
        Returns:
        time of creation of this factory
      • getIncludeAllBrokers

        boolean getIncludeAllBrokers()
        Get whether the include all flag is set. which would include all the brokers in the cluster
        Returns:
        include all brokers flag
      • setIncludeAllBrokers

        void setIncludeAllBrokers​(boolean includeAll)
        Sets the flag that would include all the brokers in the cluster If the flag is set all the brokers in the cluster will be included as a part of this connection factory. Any new brokers added to cluster at a later point in time would be automatically included to the factory broker list.
        Parameters:
        includeAll - flag to include all the brokers in the cluster.
      • getWeightedRoundRobinList

        java.util.concurrent.CopyOnWriteArrayList<WeightedRoundRobin> getWeightedRoundRobinList()
        Get a list of WeightedRoundRobin objects for the WEIGHTED_ROUND_ROBIN policy. Each WeightedRoundRobin object encapsulates the broker URL in the cluster and the corresponding weight assigned to it for load balancing.
        Returns:
        List of WeightedRoundRobin objects
      • setWeightedRoundRobinList

        void setWeightedRoundRobinList​(java.util.concurrent.CopyOnWriteArrayList<WeightedRoundRobin> weightedList)
        Set a list of WeightedRoundRobin objects for the WEIGHTED_ROUND_ROBIN policy. Each WeightedRoundRobin object encapsulates the broker URL in the cluster and the corresponding weight assigned to it for load balancing.
        Parameters:
        weightedList - List of WeightedRoundRobin objects
      • setWeightedRoundRobinDataMap

        void setWeightedRoundRobinDataMap​(java.util.HashMap<java.lang.String,​java.util.List<java.lang.String>> map)
      • getWeightedRoundRobinDataMap

        java.util.HashMap<java.lang.String,​java.util.List<java.lang.String>> getWeightedRoundRobinDataMap()
      • setMultiSendCount

        void setMultiSendCount​(int count)
                        throws javax.jms.JMSException
        Sets the count of N brokers for MULTISEND_GUARANTEED policy The JMS provider will ensure that a message is published to N out of M brokers in the Cluster for MULTISEND_GUARANTEED. For MULTISEND_BEST_EFFORT, this value ensures a maximum of N publishes.
        Parameters:
        count -
        Throws:
        javax.jms.JMSException - , if the count is less than 1 .
      • getMultiSendCount

        int getMultiSendCount()
        Gets the count of N brokers in cluster for MULTISEND_GUARANTEED policy The JMS provider will ensure that a message is published to N out of M brokers in the Cluster for MULTISEND_GUARANTEED. For MULTISEND_BEST_EFFORT, this value ensures a maximum of N publishes.
        Returns:
        the Broker count for MULTISEND_GUARANTEED policy
      • getDocSizeList

        java.util.concurrent.CopyOnWriteArrayList<DocumentSize> getDocSizeList()
        Returns:
        List of DocumentSize Objects
      • setDocSizeList

        void setDocSizeList​(java.util.concurrent.CopyOnWriteArrayList<DocumentSize> docList)
        Sets the data for DocumentSize policy
        Parameters:
        docList -
      • setDocSizeDataMap

        void setDocSizeDataMap​(java.util.HashMap<java.lang.String,​java.util.List<java.lang.String>> map)
        Parameters:
        map -
      • getDocSizeDataMap

        java.util.HashMap<java.lang.String,​java.util.List<java.lang.String>> getDocSizeDataMap()
        Returns:
        Map
      • setCompositeClusterCF

        void setCompositeClusterCF​(java.lang.String[] connectionFactories)
        Assigns the list of child cluster connection factory names to this connection factory, which will enable it as a composite factory. The list corresponds to the JNDI look up names of the child cluster connection factories.
      • getCompositeClusterCF

        java.util.concurrent.CopyOnWriteArrayList<java.lang.String> getCompositeClusterCF()
        Get the list of JNDI look up names for the child cluster connection factories assigned to this connection factory.
        Returns:
        List of JNDI look up names for the child cluster connection factories.
      • isCompositeClusterFactory

        boolean isCompositeClusterFactory()
        Checks if this connection factory is a composite connection factory and hence associated with a list of child cluster connection factories. Composite Connection Factory will distribute messages to each of the cluster factories based on the composite cluster policy.
        Returns:
        true if this connection factory has one or more cluster connection factories assigned to it.
      • compareConnectionFactory

        boolean compareConnectionFactory​(java.lang.Object connFactory)
        Define equality of connection factory state
      • setCompositeChildConnFactories

        void setCompositeChildConnFactories​(java.util.concurrent.CopyOnWriteArrayList<WmConnectionFactory> childConnFactories)
                                     throws javax.jms.JMSException
        Set a list of child Cluster Connection Factory objects for this connection factory. This would enable the factory as a composite factory containing one or more child cluster factories. Each child cluster connection factory object in turn contains all the cluster broker and load balancing policy details it is governed by.
        Parameters:
        childConnFactories - of child cluster connection factory objects
        Throws:
        javax.jms.JMSException
      • getCompositeChildConnFactories

        java.util.concurrent.CopyOnWriteArrayList<WmConnectionFactory> getCompositeChildConnFactories()
                                                                                               throws javax.jms.JMSException
        Get the list of child cluster connection factory objects assigned to this connection factory. If only look up names of the child factory objects has been specified using setCompositeClusterCF() API , it would look up and return the factory objects from JNDI provider.
        Returns:
        List of child cluster connection factory objects
        Throws:
        javax.jms.JMSException - If it failed to get the list of Connection Factory objects.
      • getClusterPolicyOverride

        boolean getClusterPolicyOverride()
        Get if the user has overridden the cluster policy to enable custom stickiness.
        Returns:
        true if this connection factory has the cluster policy overridden by user.
      • setClusterPolicyOverride

        void setClusterPolicyOverride​(boolean clusterPolicyOverride)
        Override the cluster policy to enable custom stickiness.
        Parameters:
        clusterPolicyOverride -