Package org.ldaptive
Class AbstractConnectionStrategy
java.lang.Object
org.ldaptive.AbstractConnectionStrategy
- All Implemented Interfaces:
Iterable<LdapURL>
,ConnectionStrategy
- Direct Known Subclasses:
ActivePassiveConnectionStrategy
,DnsResolverConnectionStrategy
,DnsSrvConnectionStrategy
,RandomConnectionStrategy
,RoundRobinConnectionStrategy
Base class for connection strategy implementations.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static class
Default iterator implementation. -
Field Summary
FieldsModifier and TypeFieldDescriptionCondition used to determine whether to activate a URL.private boolean
Whether this strategy has been successfully initialized.protected LdapURLSet
Set of LDAP URLs to attempt connections to.protected final org.slf4j.Logger
Logger for this class.Condition used to determine whether to test an inactive URL. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
Indicates the supplied URL could not be connected to.Returns the condition used to activate connections.Returns the condition used to determine whether to attempt to activate a connection.void
initialize
(String urls, Predicate<LdapURL> condition) Prepare this strategy for use.boolean
Whether this strategy is ready for use.void
populate
(String urls, LdapURLSet urlSet) Populates aLdapURLSet
from the URL string provided at configuration time.void
setRetryCondition
(Predicate<LdapURL> condition) Sets the retry condition which determines whether an attempt should be made to activate a URL.void
Indicates the supplied URL was successfully connected to.toString()
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.ldaptive.ConnectionStrategy
newInstance
Methods inherited from interface java.lang.Iterable
forEach, iterator, spliterator
-
Field Details
-
logger
protected final org.slf4j.Logger loggerLogger for this class. -
ldapURLSet
Set of LDAP URLs to attempt connections to. -
initialized
private boolean initializedWhether this strategy has been successfully initialized. -
activateCondition
Condition used to determine whether to activate a URL. -
retryCondition
Condition used to determine whether to test an inactive URL.
-
-
Constructor Details
-
AbstractConnectionStrategy
public AbstractConnectionStrategy()
-
-
Method Details
-
isInitialized
public boolean isInitialized()Description copied from interface:ConnectionStrategy
Whether this strategy is ready for use.- Specified by:
isInitialized
in interfaceConnectionStrategy
- Returns:
- whether this strategy is ready for use
-
initialize
Description copied from interface:ConnectionStrategy
Prepare this strategy for use.- Specified by:
initialize
in interfaceConnectionStrategy
- Parameters:
urls
- LDAP URLs for this strategycondition
- predicate to determine whether a connection is active
-
populate
Description copied from interface:ConnectionStrategy
Populates aLdapURLSet
from the URL string provided at configuration time.- Specified by:
populate
in interfaceConnectionStrategy
- Parameters:
urls
- Space-delimited string of URLs describing the LDAP hosts to connect to. The URLs in the string are commonlyldap://
orldaps://
URLs that directly describe the hosts to connect to, but may also describe a resource from which to obtain LDAP connection URLs as is the case forDnsSrvConnectionStrategy
that use URLs with the schemedns:
.urlSet
- LDAP URL set to populate.
-
getActivateCondition
Description copied from interface:ConnectionStrategy
Returns the condition used to activate connections.- Specified by:
getActivateCondition
in interfaceConnectionStrategy
- Returns:
- activate condition
-
getRetryCondition
Description copied from interface:ConnectionStrategy
Returns the condition used to determine whether to attempt to activate a connection.- Specified by:
getRetryCondition
in interfaceConnectionStrategy
- Returns:
- retry condition
-
setRetryCondition
Sets the retry condition which determines whether an attempt should be made to activate a URL.- Parameters:
condition
- that determines whether to test an inactive URL
-
success
Description copied from interface:ConnectionStrategy
Indicates the supplied URL was successfully connected to.- Specified by:
success
in interfaceConnectionStrategy
- Parameters:
url
- which was successfully connected to
-
failure
Description copied from interface:ConnectionStrategy
Indicates the supplied URL could not be connected to.- Specified by:
failure
in interfaceConnectionStrategy
- Parameters:
url
- which was could not be connected to
-
toString
-