Interface ExtendedRequest<S extends ExtendedResult>
- 
- Type Parameters:
 S- The type of result.
- All Superinterfaces:
 ProtocolOp,Request
- All Known Subinterfaces:
 CancelExtendedRequest,GenericExtendedRequest,PasswordModifyExtendedRequest,StartTlsExtendedRequest,WhoAmIExtendedRequest
- All Known Implementing Classes:
 AbstractExtendedRequest
public interface ExtendedRequest<S extends ExtendedResult> extends Request
The Extended operation allows additional operations to be defined for services not already available in the protocol; for example, to implement an operation which installs transport layer security (seeStartTlsExtendedRequest).To determine whether a directory server supports a given extension, read the list of supported extensions from the root DSE to get a collection of extension OIDs, and then check for a match. For example:
Connection connection = ...; Collection<String> supported = RootDSE.readRootDSE(connection).getSupportedExtendedOperations(); ExtendedRequest extension = ...; String OID = extension.getOID(); if (supported != null && !supported.isEmpty() && supported.contains(OID)) { // The extension is supported. Use it here... } 
- 
- 
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 ExtendedRequest<S>addControl(Control control)Adds the provided control to this protocol-op.ExtendedRequest<S>addControls(Iterable<? extends Control> controls)Adds the provided controls to this protocol-op.<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.StringgetOid()Returns the numeric OID associated with this extended request.ExtendedResultDecoder<S>getResultDecoder()Returns a decoder which can be used to decoded responses to this extended request.ByteStringgetValue()Returns the value, if any, associated with this extended request.booleanhasValue()Returnstrueif this extended request has a value.- 
Methods inherited from interface org.forgerock.opendj.ldap.messages.ProtocolOp
containsControl, getControl 
 - 
 
 - 
 
- 
- 
Method Detail
- 
addControl
ExtendedRequest<S> addControl(Control control)
Description copied from interface:ProtocolOpAdds the provided control to this protocol-op.- Specified by:
 addControlin interfaceProtocolOp- Specified by:
 addControlin interfaceRequest- Parameters:
 control- The control to be added to this protocol-op.- Returns:
 - This protocol-op.
 
 
- 
addControls
ExtendedRequest<S> addControls(Iterable<? extends Control> controls)
Description copied from interface:ProtocolOpAdds the provided controls to this protocol-op.- Specified by:
 addControlsin interfaceProtocolOp- Specified by:
 addControlsin interfaceRequest- Parameters:
 controls- The controls to be added to this protocol-op.- Returns:
 - This protocol-op.
 
 
- 
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. 
 
- 
getOid
String getOid()
Returns the numeric OID associated with this extended request.- Returns:
 - The numeric OID associated with this extended request.
 
 
- 
getResultDecoder
ExtendedResultDecoder<S> getResultDecoder()
Returns a decoder which can be used to decoded responses to this extended request.- Returns:
 - A decoder which can be used to decoded responses to this extended request.
 
 
- 
getValue
ByteString getValue()
Returns the value, if any, associated with this extended request. Its format is defined by the specification of this extended request.- Returns:
 - The value associated with this extended request, or 
nullif there is no value. 
 
- 
hasValue
boolean hasValue()
Returnstrueif this extended request has a value. In some circumstances it may be useful to determine if a extended request has a value, without actually calculating the value and incurring any performance costs.- Returns:
 trueif this extended request has a value, orfalseif there is no value.
 
 - 
 
 -