@Extensible @ThreadSafety(level=INTERFACE_NOT_THREADSAFE) public abstract class SASLBindRequest extends BindRequest
Modifier and Type | Field and Description |
---|---|
protected static byte |
CRED_TYPE_SASL
The BER type to use for the credentials element in a simple bind request
protocol op.
|
VERSION_ELEMENT
Modifier | Constructor and Description |
---|---|
protected |
SASLBindRequest(Control[] controls)
Creates a new SASL bind request with the provided controls.
|
Modifier and Type | Method and Description |
---|---|
java.lang.String |
getBindType()
Retrieves a human-readable string that describes the type of bind request.
|
int |
getLastMessageID()
Retrieves the message ID for the last LDAP message sent using this request.
|
abstract java.lang.String |
getSASLMechanismName()
Retrieves the name of the SASL mechanism used in this SASL bind request.
|
void |
responseReceived(LDAPResponse response)
Indicates that the provided LDAP response has been received by from the
server.
|
protected BindResult |
sendBindRequest(LDAPConnection connection,
java.lang.String bindDN,
ASN1OctetString saslCredentials,
Control[] controls,
long timeoutMillis)
Sends an LDAP message to the directory server and waits for the response.
|
protected BindResult |
sendMessage(LDAPConnection connection,
LDAPMessage requestMessage,
long timeoutMillis)
Sends an LDAP message to the directory server and waits for the response.
|
void |
toCode(java.util.List<java.lang.String> lineList,
java.lang.String requestID,
int indentSpaces,
boolean includeProcessing)
Appends a number of lines comprising the Java source code that can be used
to recreate this request to the given list.
|
duplicate, duplicate, getOperationType, getRebindRequest, process
followReferrals, getControl, getControlList, getControls, getIntermediateResponseListener, getResponseTimeoutMillis, hasControl, hasControl, setFollowReferrals, setIntermediateResponseListener, setResponseTimeoutMillis, toString, toString
protected static final byte CRED_TYPE_SASL
protected SASLBindRequest(Control[] controls)
controls
- The set of controls to include in this SASL bind request.public java.lang.String getBindType()
getBindType
in class BindRequest
public abstract java.lang.String getSASLMechanismName()
public int getLastMessageID()
getLastMessageID
in class LDAPRequest
protected final BindResult sendBindRequest(LDAPConnection connection, java.lang.String bindDN, ASN1OctetString saslCredentials, Control[] controls, long timeoutMillis) throws LDAPException
connection
- The connection to the directory server.bindDN
- The bind DN to use for the request. It should be
null
for most types of SASL bind requests.saslCredentials
- The SASL credentials to use for the bind request.
It may be null
if no credentials are
required.controls
- The set of controls to include in the request. It
may be null
if no controls are required.timeoutMillis
- The maximum length of time in milliseconds to wait
for a response, or zero if it should wait forever.LDAPException
- If a problem occurs while sending the request or
reading the response, or if a timeout occurred
while waiting for the response.protected final BindResult sendMessage(LDAPConnection connection, LDAPMessage requestMessage, long timeoutMillis) throws LDAPException
connection
- The connection to the directory server.requestMessage
- The LDAP message to send to the directory server.timeoutMillis
- The maximum length of time in milliseconds to wait
for a response, or zero if it should wait forever.LDAPException
- If a problem occurs while sending the request or
reading the response, or if a timeout occurred
while waiting for the response.@InternalUseOnly public final void responseReceived(LDAPResponse response) throws LDAPException
response
- The LDAP response that has been received from the server.
It may be null
if the connection has been closed
without having received any response.LDAPException
- If a problem occurs while handling the response.public void toCode(java.util.List<java.lang.String> lineList, java.lang.String requestID, int indentSpaces, boolean includeProcessing)
toCode
in interface ReadOnlyLDAPRequest
lineList
- The list to which the source code lines should
be added.requestID
- The name that should be used as an identifier
for the request. If this is null
or
empty, then a generic ID will be used.indentSpaces
- The number of spaces that should be used to
indent the generated code. It must not be
negative.includeProcessing
- Indicates whether the generated code should
include code required to actually process the
request and handle the result (if true
),
or just to generate the request (if
false
).