Package org.apache.activemq.artemis.api.jms

## Enum JMSFactoryType

- java.lang.Object
- - java.lang.Enum<JMSFactoryType>
  - - org.apache.activemq.artemis.api.jms.JMSFactoryType

- All Implemented Interfaces:
    `java.io.Serializable`, `java.lang.Comparable<JMSFactoryType>`

      public enum JMSFactoryType
      extends java.lang.Enum<JMSFactoryType>

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant | Description
    --- | ---
    `CF` |
    `QUEUE_CF` |
    `QUEUE_XA_CF` |
    `TOPIC_CF` |
    `TOPIC_XA_CF` |
    `XA_CF` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `abstract java.lang.Class` | `connectionFactoryInterface()` | Returns the connection factory interface that this JMSFactoryType creates.
    `abstract ActiveMQConnectionFactory` | `createConnectionFactoryWithHA​(DiscoveryGroupConfiguration groupConfiguration)` | Creates an ActiveMQConnectionFactory that receives cluster topology updates from the cluster as servers leave or join and new backups are appointed or removed.
    `abstract ActiveMQConnectionFactory` | `createConnectionFactoryWithHA​(TransportConfiguration... initialServers)` | Create an ActiveMQConnectionFactory which will receive cluster topology updates from the cluster as servers leave or join and new backups are appointed or removed.
    `abstract ActiveMQConnectionFactory` | `createConnectionFactoryWithoutHA​(DiscoveryGroupConfiguration groupConfiguration)` | Create an ActiveMQConnectionFactory which creates session factories from a set of live servers, no HA backup information is propagated to the client
    `abstract ActiveMQConnectionFactory` | `createConnectionFactoryWithoutHA​(TransportConfiguration... transportConfigurations)` | Create an ActiveMQConnectionFactory which creates session factories using a static list of transportConfigurations.
    `int` | `intValue()` |
    `static JMSFactoryType` | `valueOf​(int val)` | Returns the enum constant of this type with the specified name.
    `static JMSFactoryType` | `valueOf​(java.lang.String name)` | Returns the enum constant of this type with the specified name.
    `static JMSFactoryType[]` | `values()` | Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods inherited from class java.lang.Enum

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### CF

          public static final JMSFactoryType CF

    - #### QUEUE_CF

          public static final JMSFactoryType QUEUE_CF

    - #### TOPIC_CF

          public static final JMSFactoryType TOPIC_CF

    - #### XA_CF

          public static final JMSFactoryType XA_CF

    - #### QUEUE_XA_CF

          public static final JMSFactoryType QUEUE_XA_CF

    - #### TOPIC_XA_CF

          public static final JMSFactoryType TOPIC_XA_CF

  - ### Method Detail

    - #### values

          public static JMSFactoryType[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (JMSFactoryType c : JMSFactoryType.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static JMSFactoryType valueOf​(java.lang.String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `java.lang.IllegalArgumentException` - if this enum type has no constant with the specified name
        `java.lang.NullPointerException` - if the argument is null

    - #### intValue

          public int intValue()

    - #### valueOf

          public static JMSFactoryType valueOf​(int val)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `val` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `java.lang.IllegalArgumentException` - if this enum type has no constant with the specified name
        `java.lang.NullPointerException` - if the argument is null

    - #### createConnectionFactoryWithHA

          public abstract ActiveMQConnectionFactory createConnectionFactoryWithHA​(DiscoveryGroupConfiguration groupConfiguration)

      Creates an ActiveMQConnectionFactory that receives cluster topology updates from the cluster as servers leave or join and new backups are appointed or removed.

      The discoveryAddress and discoveryPort parameters in this method are used to listen for UDP broadcasts which contain connection information for members of the cluster. The broadcasted connection information is simply used to make an initial connection to the cluster, once that connection is made, up to date cluster topology information is downloaded and automatically updated whenever the cluster topology changes. If the topology includes backup servers that information is also propagated to the client so that it can know which server to failover onto in case of live server failure.

      Parameters:
        `groupConfiguration` -
      Returns:
        the ActiveMQConnectionFactory

    - #### createConnectionFactoryWithoutHA

          public abstract ActiveMQConnectionFactory createConnectionFactoryWithoutHA​(DiscoveryGroupConfiguration groupConfiguration)

      Create an ActiveMQConnectionFactory which creates session factories from a set of live servers, no HA backup information is propagated to the client

      The UDP address and port are used to listen for live servers in the cluster

      Parameters:
        `groupConfiguration` -
      Returns:
        the ActiveMQConnectionFactory

    - #### createConnectionFactoryWithHA

          public abstract ActiveMQConnectionFactory createConnectionFactoryWithHA​(TransportConfiguration... initialServers)

      Create an ActiveMQConnectionFactory which will receive cluster topology updates from the cluster as servers leave or join and new backups are appointed or removed.

      The initial list of servers supplied in this method is simply to make an initial connection to the cluster, once that connection is made, up to date cluster topology information is downloaded and automatically updated whenever the cluster topology changes. If the topology includes backup servers that information is also propagated to the client so that it can know which server to failover onto in case of live server failure.

      Parameters:
        `initialServers` - The initial set of servers used to make a connection to the cluster. Each one is tried in turn until a successful connection is made. Once a connection is made, the cluster topology is downloaded and the rest of the list is ignored.
      Returns:
        the ActiveMQConnectionFactory

    - #### createConnectionFactoryWithoutHA

          public abstract ActiveMQConnectionFactory createConnectionFactoryWithoutHA​(TransportConfiguration... transportConfigurations)

      Create an ActiveMQConnectionFactory which creates session factories using a static list of transportConfigurations.

      The ActiveMQConnectionFactory is not updated automatically as the cluster topology changes, and no HA backup information is propagated to the client

      Parameters:
        `transportConfigurations` -
      Returns:
        the ActiveMQConnectionFactory

    - #### connectionFactoryInterface

          public abstract java.lang.Class connectionFactoryInterface()

      Returns the connection factory interface that this JMSFactoryType creates.
      Returns:
        the javax.jms Class ConnectionFactory interface