Package com.unboundid.ldap.protocol
Class BindRequestProtocolOp
- java.lang.Object
-
- com.unboundid.ldap.protocol.BindRequestProtocolOp
-
- All Implemented Interfaces:
ProtocolOp
,java.io.Serializable
@InternalUseOnly @NotMutable @ThreadSafety(level=COMPLETELY_THREADSAFE) public final class BindRequestProtocolOp extends java.lang.Object implements ProtocolOp
This class provides an implementation of an LDAP bind request protocol op.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static byte
CRED_TYPE_SASL
The credentials type for SASL bind requests.static byte
CRED_TYPE_SIMPLE
The credentials type for simple bind requests.
-
Constructor Summary
Constructors Constructor Description BindRequestProtocolOp(GenericSASLBindRequest request)
Creates a new bind request protocol op from the provided bind request object.BindRequestProtocolOp(SimpleBindRequest request)
Creates a new bind request protocol op from the provided bind request object.BindRequestProtocolOp(java.lang.String bindDN, byte[] password)
Creates a new bind request protocol op for a simple bind.BindRequestProtocolOp(java.lang.String bindDN, java.lang.String password)
Creates a new bind request protocol op for a simple bind.BindRequestProtocolOp(java.lang.String bindDN, java.lang.String saslMechanism, ASN1OctetString saslCredentials)
Creates a new bind request protocol op for a SASL bind.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static BindRequestProtocolOp
decodeProtocolOp(ASN1Element element)
Decodes the provided ASN.1 element as a bind request protocol op.ASN1Element
encodeProtocolOp()
Encodes this protocol op to an ASN.1 element suitable for inclusion in an encoded LDAP message.java.lang.String
getBindDN()
Retrieves the bind DN for this bind request.byte
getCredentialsType()
Retrieves the credentials type for this bind request.byte
getProtocolOpType()
Retrieves the BER type for this protocol op.ASN1OctetString
getSASLCredentials()
Retrieves the credentials to use for SASL authentication, if any.java.lang.String
getSASLMechanism()
Retrieves the name of the SASL mechanism for this bind request.ASN1OctetString
getSimplePassword()
Retrieves the password to use for simple authentication.int
getVersion()
Retrieves the protocol version for this bind request.BindRequest
toBindRequest(Control... controls)
Creates a new bind request object from this bind request protocol op.java.lang.String
toString()
Retrieves a string representation of this protocol op.void
toString(java.lang.StringBuilder buffer)
Appends a string representation of this LDAP protocol op to the provided buffer.void
writeTo(ASN1Buffer buffer)
Writes an ASN.1-encoded representation of this LDAP protocol op to the provided ASN.1 buffer.
-
-
-
Field Detail
-
CRED_TYPE_SIMPLE
public static final byte CRED_TYPE_SIMPLE
The credentials type for simple bind requests.- See Also:
- Constant Field Values
-
CRED_TYPE_SASL
public static final byte CRED_TYPE_SASL
The credentials type for SASL bind requests.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
BindRequestProtocolOp
public BindRequestProtocolOp(java.lang.String bindDN, java.lang.String password)
Creates a new bind request protocol op for a simple bind.- Parameters:
bindDN
- The DN for this bind request.password
- The password for this bind request.
-
BindRequestProtocolOp
public BindRequestProtocolOp(java.lang.String bindDN, byte[] password)
Creates a new bind request protocol op for a simple bind.- Parameters:
bindDN
- The DN for this bind request.password
- The password for this bind request.
-
BindRequestProtocolOp
public BindRequestProtocolOp(java.lang.String bindDN, java.lang.String saslMechanism, ASN1OctetString saslCredentials)
Creates a new bind request protocol op for a SASL bind.- Parameters:
bindDN
- The DN for this bind request.saslMechanism
- The name of the SASL mechanism for this bind request. It must not benull
.saslCredentials
- The SASL credentials for this bind request, if any.
-
BindRequestProtocolOp
public BindRequestProtocolOp(SimpleBindRequest request) throws LDAPSDKUsageException
Creates a new bind request protocol op from the provided bind request object.- Parameters:
request
- The simple bind request to use to create this protocol op. It must have been created with a static password rather than using a password provider.- Throws:
LDAPSDKUsageException
- If the provided simple bind request is configured to use a password provider rather than a static password.
-
BindRequestProtocolOp
public BindRequestProtocolOp(GenericSASLBindRequest request)
Creates a new bind request protocol op from the provided bind request object.- Parameters:
request
- The generic SASL bind request to use to create this protocol op.
-
-
Method Detail
-
getVersion
public int getVersion()
Retrieves the protocol version for this bind request.- Returns:
- The protocol version for this bind request.
-
getBindDN
public java.lang.String getBindDN()
Retrieves the bind DN for this bind request.- Returns:
- The bind DN for this bind request, or an empty string if none was provided.
-
getCredentialsType
public byte getCredentialsType()
Retrieves the credentials type for this bind request. It will either beCRED_TYPE_SIMPLE
orCRED_TYPE_SASL
.- Returns:
- The credentials type for this bind request.
-
getSimplePassword
public ASN1OctetString getSimplePassword()
Retrieves the password to use for simple authentication.- Returns:
- The password to use for simple authentication, or
null
if SASL authentication will be used.
-
getSASLMechanism
public java.lang.String getSASLMechanism()
Retrieves the name of the SASL mechanism for this bind request.- Returns:
- The name of the SASL mechanism for this bind request, or
null
if simple authentication will be used.
-
getSASLCredentials
public ASN1OctetString getSASLCredentials()
Retrieves the credentials to use for SASL authentication, if any.- Returns:
- The credentials to use for SASL authentication, or
null
if there are no SASL credentials or if simple authentication will be used.
-
getProtocolOpType
public byte getProtocolOpType()
Retrieves the BER type for this protocol op.- Specified by:
getProtocolOpType
in interfaceProtocolOp
- Returns:
- The BER type for this protocol op.
-
encodeProtocolOp
public ASN1Element encodeProtocolOp()
Encodes this protocol op to an ASN.1 element suitable for inclusion in an encoded LDAP message.- Specified by:
encodeProtocolOp
in interfaceProtocolOp
- Returns:
- The ASN.1 element containing the encoded protocol op.
-
decodeProtocolOp
public static BindRequestProtocolOp decodeProtocolOp(ASN1Element element) throws LDAPException
Decodes the provided ASN.1 element as a bind request protocol op.- Parameters:
element
- The ASN.1 element to be decoded.- Returns:
- The decoded bind request protocol op.
- Throws:
LDAPException
- If the provided ASN.1 element cannot be decoded as a bind request protocol op.
-
writeTo
public void writeTo(ASN1Buffer buffer)
Writes an ASN.1-encoded representation of this LDAP protocol op to the provided ASN.1 buffer. This method is intended for internal use only and should not be used by third-party code.- Specified by:
writeTo
in interfaceProtocolOp
- Parameters:
buffer
- The ASN.1 buffer to which the encoded representation should be written.
-
toBindRequest
public BindRequest toBindRequest(Control... controls)
Creates a new bind request object from this bind request protocol op.- Parameters:
controls
- The set of controls to include in the bind request. It may be empty ornull
if no controls should be included.- Returns:
- The bind request that was created.
-
toString
public java.lang.String toString()
Retrieves a string representation of this protocol op.- Overrides:
toString
in classjava.lang.Object
- Returns:
- A string representation of this protocol op.
-
toString
public void toString(java.lang.StringBuilder buffer)
Appends a string representation of this LDAP protocol op to the provided buffer.- Specified by:
toString
in interfaceProtocolOp
- Parameters:
buffer
- The buffer to which the string representation should be appended.
-
-