## Uses of Interface
org.apache.activemq.artemis.api.core.client.ServerLocator

- Packages that use ServerLocator
  Package | Description
  --- | ---
  org.apache.activemq.artemis.api.core.client |
  org.apache.activemq.artemis.api.core.management |
  org.apache.activemq.artemis.jms.client |
  org.apache.activemq.artemis.spi.core.remoting |
  org.apache.activemq.artemis.uri.schema.serverLocator |

- - ### Uses of ServerLocator in org.apache.activemq.artemis.api.core.client

    Methods in org.apache.activemq.artemis.api.core.client that return ServerLocator
    Modifier and Type | Method | Description
    --- | --- | ---
    `ServerLocator` | ServerLocator.`addClusterTopologyListener​(ClusterTopologyListener listener)` |
    `ServerLocator` | ServerLocator.`addIncomingInterceptor​(Interceptor interceptor)` | Adds an interceptor which will be executed after packets are received from the server.
    `ServerLocator` | ServerLocator.`addOutgoingInterceptor​(Interceptor interceptor)` | Adds an interceptor which will be executed before packets are sent to the server.
    `static ServerLocator` | ActiveMQClient.`createServerLocator​(boolean ha, DiscoveryGroupConfiguration groupConfiguration)` | Create a ServerLocator 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
    `static ServerLocator` | ActiveMQClient.`createServerLocator​(boolean ha, TransportConfiguration... transportConfigurations)` | Create a ServerLocator which creates session factories using a static list of transportConfigurations, the ServerLocator is not updated automatically as the cluster topology changes, and no HA backup information is propagated to the client
    `static ServerLocator` | ActiveMQClient.`createServerLocator​(java.lang.String url)` | Creates an ActiveMQConnectionFactory;
    `static ServerLocator` | ActiveMQClient.`createServerLocatorWithHA​(DiscoveryGroupConfiguration groupConfiguration)` | Create a ServerLocator which will receive cluster topology updates from the cluster as servers leave or join and new backups are appointed or removed.
    `static ServerLocator` | ActiveMQClient.`createServerLocatorWithHA​(TransportConfiguration... initialServers)` | Create a ServerLocator which will receive cluster topology updates from the cluster as servers leave or join and new backups are appointed or removed.
    `static ServerLocator` | ActiveMQClient.`createServerLocatorWithoutHA​(DiscoveryGroupConfiguration groupConfiguration)` | Create a ServerLocator which creates session factories from a set of live servers, no HA backup information is propagated to the client
    `static ServerLocator` | ActiveMQClient.`createServerLocatorWithoutHA​(TransportConfiguration... transportConfigurations)` | Create a ServerLocator which creates session factories using a static list of transportConfigurations, the ServerLocator is not updated automatically as the cluster topology changes, and no HA backup information is propagated to the client
    `ServerLocator` | ClientSessionFactory.`getServerLocator()` |
    `ServerLocator` | ServerLocator.`setAckBatchSize​(int ackBatchSize)` | Sets the acknowledgments batch size.
    `ServerLocator` | ServerLocator.`setAutoGroup​(boolean autoGroup)` | Sets whether producers created through this factory will automatically assign a group ID to the messages they sent.
    `ServerLocator` | ServerLocator.`setBlockOnAcknowledge​(boolean blockOnAcknowledge)` | Sets whether consumers created through this factory will block while sending message acknowledgments or do it asynchronously.
    `ServerLocator` | ServerLocator.`setBlockOnDurableSend​(boolean blockOnDurableSend)` | Sets whether producers created through this factory will block while sending durable messages or do it asynchronously.
    `ServerLocator` | ServerLocator.`setBlockOnNonDurableSend​(boolean blockOnNonDurableSend)` | Sets whether producers created through this factory will block while sending non-durable messages or do it asynchronously.
    `ServerLocator` | ServerLocator.`setCacheLargeMessagesClient​(boolean cached)` | Sets whether large messages received by consumers created through this factory will be cached in temporary files or not.
    `ServerLocator` | ServerLocator.`setCallFailoverTimeout​(long callFailoverTimeout)` | Sets the blocking call failover timeout.
    `ServerLocator` | ServerLocator.`setCallTimeout​(long callTimeout)` | Sets the blocking call timeout.
    `ServerLocator` | ServerLocator.`setClientFailureCheckPeriod​(long clientFailureCheckPeriod)` | Sets the period (in milliseconds) used to check if a client has failed to receive pings from the server.
    `ServerLocator` | ServerLocator.`setCompressLargeMessage​(boolean compressLargeMessages)` | Sets whether to compress or not large messages.
    `ServerLocator` | ServerLocator.`setConfirmationWindowSize​(int confirmationWindowSize)` | Sets the size for the confirmation window buffer of clients using this factory.
    `ServerLocator` | ServerLocator.`setConnectionLoadBalancingPolicyClassName​(java.lang.String loadBalancingPolicyClassName)` | Sets the class name of the connection load balancing policy.
    `ServerLocator` | ServerLocator.`setConnectionTTL​(long connectionTTL)` | Sets this factory's connections time-to-live.
    `ServerLocator` | ServerLocator.`setConsumerMaxRate​(int consumerMaxRate)` | Sets the maximum rate of message consumption for consumers created through this factory.
    `ServerLocator` | ServerLocator.`setConsumerWindowSize​(int consumerWindowSize)` | Sets the window size for flow control of the consumers created through this factory.
    `ServerLocator` | ServerLocator.`setFailoverOnInitialConnection​(boolean failover)` | Deprecated.
    `ServerLocator` | ServerLocator.`setGroupID​(java.lang.String groupID)` | Sets the group ID that will be set on each message sent through this factory.
    `ServerLocator` | ServerLocator.`setIncomingInterceptorList​(java.lang.String interceptorList)` |
    `ServerLocator` | ServerLocator.`setInitialConnectAttempts​(int reconnectAttempts)` | Sets the maximum number of attempts to establish an initial connection.
    `ServerLocator` | ServerLocator.`setInitialMessagePacketSize​(int size)` | Sets the initial size of messages created through this factory.
    `ServerLocator` | ServerLocator.`setMaxRetryInterval​(long maxRetryInterval)` | Sets the maximum retry interval.
    `ServerLocator` | ServerLocator.`setMinLargeMessageSize​(int minLargeMessageSize)` | Sets the large message size threshold.
    `ServerLocator` | ServerLocator.`setOutgoingInterceptorList​(java.lang.String interceptorList)` |
    `ServerLocator` | ServerLocator.`setPreAcknowledge​(boolean preAcknowledge)` | Sets to `true` to pre-acknowledge consumed messages on the server before they are sent to consumers, else set to `false` to let clients acknowledge the message they consume.
    `ServerLocator` | ServerLocator.`setProducerMaxRate​(int producerMaxRate)` | Sets the maximum rate of message production for producers created through this factory.
    `ServerLocator` | ServerLocator.`setProducerWindowSize​(int producerWindowSize)` | Returns the window size for flow control of the producers created through this factory.
    `ServerLocator` | ServerLocator.`setProtocolManagerFactory​(ClientProtocolManagerFactory protocolManager)` |
    `ServerLocator` | ServerLocator.`setReconnectAttempts​(int reconnectAttempts)` | Sets the maximum number of attempts to retry connection in case of failure.
    `ServerLocator` | ServerLocator.`setRetryInterval​(long retryInterval)` | Sets the time to retry connections created by this factory after failure.
    `ServerLocator` | ServerLocator.`setRetryIntervalMultiplier​(double retryIntervalMultiplier)` | Sets the multiplier to apply to successive retry intervals.
    `ServerLocator` | ServerLocator.`setScheduledThreadPoolMaxSize​(int scheduledThreadPoolMaxSize)` | Sets the maximum size of the scheduled thread pool.
    `ServerLocator` | ServerLocator.`setThreadPoolMaxSize​(int threadPoolMaxSize)` | Sets the maximum size of the thread pool.
    `ServerLocator` | ServerLocator.`setUseGlobalPools​(boolean useGlobalPools)` | Sets whether this factory will use global thread pools (shared among all the factories in the same JVM) or its own pools.
    `ServerLocator` | ServerLocator.`setUseTopologyForLoadBalancing​(boolean useTopologyForLoadBalancing)` |

  - ### Uses of ServerLocator in org.apache.activemq.artemis.api.core.management

    Constructors in org.apache.activemq.artemis.api.core.management with parameters of type ServerLocator
    Constructor | Description
    --- | ---
    `ActiveMQManagementProxy​(ServerLocator locator, java.lang.String username, java.lang.String password)` |

  - ### Uses of ServerLocator in org.apache.activemq.artemis.jms.client

    Methods in org.apache.activemq.artemis.jms.client that return ServerLocator
    Modifier and Type | Method | Description
    --- | --- | ---
    `ServerLocator` | ActiveMQConnectionFactory.`getServerLocator()` |

    Constructors in org.apache.activemq.artemis.jms.client with parameters of type ServerLocator
    Constructor | Description
    --- | ---
    `ActiveMQConnectionFactory​(ServerLocator serverLocator)` |
    `ActiveMQJMSConnectionFactory​(ServerLocator serverLocator)` |
    `ActiveMQQueueConnectionFactory​(ServerLocator serverLocator)` |
    `ActiveMQTopicConnectionFactory​(ServerLocator serverLocator)` |
    `ActiveMQXAConnectionFactory​(ServerLocator serverLocator)` |
    `ActiveMQXAQueueConnectionFactory​(ServerLocator serverLocator)` |
    `ActiveMQXATopicConnectionFactory​(ServerLocator serverLocator)` |

  - ### Uses of ServerLocator in org.apache.activemq.artemis.spi.core.remoting

    Methods in org.apache.activemq.artemis.spi.core.remoting that return ServerLocator
    Modifier and Type | Method | Description
    --- | --- | ---
    `ServerLocator` | ClientProtocolManagerFactory.`getLocator()` |

    Methods in org.apache.activemq.artemis.spi.core.remoting with parameters of type ServerLocator
    Modifier and Type | Method | Description
    --- | --- | ---
    `ClientProtocolManagerFactory` | ClientProtocolManagerFactory.`setLocator​(ServerLocator locator)` |

  - ### Uses of ServerLocator in org.apache.activemq.artemis.uri.schema.serverLocator

    Methods in org.apache.activemq.artemis.uri.schema.serverLocator that return ServerLocator
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected ServerLocator` | InVMServerLocatorSchema.`internalNewObject​(java.net.URI uri, java.util.Map<java.lang.String,​java.lang.String> query, java.lang.String name)` |
    `protected ServerLocator` | JGroupsServerLocatorSchema.`internalNewObject​(java.net.URI uri, java.util.Map<java.lang.String,​java.lang.String> query, java.lang.String name)` |
    `protected ServerLocator` | TCPServerLocatorSchema.`internalNewObject​(java.net.URI uri, java.util.Map<java.lang.String,​java.lang.String> query, java.lang.String name)` |
    `protected ServerLocator` | UDPServerLocatorSchema.`internalNewObject​(java.net.URI uri, java.util.Map<java.lang.String,​java.lang.String> query, java.lang.String name)` |

    Methods in org.apache.activemq.artemis.uri.schema.serverLocator with parameters of type ServerLocator
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected java.net.URI` | InVMServerLocatorSchema.`internalNewURI​(ServerLocator bean)` |
    `protected java.net.URI` | JGroupsServerLocatorSchema.`internalNewURI​(ServerLocator bean)` |
    `protected java.net.URI` | TCPServerLocatorSchema.`internalNewURI​(ServerLocator bean)` |
    `protected java.net.URI` | UDPServerLocatorSchema.`internalNewURI​(ServerLocator bean)` |