Class ReconnectLocationPool
java.lang.Object
org.apache.qpid.protonj2.client.util.ReconnectLocationPool
Manages the list of available reconnect entries that are used to connect
and recover a connection.
-
Constructor Summary
ConstructorsConstructorDescriptionCreates an emptyReconnectLocationPool.ReconnectLocationPool(List<ReconnectLocation> backups) Creates a newReconnectLocationPoolwith the providedReconnectLocationvalues. -
Method Summary
Modifier and TypeMethodDescriptionvoidadd(ReconnectLocation entry) Adds a new entry to the pool if not already contained within.voidaddAll(List<ReconnectLocation> additions) Adds a list of newReconnectLocationvalues to the pool if not already contained within.voidaddFirst(ReconnectLocation entry) Adds a newReconnectLocationto the pool if not already contained within.getList()Gets the current list ofReconnectLocationvalues.getNext()Returns the next entry in the pool of entries.booleanisEmpty()booleanremove(ReconnectLocation entry) Remove aReconnectLocationfrom the pool if present, otherwise has no effect.voidRemoves all currently configuredReconnectLocationfrom the pool, no newReconnectLocationvalues will be served from this pool until new ones are added.voidreplaceAll(List<ReconnectLocation> replacements) Removes all currently configuredReconnectLocationvalues from the pool and replaces them with the new set given.voidshuffle()Randomizes the order of the list of entries contained within the pool.intsize()toString()
-
Constructor Details
-
ReconnectLocationPool
public ReconnectLocationPool()Creates an emptyReconnectLocationPool. -
ReconnectLocationPool
Creates a newReconnectLocationPoolwith the providedReconnectLocationvalues.- Parameters:
backups- a list of location where a reconnection attempt should be made.
-
-
Method Details
-
size
public int size()- Returns:
- the current size of the entry pool.
-
isEmpty
public boolean isEmpty()- Returns:
- true if the entry pool is empty.
-
getNext
Returns the next entry in the pool of entries. The entry will be shifted to the end of the list and not be attempted again until the full list has been returned once.- Returns:
- the next entry that should be used for a connection attempt.
-
shuffle
public void shuffle()Randomizes the order of the list of entries contained within the pool. -
add
Adds a new entry to the pool if not already contained within.- Parameters:
entry- The newReconnectLocationto add to the pool.
-
addAll
Adds a list of newReconnectLocationvalues to the pool if not already contained within.- Parameters:
additions- The new list ofReconnectLocationto add to the pool.
-
addFirst
Adds a newReconnectLocationto the pool if not already contained within. TheReconnectLocationis added to the head of the pooledReconnectLocationlist and will be the next value that is returned from the pool.- Parameters:
entry- The newReconnectLocationto add to the pool.
-
remove
Remove aReconnectLocationfrom the pool if present, otherwise has no effect.- Parameters:
entry- TheReconnectLocationto attempt to remove from the pool.- Returns:
- true if the given
ReconnectLocationwas removed from the pool.
-
removeAll
public void removeAll()Removes all currently configuredReconnectLocationfrom the pool, no newReconnectLocationvalues will be served from this pool until new ones are added. -
replaceAll
Removes all currently configuredReconnectLocationvalues from the pool and replaces them with the new set given.- Parameters:
replacements- The new set of reconnectReconnectLocationvalues to serve from this pool.
-
getList
Gets the current list ofReconnectLocationvalues. The returned list is a copy.- Returns:
- a copy of the current list of
ReconnectLocationvalues in the pool.
-
toString
-