public class AddRequestWrapper extends java.lang.Object implements AddRequest
Constructor and Description |
---|
AddRequestWrapper(AddRequest request)
Creates a new AddRequestWrapper that wraps the specified add request.
|
Modifier and Type | Method and Description |
---|---|
boolean |
addAttribute(Attribute attribute)
Ensures that this entry contains the provided attribute and values
(optional operation).
|
boolean |
addAttribute(Attribute attribute,
java.util.Collection<AttributeValue> duplicateValues)
Ensures that this entry contains the provided attribute and values
(optional operation).
|
AddRequest |
addAttribute(java.lang.String attributeDescription,
java.lang.Object... values)
Ensures that this entry contains the provided attribute and values
(optional operation).
|
AddRequest |
addControl(Control control)
Adds the provided control to this request.
|
AddRequest |
clearAttributes()
Removes all the attributes from this entry (optional operation).
|
boolean |
containsAttribute(Attribute attribute,
java.util.Collection<AttributeValue> missingValues)
Returns
true if this entry contains all of the attribute values
contained in attribute . |
boolean |
containsAttribute(java.lang.String attributeDescription)
Returns
true if the attribute is present in this entry, regardless
of how many values it contains. |
boolean |
containsAttribute(java.lang.String attributeDescription,
java.lang.Object... values)
Returns
true if this entry contains all of the attribute values
contained in values . |
java.lang.Iterable<Attribute> |
getAllAttributes()
Returns an
Iterable containing all of the attributes in this entry. |
java.lang.Iterable<Attribute> |
getAllAttributes(AttributeDescription attributeDescription)
Returns an
Iterable containing all the attributes in this entry
having an attribute description which is a sub-type of the provided
attribute description. |
java.lang.Iterable<Attribute> |
getAllAttributes(java.lang.String attributeDescription)
Returns an
Iterable containing all the attributes in this entry
having an attribute description which is a sub-type of the provided
attribute description. |
java.lang.Object |
getAttachment(java.lang.String name)
Retrieves the attachment with the specified name.
|
java.util.Set<java.lang.String> |
getAttachmentNames()
Retrieves the set of attachment names defined for this holder, as a
mapping between the attachment name and the associated object.
|
Attribute |
getAttribute(AttributeDescription attributeDescription)
Returns the named attribute contained in this entry, or
null if it
is not included with this entry. |
Attribute |
getAttribute(java.lang.String attributeDescription)
Returns the named attribute contained in this entry, or
null if it
is not included with this entry. |
<C extends Control> |
getControl(ControlDecoder<C> decoder)
Decodes and returns the first control in this request having an OID
corresponding to the provided control decoder.
|
java.util.List<Control> |
getControls()
Returns a
List containing the controls included with this request. |
DN |
getName()
Returns the string representation of the distinguished name of this entry.
|
boolean |
isInternal()
Returns
true if this request is flagged as internal; false
otherwise. |
java.lang.Object |
removeAttachment(java.lang.String name)
Removes the attachment with the specified name.
|
boolean |
removeAttribute(Attribute attribute,
java.util.Collection<AttributeValue> missingValues)
Removes all of the attribute values contained in
attribute from
this entry if it is present (optional operation). |
boolean |
removeAttribute(AttributeDescription attributeDescription)
Removes the named attribute from this entry if it is present (optional
operation).
|
boolean |
removeAttribute(java.lang.String attributeDescription)
Removes the named attribute from this entry if it is present (optional
operation).
|
AddRequest |
removeAttribute(java.lang.String attributeDescription,
java.lang.Object... values)
Removes all of the attribute values contained in
values from the
named attribute in this entry if it is present (optional operation). |
Request |
removeControl(Control control)
Removes the provided control from this request.
|
boolean |
replaceAttribute(Attribute attribute)
Adds all of the attribute values contained in
attribute to this
entry, replacing any existing attribute values (optional operation). |
AddRequest |
replaceAttribute(java.lang.String attributeDescription,
java.lang.Object... values)
Adds all of the attribute values contained in
values to this entry,
replacing any existing attribute values (optional operation). |
java.lang.Object |
setAttachment(java.lang.String name,
java.lang.Object value)
Sets the value of the specified attachment.
|
AddRequest |
setName(DN dn)
Sets the distinguished name of this entry (optional operation).
|
AddRequest |
setName(java.lang.String dn)
Sets the distinguished name of this entry (optional operation).
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getControl, getControls, isInternal, removeControl
getAttachment, getAttachmentNames, removeAttachment, setAttachment
public AddRequestWrapper(AddRequest request)
request
- the request to wrap.public boolean addAttribute(Attribute attribute) throws java.lang.UnsupportedOperationException, java.lang.NullPointerException
AddRequest
attribute
, even if it is empty.
attribute
will
be merged with the existing attribute values.
NOTE: When attribute
is non-empty, this method implements
LDAP Modify add semantics.
addAttribute
in interface AddRequest
addAttribute
in interface Entry
attribute
- The attribute values to be added to this entry, merging with any
existing attribute values.true
if this entry changed as a result of this call.java.lang.UnsupportedOperationException
- If this entry does not permit attributes or their values to be
added.java.lang.NullPointerException
- If attribute
was null
.public boolean addAttribute(Attribute attribute, java.util.Collection<AttributeValue> duplicateValues) throws java.lang.UnsupportedOperationException, java.lang.NullPointerException
AddRequest
attribute
, even if it is empty.
attribute
will
be merged with the existing attribute values.
NOTE: When attribute
is non-empty, this method implements
LDAP Modify add semantics.
addAttribute
in interface AddRequest
addAttribute
in interface Entry
attribute
- The attribute values to be added to this entry, merging with any
existing attribute values.duplicateValues
- A collection into which duplicate values will be added, or null
if duplicate values should not be saved.true
if this entry changed as a result of this call.java.lang.UnsupportedOperationException
- If this entry does not permit attributes or their values to be
added.java.lang.NullPointerException
- If attribute
was null
.public AddRequest addAttribute(java.lang.String attributeDescription, java.lang.Object... values) throws PluginException, java.lang.UnsupportedOperationException, java.lang.NullPointerException
AddRequest
attribute
, even if it is empty.
attribute
will
be merged with the existing attribute values.
NOTE: When attribute
is non-empty, this method implements
LDAP Modify add semantics.
addAttribute
in interface AddRequest
addAttribute
in interface Entry
attributeDescription
- The name of the attribute whose values are to be added.values
- The attribute values to be added to this entry, merging any
existing attribute values.PluginException
- If attributeDescription
could not be decoded.java.lang.UnsupportedOperationException
- If this entry does not permit attributes or their values to be
added.java.lang.NullPointerException
- If attributeDescription
was null
.public AddRequest addControl(Control control) throws java.lang.UnsupportedOperationException, java.lang.NullPointerException
Request
addControl
in interface AddRequest
addControl
in interface Request
control
- The control to be added to this request.java.lang.UnsupportedOperationException
- If this request does not permit controls to be added.java.lang.NullPointerException
- If control
was null
.public AddRequest clearAttributes() throws java.lang.UnsupportedOperationException
AddRequest
clearAttributes
in interface AddRequest
clearAttributes
in interface Entry
java.lang.UnsupportedOperationException
- If this entry does not permit attributes to be removed.public boolean containsAttribute(Attribute attribute, java.util.Collection<AttributeValue> missingValues) throws java.lang.NullPointerException
AddRequest
true
if this entry contains all of the attribute values
contained in attribute
. If attribute
is empty then this
method will return true
if the attribute is present in this entry,
regardless of how many values it contains.containsAttribute
in interface AddRequest
containsAttribute
in interface Entry
attribute
- The attribute values whose presence in this entry is to be tested.missingValues
- A collection into which missing values will be added, or null
if missing values should not be saved.true
if this entry contains all of the attribute values
contained in attribute
.java.lang.NullPointerException
- If attribute
was null
.public boolean containsAttribute(java.lang.String attributeDescription) throws PluginException, java.lang.NullPointerException
Entry
true
if the attribute is present in this entry, regardless
of how many values it contains.containsAttribute
in interface Entry
attributeDescription
- The name of the attribute whose presence in this entry is to be
tested.true
if this entry contains all of the attribute values
contained in values
.PluginException
- If attributeDescription
could not be decoded.java.lang.NullPointerException
- If attributeDescription
was null
.public boolean containsAttribute(java.lang.String attributeDescription, java.lang.Object... values) throws PluginException, java.lang.NullPointerException
AddRequest
true
if this entry contains all of the attribute values
contained in values
. If values
is null
or empty
then this method will return true
if the attribute is present in
this entry, regardless of how many values it contains.containsAttribute
in interface AddRequest
containsAttribute
in interface Entry
attributeDescription
- The name of the attribute whose presence in this entry is to be
tested.values
- The attribute values whose presence in this entry is to be tested,
which may be null
.true
if this entry contains all of the attribute values
contained in values
.PluginException
- If attributeDescription
could not be decoded.java.lang.NullPointerException
- If attributeDescription
was null
.public java.lang.Iterable<Attribute> getAllAttributes()
AddRequest
Iterable
containing all of the attributes in this entry.
The returned Iterable
may be used to remove attributes if permitted
by this entry.getAllAttributes
in interface AddRequest
getAllAttributes
in interface Entry
Iterable
containing all of the attributes.public java.lang.Iterable<Attribute> getAllAttributes(AttributeDescription attributeDescription) throws java.lang.NullPointerException
AddRequest
Iterable
containing all the attributes in this entry
having an attribute description which is a sub-type of the provided
attribute description. The returned Iterable
may be used to remove
attributes if permitted by this entry.getAllAttributes
in interface AddRequest
getAllAttributes
in interface Entry
attributeDescription
- The name of the attributes to be returned.Iterable
containing the matching attributes.java.lang.NullPointerException
- If attributeDescription
was null
.public java.lang.Iterable<Attribute> getAllAttributes(java.lang.String attributeDescription) throws PluginException, java.lang.NullPointerException
AddRequest
Iterable
containing all the attributes in this entry
having an attribute description which is a sub-type of the provided
attribute description. The returned Iterable
may be used to remove
attributes if permitted by this entry.
The attribute description will be decoded using the schema associated with this entry (usually the default schema).
getAllAttributes
in interface AddRequest
getAllAttributes
in interface Entry
attributeDescription
- The name of the attributes to be returned.Iterable
containing the matching attributes.PluginException
- If attributeDescription
could not be decoded.java.lang.NullPointerException
- If attributeDescription
was null
.public Attribute getAttribute(AttributeDescription attributeDescription) throws java.lang.NullPointerException
AddRequest
null
if it
is not included with this entry.getAttribute
in interface AddRequest
getAttribute
in interface Entry
attributeDescription
- The name of the attribute to be returned.null
if it is not included with
this entry.java.lang.NullPointerException
- If attributeDescription
was null
.public Attribute getAttribute(java.lang.String attributeDescription) throws PluginException, java.lang.NullPointerException
AddRequest
null
if it
is not included with this entry.getAttribute
in interface AddRequest
getAttribute
in interface Entry
attributeDescription
- The name of the attribute to be returned.null
if it is not included with
this entry.PluginException
- If attributeDescription
could not be decoded.java.lang.NullPointerException
- If attributeDescription
was null
.public DN getName()
AddRequest
getName
in interface AddRequest
getName
in interface Entry
public boolean removeAttribute(Attribute attribute, java.util.Collection<AttributeValue> missingValues) throws java.lang.UnsupportedOperationException, java.lang.NullPointerException
AddRequest
attribute
from
this entry if it is present (optional operation). If attribute
is
empty then the entire attribute will be removed if it is present.
NOTE: This method implements LDAP Modify delete semantics.
removeAttribute
in interface AddRequest
removeAttribute
in interface Entry
attribute
- The attribute values to be removed from this entry, which may be
empty if the entire attribute is to be removed.missingValues
- A collection into which missing values will be added, or null
if missing values should not be saved.true
if this entry changed as a result of this call.java.lang.UnsupportedOperationException
- If this entry does not permit attributes or their values to be
removed.java.lang.NullPointerException
- If attribute
was null
.public boolean removeAttribute(java.lang.String attributeDescription) throws PluginException, java.lang.UnsupportedOperationException, java.lang.NullPointerException
Entry
false
.removeAttribute
in interface Entry
attributeDescription
- The name of the attribute to be removed.true
if this entry changed as a result of this call.PluginException
- If attributeDescription
could not be decoded.java.lang.UnsupportedOperationException
- If this entry does not permit attributes to be removed.java.lang.NullPointerException
- If attributeDescription
was null
.public boolean removeAttribute(AttributeDescription attributeDescription) throws java.lang.UnsupportedOperationException, java.lang.NullPointerException
AddRequest
false
.removeAttribute
in interface AddRequest
removeAttribute
in interface Entry
attributeDescription
- The name of the attribute to be removed.true
if this entry changed as a result of this call.java.lang.UnsupportedOperationException
- If this entry does not permit attributes to be removed.java.lang.NullPointerException
- If attributeDescription
was null
.public AddRequest removeAttribute(java.lang.String attributeDescription, java.lang.Object... values) throws PluginException, java.lang.UnsupportedOperationException, java.lang.NullPointerException
AddRequest
values
from the
named attribute in this entry if it is present (optional operation). If
values
is null
or empty then the entire attribute will be
removed if it is present.
NOTE: This method implements LDAP Modify delete semantics.
removeAttribute
in interface AddRequest
removeAttribute
in interface Entry
attributeDescription
- The name of the attribute whose values are to be removed.values
- The attribute values to be removed from this entry, which may be
null
or empty if the entire attribute is to be removed.PluginException
- If attributeDescription
could not be decoded.java.lang.UnsupportedOperationException
- If this entry does not permit attributes or their values to be
removed.java.lang.NullPointerException
- If attributeDescription
was null
.public boolean replaceAttribute(Attribute attribute) throws java.lang.UnsupportedOperationException, java.lang.NullPointerException
AddRequest
attribute
to this
entry, replacing any existing attribute values (optional operation). If
attribute
is empty then the entire attribute will be removed if it
is present.
NOTE: This method implements LDAP Modify replace semantics.
replaceAttribute
in interface AddRequest
replaceAttribute
in interface Entry
attribute
- The attribute values to be added to this entry, replacing any
existing attribute values, and which may be empty if the entire
attribute is to be removed.true
if this entry changed as a result of this call.java.lang.UnsupportedOperationException
- If this entry does not permit attributes or their values to be
replaced.java.lang.NullPointerException
- If attribute
was null
.public AddRequest replaceAttribute(java.lang.String attributeDescription, java.lang.Object... values) throws PluginException, java.lang.UnsupportedOperationException, java.lang.NullPointerException
AddRequest
values
to this entry,
replacing any existing attribute values (optional operation). If values
is null
or empty then the entire attribute will be removed
if it is present.
NOTE: This method implements LDAP Modify replace semantics.
replaceAttribute
in interface AddRequest
replaceAttribute
in interface Entry
attributeDescription
- The name of the attribute whose values are to be replaced.values
- The attribute values to be added to this entry, replacing any
existing attribute values, and which may be null
or empty
if the entire attribute is to be removed.PluginException
- If attributeDescription
could not be decoded.java.lang.UnsupportedOperationException
- If this entry does not permit attributes or their values to be
replaced.java.lang.NullPointerException
- If attribute
was null
.public AddRequest setName(DN dn) throws java.lang.UnsupportedOperationException, java.lang.NullPointerException
AddRequest
setName
in interface AddRequest
setName
in interface Entry
dn
- The distinguished name.java.lang.UnsupportedOperationException
- If this entry does not permit the distinguished name to be set.java.lang.NullPointerException
- If dn
was null
.public AddRequest setName(java.lang.String dn) throws PluginException, java.lang.UnsupportedOperationException, java.lang.NullPointerException
AddRequest
setName
in interface AddRequest
setName
in interface Entry
dn
- The string representation of the distinguished name.PluginException
- If dn
could not be decoded.java.lang.UnsupportedOperationException
- If this entry does not permit the distinguished name to be set.java.lang.NullPointerException
- If dn
was null
.public <C extends Control> C getControl(ControlDecoder<C> decoder) throws java.lang.NullPointerException, PluginException
Request
getControl
in interface Request
C
- The type of control to be decoded and returned.decoder
- The control decoder.null
if the control is not included
with this request.java.lang.NullPointerException
- If decoder
was null
.PluginException
- If the control could not be decoded because it was malformed in
some way (e.g. the control value was missing, or its content
could not be decoded).public java.util.List<Control> getControls()
Request
List
containing the controls included with this request.
The returned List
is immutable.getControls
in interface Request
List
containing the controls.public Request removeControl(Control control) throws java.lang.UnsupportedOperationException, java.lang.NullPointerException
Request
removeControl
in interface Request
control
- The control to be removed from this request.java.lang.UnsupportedOperationException
- If this request does not permit controls to be removed.java.lang.NullPointerException
- If control
was null
.public java.lang.Object removeAttachment(java.lang.String name)
AttachmentHolder
removeAttachment
in interface AttachmentHolder
name
- The name for the attachment to remove. It will be
treated in a case-sensitive manner.null
if it
does not exist.public java.lang.Object setAttachment(java.lang.String name, java.lang.Object value)
AttachmentHolder
setAttachment
in interface AttachmentHolder
name
- The name to use for the attachment.value
- The value to use for the attachment.null
if there was previously no such
attachment.public java.lang.Object getAttachment(java.lang.String name)
AttachmentHolder
getAttachment
in interface AttachmentHolder
name
- The name for the attachment to retrieve. It will
be treated in a case-sensitive manner.null
if it
does not exist.public java.util.Set<java.lang.String> getAttachmentNames()
AttachmentHolder
getAttachmentNames
in interface AttachmentHolder
public boolean isInternal()
Request
true
if this request is flagged as internal; false
otherwise.
When a request is flagged internal, various components of the server may behave in a manner that is less restrictive. For example, attributes defined as NO-USER-MODIFICATION are allowed to be added, private backends are accessible, ...
isInternal
in interface Request
true
if this request is flagged as internal; false
otherwise.