public interface Operation extends RequestContext, AttachmentHolder
Implementations may query the context in order to:
In addition, the context acts as a transaction manager, coordinating any resources accessed during the processing of a request and any subsequent requests forming part of the same logical transaction.
FiXME: this interface should be split up into sub-components, such as network information (protocol, addresses), client information (auth ID, SSF, privileges).
Modifier and Type | Method and Description |
---|---|
Entry |
getAuthenticationEntry()
Retrieves the entry for the user as whom the client is authenticated.
|
Entry |
getAuthorizationEntry()
Retrieves the entry for the user that should be considered the
authorization identity for this operation.
|
BindRequest |
getBindRequest()
Retrieves the last successful bind request from the client.
|
Connection |
getConnection()
Returns a connection for performing internal operations.
|
long |
getConnectionID()
Retrieves the unique identifier that is assigned to the client connection
that submitted this operation.
|
InetSocketAddress |
getLocalAddress()
Returns the
InetSocketAddress associated with the local system. |
int |
getLookthroughLimit()
Retrieves the default maximum number of entries that should checked for
matches during a search.
|
long |
getOperationID()
Retrieves the operation ID for this operation.
|
InetSocketAddress |
getPeerAddress()
Returns the
InetSocketAddress associated with the remote system. |
String |
getProtocol()
Retrieves the protocol that the client is using to communicate with the
Directory Server.
|
int |
getSecurityStrengthFactor()
Returns the strongest cipher strength currently in use by the underlying
connection.
|
int |
getSizeLimit()
Retrieves the size limit that will be enforced for searches performed
using this client connection.
|
int |
getTimeLimit()
Retrieves the time limit that will be enforced for searches performed
using this client connection.
|
boolean |
hasAllPrivileges(Collection<Privilege> privileges)
Indicates whether the authenticate client has all of the specified
privileges.
|
boolean |
hasPrivilege(Privilege privilege)
Indicates whether the authenticated client has the specified privilege.
|
void |
setAuthorizationEntry(Entry authorizationEntry)
Sets the entry for the user that should be considered the authorization
identity for this operation.
|
addCancelRequestListener, checkIfCancelled, getMessageID, removeCancelRequestListener
getAttachment, getAttachmentNames, removeAttachment, setAttachment
Entry getAuthorizationEntry()
null
if no authentication has been performed on that connection.
However, it may be some other value if special processing has been
requested (e.g., the operation included a proxied authorization control).null
if the
authorization identity should be the unauthenticated user.Connection getConnection()
long getOperationID()
boolean hasAllPrivileges(Collection<Privilege> privileges)
privileges
- The array of privileges for which to make the determination.true
if the authenticated client has all of the specified
privileges, or false
if not.boolean hasPrivilege(Privilege privilege)
privilege
- The privilege for which to make the determination.true
if the authenticated client has the specified
privilege, or false
if not.void setAuthorizationEntry(Entry authorizationEntry)
authorizationEntry
- The entry for the user that should be considered the
authorization identity for this operation, or null
if
it should be the unauthenticated user.Entry getAuthenticationEntry()
null
if the client is unauthenticated.BindRequest getBindRequest()
null
if the client
have not yet successfully bind.long getConnectionID()
InetSocketAddress getLocalAddress()
InetSocketAddress
associated with the local system.InetSocketAddress
associated with the local system.int getLookthroughLimit()
InetSocketAddress getPeerAddress()
InetSocketAddress
associated with the remote system.InetSocketAddress
associated with the remote system.String getProtocol()
int getSecurityStrengthFactor()
int getSizeLimit()
int getTimeLimit()
Copyright 2010-2017 ForgeRock AS.