com.unboundid.ldap.sdk.unboundidds.controls
Class GetUserResourceLimitsResponseControl

java.lang.Object
  extended by com.unboundid.ldap.sdk.Control
      extended by com.unboundid.ldap.sdk.unboundidds.controls.GetUserResourceLimitsResponseControl
All Implemented Interfaces:
DecodeableControl, java.io.Serializable

@NotMutable
@ThreadSafety(level=COMPLETELY_THREADSAFE)
public final class GetUserResourceLimitsResponseControl
extends Control
implements DecodeableControl

NOTE: This class is part of the Commercial Edition of the UnboundID LDAP SDK for Java. It is not available for use in applications that include only the Standard Edition of the LDAP SDK, and is not supported for use in conjunction with non-UnboundID products.
This class provides a response control that may be included in the response to a successful bind operation in order to provide information about custom resource limits for the user, including size limit, time limit, idle time limit, lookthrough limit, equivalent authorization user DN, and client connection policy name.

The criticality for this control should be false. It must have a value with the following encoding:
   USER_RESOURCE_LIMITS_VALUE ::= SEQUENCE {
     sizeLimit                      [0] INTEGER OPTIONAL,
     timeLimitSeconds               [1] INTEGER OPTIONAL,
     idleTimeLimitSeconds           [2] INTEGER OPTIONAL,
     lookthroughLimit               [3] INTEGER OPTIONAL,
     equivalentAuthzUserDN          [4] LDAPDN OPTIONAL,
     clientConnectionPolicyName     [5] OCTET STRING OPTIONAL,
     groupDNs                       [6] SET OF OCTET STRING OPTIONAL,
     privilegeNames                 [7] SET OF OCTET STRING OPTIONAL,
     otherAttributes                [8] PartialAttributeList OPTIONAL,
     ... }
 

See Also:
GetUserResourceLimitsRequestControl, Serialized Form

Field Summary
static java.lang.String GET_USER_RESOURCE_LIMITS_RESPONSE_OID
          The OID (1.3.6.1.4.1.30221.2.5.26) for the get user resource limits response control.
 
Constructor Summary
GetUserResourceLimitsResponseControl(java.lang.Long sizeLimit, java.lang.Long timeLimitSeconds, java.lang.Long idleTimeLimitSeconds, java.lang.Long lookthroughLimit, java.lang.String equivalentAuthzUserDN, java.lang.String clientConnectionPolicyName)
          Creates a new get user resource limits response control with the provided information.
GetUserResourceLimitsResponseControl(java.lang.Long sizeLimit, java.lang.Long timeLimitSeconds, java.lang.Long idleTimeLimitSeconds, java.lang.Long lookthroughLimit, java.lang.String equivalentAuthzUserDN, java.lang.String clientConnectionPolicyName, java.util.List<java.lang.String> groupDNs, java.util.List<java.lang.String> privilegeNames, java.util.List<Attribute> otherAttributes)
          Creates a new get user resource limits response control with the provided information.
GetUserResourceLimitsResponseControl(java.lang.String oid, boolean isCritical, ASN1OctetString value)
          Creates a new get user resource limits response control decoded from the given generic control contents.
 
Method Summary
 GetUserResourceLimitsResponseControl decodeControl(java.lang.String oid, boolean isCritical, ASN1OctetString value)
          Creates a new instance of this decodeable control from the provided information.
static GetUserResourceLimitsResponseControl get(BindResult result)
          Extracts a get user resource limits response control from the provided result.
 java.lang.String getClientConnectionPolicyName()
          Retrieves the name of the client connection policy that has been assigned to the user, if available.
 java.lang.String getControlName()
          Retrieves the user-friendly name for this control, if available.
 java.lang.String getEquivalentAuthzUserDN()
          Retrieves the equivalent authorization user DN, for use in servers in an entry-balancing environment in which the user's entry does not exist.
 java.util.List<java.lang.String> getGroupDNs()
          Retrieves the DNs of any groups in which the user is a member.
 java.lang.Long getIdleTimeLimitSeconds()
          Retrieves the custom idle time limit for the user in seconds, if available.
 java.lang.Long getLookthroughLimit()
          Retrieves the custom lookthrough limit for the user, if available.
 java.util.List<Attribute> getOtherAttributes()
          Retrieves a list containing additional attributes from the user's entry.
 java.util.List<java.lang.String> getPrivilegeNames()
          Retrieves the names of any privileges assigned to the user.
 java.lang.Long getSizeLimit()
          Retrieves the custom size limit for the user, if available.
 java.lang.Long getTimeLimitSeconds()
          Retrieves the custom time limit for the user in seconds, if available.
 void toString(java.lang.StringBuilder buffer)
          Appends a string representation of this LDAP control to the provided buffer.
 
Methods inherited from class com.unboundid.ldap.sdk.Control
decode, decode, decodeControls, deregisterDecodeableControl, encode, encodeControls, equals, getOID, getValue, hashCode, hasValue, isCritical, readFrom, registerDecodeableControl, toString, writeTo
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

GET_USER_RESOURCE_LIMITS_RESPONSE_OID

public static final java.lang.String GET_USER_RESOURCE_LIMITS_RESPONSE_OID
The OID (1.3.6.1.4.1.30221.2.5.26) for the get user resource limits response control.

See Also:
Constant Field Values
Constructor Detail

GetUserResourceLimitsResponseControl

public GetUserResourceLimitsResponseControl(java.lang.Long sizeLimit,
                                            java.lang.Long timeLimitSeconds,
                                            java.lang.Long idleTimeLimitSeconds,
                                            java.lang.Long lookthroughLimit,
                                            java.lang.String equivalentAuthzUserDN,
                                            java.lang.String clientConnectionPolicyName)
Creates a new get user resource limits response control with the provided information.

Parameters:
sizeLimit - The custom size limit for the user. It may be less than or equal to zero if no size limit should be enforced for the user. It may be null if there is no custom size limit or it is not to be included in the control.
timeLimitSeconds - The custom time limit for the user, in seconds. It may be less than or equal to zero if no time limit should be enforced for the user. It may be null if there is no custom time limit or it is not to be included in the control.
idleTimeLimitSeconds - The custom idle time limit for the user, in seconds. It may be less than or equal to zero if no idle time limit should be enforced for the user. It may be null if there is no custom idle time limit or it is not to be included in the control.
lookthroughLimit - The custom lookthrough limit for the user. It may be less than or equal to zero if no lookthrough limit should be enforced for the user. It may be null if there is no custom lookthrough limit for the user or it is not to be included in the control.
equivalentAuthzUserDN - The DN of a user with equivalent authorization rights for use in servers in an entry-balancing environment in which the user's entry does not exist. It may be an empty string if the equivalent authorization should be anonymous, or null if there is no custom equivalent authorization user DN or it is not to be included in the control.
clientConnectionPolicyName - The name of the client connection policy that has been assigned to the user, or null if the client connection policy name is not to be included in the control.

GetUserResourceLimitsResponseControl

public GetUserResourceLimitsResponseControl(java.lang.Long sizeLimit,
                                            java.lang.Long timeLimitSeconds,
                                            java.lang.Long idleTimeLimitSeconds,
                                            java.lang.Long lookthroughLimit,
                                            java.lang.String equivalentAuthzUserDN,
                                            java.lang.String clientConnectionPolicyName,
                                            java.util.List<java.lang.String> groupDNs,
                                            java.util.List<java.lang.String> privilegeNames,
                                            java.util.List<Attribute> otherAttributes)
Creates a new get user resource limits response control with the provided information.

Parameters:
sizeLimit - The custom size limit for the user. It may be less than or equal to zero if no size limit should be enforced for the user. It may be null if there is no custom size limit or it is not to be included in the control.
timeLimitSeconds - The custom time limit for the user, in seconds. It may be less than or equal to zero if no time limit should be enforced for the user. It may be null if there is no custom time limit or it is not to be included in the control.
idleTimeLimitSeconds - The custom idle time limit for the user, in seconds. It may be less than or equal to zero if no idle time limit should be enforced for the user. It may be null if there is no custom idle time limit or it is not to be included in the control.
lookthroughLimit - The custom lookthrough limit for the user. It may be less than or equal to zero if no lookthrough limit should be enforced for the user. It may be null if there is no custom lookthrough limit for the user or it is not to be included in the control.
equivalentAuthzUserDN - The DN of a user with equivalent authorization rights for use in servers in an entry-balancing environment in which the user's entry does not exist. It may be an empty string if the equivalent authorization should be anonymous, or null if there is no custom equivalent authorization user DN or it is not to be included in the control.
clientConnectionPolicyName - The name of the client connection policy that has been assigned to the user, or null if the client connection policy name is not to be included in the control.
groupDNs - The DNs of the groups in which the user is a member. It may be null if group membership is not known, or empty if the user isn't a member of any groups.
privilegeNames - The names of the privileges assigned to the user. It may be null if the privilege names are not known, or empty if the user doesn't have any privileges.
otherAttributes - A set of additional attributes from the user's entry. It may be null or empty if no additional attributes are needed.

GetUserResourceLimitsResponseControl

public GetUserResourceLimitsResponseControl(java.lang.String oid,
                                            boolean isCritical,
                                            ASN1OctetString value)
                                     throws LDAPException
Creates a new get user resource limits response control decoded from the given generic control contents.

Parameters:
oid - The OID for the control.
isCritical - Indicates whether this control should be marked critical.
value - The value for the control. It may be null if the control to decode does not have a value.
Throws:
LDAPException - If a problem occurs while attempting to decode the generic control as a get user resource limits response control.
Method Detail

decodeControl

public GetUserResourceLimitsResponseControl decodeControl(java.lang.String oid,
                                                          boolean isCritical,
                                                          ASN1OctetString value)
                                                   throws LDAPException
Creates a new instance of this decodeable control from the provided information.

Specified by:
decodeControl in interface DecodeableControl
Parameters:
oid - The OID for the control.
isCritical - Indicates whether the control should be marked critical.
value - The encoded value for the control. This may be null if no value was provided.
Returns:
The decoded representation of this control.
Throws:
LDAPException - If the provided information cannot be decoded as a valid instance of this decodeable control.

get

public static GetUserResourceLimitsResponseControl get(BindResult result)
                                                throws LDAPException
Extracts a get user resource limits response control from the provided result.

Parameters:
result - The bind result from which to retrieve the get user resource limits response control.
Returns:
The get user resource limits response control contained in the provided result, or null if the result did not contain a get user resource limits response control.
Throws:
LDAPException - If a problem is encountered while attempting to decode the get user resource limits response control contained in the provided result.

getSizeLimit

public java.lang.Long getSizeLimit()
Retrieves the custom size limit for the user, if available.

Returns:
The custom size limit for the user, -1 if no size limit should be enforced for the user, or null if no custom size limit was included in the control.

getTimeLimitSeconds

public java.lang.Long getTimeLimitSeconds()
Retrieves the custom time limit for the user in seconds, if available.

Returns:
The custom time limit for the user in seconds, -1 if no time limit should be enforced for the user, or null if no custom time limit was included in the control.

getIdleTimeLimitSeconds

public java.lang.Long getIdleTimeLimitSeconds()
Retrieves the custom idle time limit for the user in seconds, if available.

Returns:
The custom idle time limit for the user in seconds, -1 if no idle time limit should be enforced for the user, or null if no custom idle time limit was included in the control.

getLookthroughLimit

public java.lang.Long getLookthroughLimit()
Retrieves the custom lookthrough limit for the user, if available.

Returns:
The custom lookthrough limit for the user, -1 if no lookthrough limit should be enforced for the user, or null if no custom lookthrough limit was included in the control.

getEquivalentAuthzUserDN

public java.lang.String getEquivalentAuthzUserDN()
Retrieves the equivalent authorization user DN, for use in servers in an entry-balancing environment in which the user's entry does not exist.

Returns:
The equivalent authorization user DN for the user, an empty string if the equivalent authorization is anonymous, or null if no equivalent authorization user DN was included in the control.

getClientConnectionPolicyName

public java.lang.String getClientConnectionPolicyName()
Retrieves the name of the client connection policy that has been assigned to the user, if available.

Returns:
The name of the client connection policy that has been assigned to the user, or null if the client connection policy name was not included in the control.

getGroupDNs

public java.util.List<java.lang.String> getGroupDNs()
Retrieves the DNs of any groups in which the user is a member.

Returns:
The DNs of any groups in which the user is a member, an empty list if the user is not a member of any groups, or null if the set of group DNs is not known.

getPrivilegeNames

public java.util.List<java.lang.String> getPrivilegeNames()
Retrieves the names of any privileges assigned to the user.

Returns:
The names of any privileges assigned to the user, an empty list if the user is known to have no privileges, or null if the set of user privileges is not known.

getOtherAttributes

public java.util.List<Attribute> getOtherAttributes()
Retrieves a list containing additional attributes from the user's entry.

Returns:
A list containing additional attributes from the user's entry, or an empty list if no additional attributes were provided.

getControlName

public java.lang.String getControlName()
Retrieves the user-friendly name for this control, if available. If no user-friendly name has been defined, then the OID will be returned.

Overrides:
getControlName in class Control
Returns:
The user-friendly name for this control, or the OID if no user-friendly name is available.

toString

public void toString(java.lang.StringBuilder buffer)
Appends a string representation of this LDAP control to the provided buffer.

Overrides:
toString in class Control
Parameters:
buffer - The buffer to which to append the string representation of this buffer.