Package com.webmethods.jms
Interface WmConnectionFactory
-
- All Superinterfaces:
javax.jms.ConnectionFactory
- All Known Subinterfaces:
WmQueueConnectionFactory
,WmTopicConnectionFactory
- All Known Implementing Classes:
WmConnectionFactoryImpl
,WmQueueConnectionFactoryImpl
,WmTopicConnectionFactoryImpl
,WmXAConnectionFactoryImpl
,WmXAQueueConnectionFactoryImpl
,WmXATopicConnectionFactoryImpl
public interface WmConnectionFactory extends javax.jms.ConnectionFactory
Interface defining webMethods extensions to javax.jms.ConnectionFactory and its subclasses.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
DEFAULT_APPLICATION_NAME
Default application name.static java.lang.String
DEFAULT_BROKER_LIST_ORDER
static java.lang.String
DEFAULT_CLIENT_GROUP
Default client group.static java.lang.String
DEFAULT_KEYSTORE_TYPE
static java.lang.String
DEFAULT_TRUSTSTORE_TYPE
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
compareConnectionFactory(java.lang.Object connFactory)
Define equality of connection factory statejavax.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 factoryjava.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 policyvoid
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.
-
-
-
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. UsegetBrokerList()
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. UsesetBrokerList(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 factoryuserData
- 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 usingsetMarshalOutClassName
.- 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 usinggetMarshalOut
.- 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 usingsetMarshalOutClassName
.- 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 factoryuserData
- 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 usingsetMarshalInClassName
.- 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 usinggetMarshalIn
.- 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
-
-
-