/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License, Version 1.0 only
* (the "License"). You may not use this file except in compliance
* with the License.
*
* You can obtain a copy of the license at
* trunk/opends/resource/legal-notices/OpenDS.LICENSE
* or https://OpenDS.dev.java.net/OpenDS.LICENSE.
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at
* trunk/opends/resource/legal-notices/OpenDS.LICENSE. If applicable,
* add the following below this CDDL HEADER, with the fields enclosed
* by brackets "[]" replaced with your own identifying information:
* Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*
*
* Copyright 2008-2009 Sun Microsystems, Inc.
* Portions Copyright 2011 ForgeRock AS
*/
package org.opends.server.authorization.dseecompat;
import org.opends.server.core.*;
import org.opends.server.types.*;
import org.opends.server.workflowelement.localbackend.*;
/**
* The AciLDAPOperationContainer is an AciContainer
* extended class that wraps each LDAP operation being
* evaluated or tested for target matched of an ACI.
*/
public class AciLDAPOperationContainer extends AciContainer {
/**
* Constructor interface for all currently supported LDAP operations.
* @param operation The compare operation to evaluate.
* @param rights The rights of a compare operation.
* @param entry The entry for evaluation.
*/
public AciLDAPOperationContainer(Operation operation,
int rights, Entry entry)
{
super(operation, rights, entry);
}
/**
* Constructor interface for the compare operation.
* @param operation The compare operation to evaluate.
* @param rights The rights of a compare operation.
*/
public AciLDAPOperationContainer(LocalBackendCompareOperation operation,
int rights)
{
super(operation, rights, operation.getEntryToCompare());
}
/**
* Constructor interface for evaluation general purpose Operation, entry and
* rights..
*
* @param operation The operation to use in the evaluation.
* @param e The entry for evaluation.
* @param authInfo The authentication information to use in the evaluation.
* @param rights The rights of the operation.
*/
public AciLDAPOperationContainer(Operation operation, Entry e,
AuthenticationInfo authInfo,
int rights) {
super(operation, e, authInfo, rights);
}
/**
* Constructor interface for evaluation of a control.
*
* @param operation The operation to use in the evaluation.
* @param e An entry built especially for evaluation.
* @param c The control to evaluate.
* @param rights The rights of a control.
*/
public AciLDAPOperationContainer(Operation operation, Entry e, Control c,
int rights) {
super(operation, rights, e );
setControlOID(c.getOID());
}
/**
* Constructor interface for evaluation of the extended operation.
*
* @param operation The extended operation to evaluate.
* @param e An entry built especially for evaluation.
* @param rights The rights of a extended operation.
*/
public AciLDAPOperationContainer(ExtendedOperation operation, Entry e,
int rights) {
super(operation, rights, e );
setExtOpOID(operation.getRequestOID());
}
/**
* Constructor interface for the add operation.
* @param operation The add operation to evaluate.
* @param rights The rights of an add operation.
*/
public AciLDAPOperationContainer(LocalBackendAddOperation operation,
int rights)
{
super(operation, rights, operation.getEntryToAdd());
}
/**
* Constructor interface for the delete operation.
* @param operation The add operation to evaluate.
* @param rights The rights of a delete operation.
*/
public AciLDAPOperationContainer(LocalBackendDeleteOperation operation,
int rights) {
super(operation, rights, operation.getEntryToDelete());
}
/**
* Constructor interface for the modify operation.
* @param rights The rights of modify operation.
* @param operation The add operation to evaluate.
*/
public AciLDAPOperationContainer(LocalBackendModifyOperation operation,
int rights)
{
super(operation, rights, operation.getCurrentEntry());
}
/**
* Constructor interface for the modify DN operation.
* @param operation The modify DN operation.
* @param rights The rights of the modify DN operation.
* @param entry The entry to evaluated for this modify DN.
*/
public AciLDAPOperationContainer(LocalBackendModifyDNOperation operation,
int rights,
Entry entry) {
super(operation, rights, entry);
}
}