Interface AddRequest
-
- All Superinterfaces:
ChangeRecord,Entry,ProtocolOp,Request
public interface AddRequest extends Request, ChangeRecord, Entry
The Add operation allows a client to request the addition of an entry into the Directory.The RDN attribute(s) may or may not be included in the Add request. NO-USER-MODIFICATION attributes such as the
createTimestamporcreatorsNameattributes must not be included, since the server maintains these automatically.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.forgerock.opendj.ldap.messages.Request
Request.RequestType
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description AddRequestaddAttribute(String attributeDescription, Object... values)Ensures that this entry contains the provided attribute and values (optional operation).booleanaddAttribute(Attribute attribute)Ensures that this entry contains the provided attribute and values (optional operation).booleanaddAttribute(Attribute attribute, Collection<? super ByteString> duplicateValues)Ensures that this entry contains the provided attribute and values (optional operation).AddRequestaddControl(Control control)Adds the provided control to this protocol-op.AddRequestaddControls(Iterable<? extends Control> controls)Adds the provided controls to this protocol-op.AddRequestclearAttributes()Removes all the attributes from this entry (optional operation).booleancontainsAttribute(String attributeDescription, Object... values)Returnstrueif this entry contains all of the attribute values contained invalues.booleancontainsAttribute(Attribute attribute, Collection<? super ByteString> missingValues)Returnstrueif this entry contains all of the attribute values contained inattribute.Iterable<Attribute>getAllAttributes()Returns anIterablecontaining all of the attributes in this entry.Iterable<Attribute>getAllAttributes(String attributeDescription)Returns anIterablecontaining all the attributes in this entry having an attribute description which is a sub-type of the provided attribute description.Iterable<Attribute>getAllAttributes(AttributeDescription attributeDescription)Returns anIterablecontaining all the attributes in this entry having an attribute description which is a sub-type of the provided attribute description.AttributegetAttribute(String attributeDescription)Returns the named attribute contained in this entry, ornullif it is not included with this entry.AttributegetAttribute(AttributeDescription attributeDescription)Returns the named attribute contained in this entry, ornullif it is not included with this entry.intgetAttributeCount()Returns the number of attributes in this entry.<C extends Control>
CgetControl(ControlDecoder<C> decoder, DecodeOptions options)Decodes and returns the first control in this protocol-op having an OID corresponding to the provided control decoder.List<Control>getControls()Returns aListcontaining the controls included with this protocol-op.DngetName()Returns the distinguished name of the entry being modified by thisChangeRecord.AddRequestremoveAttribute(String attributeDescription, Object... values)Removes all of the attribute values contained invaluesfrom the named attribute in this entry if it is present (optional operation).booleanremoveAttribute(AttributeDescription attributeDescription)Removes the named attribute from this entry if it is present (optional operation).booleanremoveAttribute(Attribute attribute, Collection<? super ByteString> missingValues)Removes all of the attribute values contained inattributefrom this entry if it is present (optional operation).AddRequestreplaceAttribute(String attributeDescription, Object... values)Adds all of the attribute values contained invaluesto this entry, replacing any existing attribute values (optional operation).booleanreplaceAttribute(Attribute attribute)Adds all of the attribute values contained inattributeto this entry, replacing any existing attribute values (optional operation).AddRequestsetName(String dn)Sets the distinguished name of the entry to be updated.AddRequestsetName(Dn dn)Sets the distinguished name of the entry to be updated.-
Methods inherited from interface org.forgerock.opendj.ldap.Entry
addAttributeIfAbsent, containsAnyAttributes, containsAnyAttributes, containsAttribute, equals, hashCode, mergeAttribute, parseAttribute, parseAttribute, toString
-
Methods inherited from interface org.forgerock.opendj.ldap.messages.ProtocolOp
containsControl, getControl
-
-
-
-
Method Detail
-
addAttribute
boolean addAttribute(Attribute attribute)
Description copied from interface:EntryEnsures that this entry contains the provided attribute and values (optional operation). This method has the following semantics:- If this entry does not already contain an attribute with a
matchingattribute description, then this entry will be modified such that it containsattribute, even if it is empty. - If this entry already contains an attribute with a
matchingattribute description, then the attribute values contained inattributewill be merged with the existing attribute values.
NOTE: When
attributeis non-empty, this method implements LDAP Modify add semantics.- Specified by:
addAttributein interfaceEntry- Parameters:
attribute- The attribute values to be added to this entry, merging with any existing attribute values.- Returns:
trueif this entry changed as a result of this call.
- If this entry does not already contain an attribute with a
-
addAttribute
boolean addAttribute(Attribute attribute, Collection<? super ByteString> duplicateValues)
Description copied from interface:EntryEnsures that this entry contains the provided attribute and values (optional operation). This method has the following semantics:- If this entry does not already contain an attribute with a
matchingattribute description, then this entry will be modified such that it containsattribute, even if it is empty. - If this entry already contains an attribute with a
matchingattribute description, then the attribute values contained inattributewill be merged with the existing attribute values.
NOTE: When
attributeis non-empty, this method implements LDAP Modify add semantics.- Specified by:
addAttributein interfaceEntry- Parameters:
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, ornullif duplicate values should not be saved.- Returns:
trueif this entry changed as a result of this call.
- If this entry does not already contain an attribute with a
-
addAttribute
AddRequest addAttribute(String attributeDescription, Object... values)
Description copied from interface:EntryEnsures that this entry contains the provided attribute and values (optional operation). This method has the following semantics:- If this entry does not already contain an attribute with a
matchingattribute description, then this entry will be modified such that it containsattribute, even if it is empty. - If this entry already contains an attribute with a
matchingattribute description, then the attribute values contained inattributewill be merged with the existing attribute values.
The attribute description will be decoded using the schema associated with this entry (usually the default schema).
Any attribute values which are not instances of
ByteStringwill be converted using theByteString.valueOfObject(Object)method.NOTE: When
attributeis non-empty, this method implements LDAP Modify add semantics.- Specified by:
addAttributein interfaceEntry- Parameters:
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.- Returns:
- This entry.
- If this entry does not already contain an attribute with a
-
addControl
AddRequest addControl(Control control)
Description copied from interface:ProtocolOpAdds the provided control to this protocol-op.- Specified by:
addControlin interfaceChangeRecord- Specified by:
addControlin interfaceProtocolOp- Specified by:
addControlin interfaceRequest- Parameters:
control- The control to be added to this protocol-op.- Returns:
- This protocol-op.
-
addControls
AddRequest addControls(Iterable<? extends Control> controls)
Description copied from interface:ProtocolOpAdds the provided controls to this protocol-op.- Specified by:
addControlsin interfaceChangeRecord- Specified by:
addControlsin interfaceProtocolOp- Specified by:
addControlsin interfaceRequest- Parameters:
controls- The controls to be added to this protocol-op.- Returns:
- This protocol-op.
-
clearAttributes
AddRequest clearAttributes()
Description copied from interface:EntryRemoves all the attributes from this entry (optional operation).- Specified by:
clearAttributesin interfaceEntry- Returns:
- This entry.
-
containsAttribute
boolean containsAttribute(Attribute attribute, Collection<? super ByteString> missingValues)
Description copied from interface:EntryReturnstrueif this entry contains all of the attribute values contained inattribute. Ifattributeis empty then this method will returntrueif the attribute is present in this entry, regardless of how many values it contains.- Specified by:
containsAttributein interfaceEntry- Parameters:
attribute- The attribute values whose presence in this entry is to be tested.missingValues- A collection into which missing values will be added, ornullif missing values should not be saved.- Returns:
trueif this entry contains all of the attribute values contained inattribute.
-
containsAttribute
boolean containsAttribute(String attributeDescription, Object... values)
Description copied from interface:EntryReturnstrueif this entry contains all of the attribute values contained invalues. Ifvaluesisnullor empty then this method will returntrueif the attribute is present in this entry, regardless of how many values it contains.The attribute description will be decoded using the schema associated with this entry (usually the default schema).
Any attribute values which are not instances of
ByteStringwill be converted using theByteString.valueOfObject(Object)method.- Specified by:
containsAttributein interfaceEntry- Parameters:
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 benull.- Returns:
trueif this entry contains all of the attribute values contained invalues.
-
getAllAttributes
Iterable<Attribute> getAllAttributes()
Description copied from interface:EntryReturns anIterablecontaining all of the attributes in this entry. The returnedIterablemay be used to remove attributes if permitted by this entry.- Specified by:
getAllAttributesin interfaceEntry- Returns:
- An
Iterablecontaining all of the attributes.
-
getAllAttributes
Iterable<Attribute> getAllAttributes(AttributeDescription attributeDescription)
Description copied from interface:EntryReturns anIterablecontaining all the attributes in this entry having an attribute description which is a sub-type of the provided attribute description. The returnedIterablemay be used to remove attributes if permitted by this entry.- Specified by:
getAllAttributesin interfaceEntry- Parameters:
attributeDescription- The name of the attributes to be returned.- Returns:
- An
Iterablecontaining the matching attributes.
-
getAllAttributes
Iterable<Attribute> getAllAttributes(String attributeDescription)
Description copied from interface:EntryReturns anIterablecontaining all the attributes in this entry having an attribute description which is a sub-type of the provided attribute description. The returnedIterablemay 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).
- Specified by:
getAllAttributesin interfaceEntry- Parameters:
attributeDescription- The name of the attributes to be returned.- Returns:
- An
Iterablecontaining the matching attributes.
-
getAttribute
Attribute getAttribute(AttributeDescription attributeDescription)
Description copied from interface:EntryReturns the named attribute contained in this entry, ornullif it is not included with this entry.- Specified by:
getAttributein interfaceEntry- Parameters:
attributeDescription- The name of the attribute to be returned.- Returns:
- The named attribute, or
nullif it is not included with this entry.
-
getAttribute
Attribute getAttribute(String attributeDescription)
Description copied from interface:EntryReturns the named attribute contained in this entry, ornullif it is not included with this entry.The attribute description will be decoded using the schema associated with this entry (usually the default schema).
- Specified by:
getAttributein interfaceEntry- Parameters:
attributeDescription- The name of the attribute to be returned.- Returns:
- The named attribute, or
nullif it is not included with this entry.
-
getAttributeCount
int getAttributeCount()
Description copied from interface:EntryReturns the number of attributes in this entry.- Specified by:
getAttributeCountin interfaceEntry- Returns:
- The number of attributes.
-
getControl
<C extends Control> C getControl(ControlDecoder<C> decoder, DecodeOptions options) throws DecodeException
Description copied from interface:ProtocolOpDecodes and returns the first control in this protocol-op having an OID corresponding to the provided control decoder.- Specified by:
getControlin interfaceProtocolOp- Type Parameters:
C- The type of control to be decoded and returned.- Parameters:
decoder- The control decoder.options- The set of decode options which should be used when decoding the control.- Returns:
- The decoded control, or
nullif the control is not included with this protocol-op. - Throws:
DecodeException- 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).
-
getControls
List<Control> getControls()
Description copied from interface:ProtocolOpReturns aListcontaining the controls included with this protocol-op. The returnedListmay be modified if permitted by this protocol-op.- Specified by:
getControlsin interfaceProtocolOp- Returns:
- A
Listcontaining the controls.
-
getName
Dn getName()
Description copied from interface:ChangeRecordReturns the distinguished name of the entry being modified by thisChangeRecord.- Specified by:
getNamein interfaceChangeRecord- Specified by:
getNamein interfaceEntry- Returns:
- The distinguished name of the entry being modified.
-
removeAttribute
boolean removeAttribute(Attribute attribute, Collection<? super ByteString> missingValues)
Description copied from interface:EntryRemoves all of the attribute values contained inattributefrom this entry if it is present (optional operation). Ifattributeis empty then the entire attribute will be removed if it is present.NOTE: This method implements LDAP Modify delete semantics.
- Specified by:
removeAttributein interfaceEntry- Parameters:
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, ornullif missing values should not be saved.- Returns:
trueif this entry changed as a result of this call.
-
removeAttribute
boolean removeAttribute(AttributeDescription attributeDescription)
Description copied from interface:EntryRemoves the named attribute from this entry if it is present (optional operation). If this attribute does not contain the attribute, the call leaves this entry unchanged and returnsfalse.- Specified by:
removeAttributein interfaceEntry- Parameters:
attributeDescription- The name of the attribute to be removed.- Returns:
trueif this entry changed as a result of this call.
-
removeAttribute
AddRequest removeAttribute(String attributeDescription, Object... values)
Description copied from interface:EntryRemoves all of the attribute values contained invaluesfrom the named attribute in this entry if it is present (optional operation). Ifvaluesisnullor empty then the entire attribute will be removed if it is present.The attribute description will be decoded using the schema associated with this entry (usually the default schema).
Any attribute values which are not instances of
ByteStringwill be converted using theByteString.valueOfObject(Object)method.NOTE: This method implements LDAP Modify delete semantics.
- Specified by:
removeAttributein interfaceEntry- Parameters:
attributeDescription- The name of the attribute whose values are to be removed.values- The attribute values to be removed from this entry, which may benullor empty if the entire attribute is to be removed.- Returns:
- This entry.
-
replaceAttribute
boolean replaceAttribute(Attribute attribute)
Description copied from interface:EntryAdds all of the attribute values contained inattributeto this entry, replacing any existing attribute values (optional operation). Ifattributeis empty then the entire attribute will be removed if it is present.NOTE: This method implements LDAP Modify replace semantics as described in RFC 4511 - Section 4.6. Modify Operation.
- Specified by:
replaceAttributein interfaceEntry- Parameters:
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.- Returns:
trueif this entry changed as a result of this call.
-
replaceAttribute
AddRequest replaceAttribute(String attributeDescription, Object... values)
Description copied from interface:EntryAdds all of the attribute values contained invaluesto this entry, replacing any existing attribute values (optional operation). Ifvaluesisnullor empty then the entire attribute will be removed if it is present.The attribute description will be decoded using the schema associated with this entry (usually the default schema).
Any attribute values which are not instances of
ByteStringwill be converted using theByteString.valueOfObject(Object)method.NOTE: This method implements LDAP Modify replace semantics as described in RFC 4511 - Section 4.6. Modify Operation.
- Specified by:
replaceAttributein interfaceEntry- Parameters:
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 benullor empty if the entire attribute is to be removed.- Returns:
- This entry.
-
setName
AddRequest setName(Dn dn)
Description copied from interface:ChangeRecordSets the distinguished name of the entry to be updated. The server shall not perform any alias dereferencing in determining the object to be updated.- Specified by:
setNamein interfaceChangeRecord- Specified by:
setNamein interfaceEntry- Parameters:
dn- The the distinguished name of the entry to be updated.- Returns:
- This change record.
-
setName
AddRequest setName(String dn)
Description copied from interface:ChangeRecordSets the distinguished name of the entry to be updated. The server shall not perform any alias dereferencing in determining the object to be updated.- Specified by:
setNamein interfaceChangeRecord- Specified by:
setNamein interfaceEntry- Parameters:
dn- The the distinguished name of the entry to be updated.- Returns:
- This change record.
-
-