You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by ak...@apache.org on 2008/01/20 17:59:36 UTC
svn commit: r613608 [6/15] - in
/directory/sandbox/akarasulu/bigbang/apacheds: ./ bootstrap-plugin/
bootstrap-plugin/src/main/java/org/apache/directory/server/core/bootstrap/plugin/
core-entry/ core-entry/src/main/java/org/apache/directory/server/core/...
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/MaxImmSubFilter.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/MaxImmSubFilter.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/MaxImmSubFilter.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/MaxImmSubFilter.java Sun Jan 20 08:59:10 2008
@@ -30,6 +30,7 @@
import org.apache.directory.server.core.partition.PartitionNexusProxy;
import org.apache.directory.server.core.schema.SchemaInterceptor;
import org.apache.directory.server.core.subtree.SubentryInterceptor;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.aci.ACITuple;
import org.apache.directory.shared.ldap.aci.MicroOperation;
import org.apache.directory.shared.ldap.aci.ProtectedItem;
@@ -40,7 +41,6 @@
import org.apache.directory.shared.ldap.message.AliasDerefMode;
import org.apache.directory.shared.ldap.name.LdapDN;
-import javax.naming.Name;
import javax.naming.NamingEnumeration;
import javax.naming.NamingException;
import javax.naming.directory.Attributes;
@@ -74,10 +74,11 @@
public Collection<ACITuple> filter(
+ Registries registries,
Collection<ACITuple> tuples,
OperationScope scope,
PartitionNexusProxy proxy,
- Collection<Name> userGroupNames,
+ Collection<LdapDN> userGroupNames,
LdapDN userName,
Attributes userEntry,
AuthenticationLevel authenticationLevel,
@@ -120,7 +121,7 @@
{
if ( immSubCount < 0 )
{
- immSubCount = getImmSubCount( proxy, entryName );
+ immSubCount = getImmSubCount( registries, proxy, entryName );
}
ProtectedItem.MaxImmSub mis = ( ProtectedItem.MaxImmSub ) item;
@@ -156,14 +157,14 @@
}
- private int getImmSubCount( PartitionNexusProxy proxy, LdapDN entryName ) throws NamingException
+ private int getImmSubCount( Registries registries, PartitionNexusProxy proxy, LdapDN entryName ) throws NamingException
{
int cnt = 0;
NamingEnumeration<SearchResult> e = null;
try
{
- e = proxy.search( new SearchOperationContext( ( LdapDN ) entryName.getPrefix( 1 ),
+ e = proxy.search( new SearchOperationContext( registries, ( LdapDN ) entryName.getPrefix( 1 ),
AliasDerefMode.DEREF_ALWAYS, childrenFilter, childrenSearchControls ), SEARCH_BYPASS );
while ( e.hasMore() )
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/MaxValueCountFilter.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/MaxValueCountFilter.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/MaxValueCountFilter.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/MaxValueCountFilter.java Sun Jan 20 08:59:10 2008
@@ -23,12 +23,12 @@
import java.util.Collection;
import java.util.Iterator;
-import javax.naming.Name;
import javax.naming.NamingException;
import javax.naming.directory.Attribute;
import javax.naming.directory.Attributes;
import org.apache.directory.server.core.partition.PartitionNexusProxy;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.aci.ACITuple;
import org.apache.directory.shared.ldap.aci.MicroOperation;
import org.apache.directory.shared.ldap.aci.ProtectedItem;
@@ -47,10 +47,11 @@
public class MaxValueCountFilter implements ACITupleFilter
{
public Collection<ACITuple> filter(
+ Registries registries,
Collection<ACITuple> tuples,
OperationScope scope,
PartitionNexusProxy proxy,
- Collection<Name> userGroupNames,
+ Collection<LdapDN> userGroupNames,
LdapDN userName,
Attributes userEntry,
AuthenticationLevel authenticationLevel,
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/MicroOperationFilter.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/MicroOperationFilter.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/MicroOperationFilter.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/MicroOperationFilter.java Sun Jan 20 08:59:10 2008
@@ -23,11 +23,11 @@
import java.util.Collection;
import java.util.Iterator;
-import javax.naming.Name;
import javax.naming.NamingException;
import javax.naming.directory.Attributes;
import org.apache.directory.server.core.partition.PartitionNexusProxy;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.aci.ACITuple;
import org.apache.directory.shared.ldap.aci.MicroOperation;
import org.apache.directory.shared.ldap.constants.AuthenticationLevel;
@@ -45,19 +45,20 @@
public class MicroOperationFilter implements ACITupleFilter
{
public Collection<ACITuple> filter(
- Collection<ACITuple> tuples,
- OperationScope scope,
- PartitionNexusProxy proxy,
- Collection<Name> userGroupNames,
- LdapDN userName,
- Attributes userEntry,
- AuthenticationLevel authenticationLevel,
- LdapDN entryName,
- String attrId,
- Object attrValue,
- Attributes entry,
- Collection<MicroOperation> microOperations,
- Attributes entryView )
+ Registries registries,
+ Collection<ACITuple> tuples,
+ OperationScope scope,
+ PartitionNexusProxy proxy,
+ Collection<LdapDN> userGroupNames,
+ LdapDN userName,
+ Attributes userEntry,
+ AuthenticationLevel authenticationLevel,
+ LdapDN entryName,
+ String attrId,
+ Object attrValue,
+ Attributes entry,
+ Collection<MicroOperation> microOperations,
+ Attributes entryView )
throws NamingException
{
if ( tuples.size() == 0 )
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/MostSpecificProtectedItemFilter.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/MostSpecificProtectedItemFilter.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/MostSpecificProtectedItemFilter.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/MostSpecificProtectedItemFilter.java Sun Jan 20 08:59:10 2008
@@ -23,11 +23,11 @@
import java.util.ArrayList;
import java.util.Collection;
-import javax.naming.Name;
import javax.naming.NamingException;
import javax.naming.directory.Attributes;
import org.apache.directory.server.core.partition.PartitionNexusProxy;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.aci.ACITuple;
import org.apache.directory.shared.ldap.aci.MicroOperation;
import org.apache.directory.shared.ldap.aci.ProtectedItem;
@@ -53,10 +53,11 @@
public class MostSpecificProtectedItemFilter implements ACITupleFilter
{
public Collection<ACITuple> filter(
+ Registries registries,
Collection<ACITuple> tuples,
OperationScope scope,
PartitionNexusProxy proxy,
- Collection<Name> userGroupNames,
+ Collection<LdapDN> userGroupNames,
LdapDN userName,
Attributes userEntry,
AuthenticationLevel authenticationLevel,
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/MostSpecificUserClassFilter.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/MostSpecificUserClassFilter.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/MostSpecificUserClassFilter.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/MostSpecificUserClassFilter.java Sun Jan 20 08:59:10 2008
@@ -23,11 +23,11 @@
import java.util.ArrayList;
import java.util.Collection;
-import javax.naming.Name;
import javax.naming.NamingException;
import javax.naming.directory.Attributes;
import org.apache.directory.server.core.partition.PartitionNexusProxy;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.aci.ACITuple;
import org.apache.directory.shared.ldap.aci.MicroOperation;
import org.apache.directory.shared.ldap.aci.UserClass;
@@ -51,10 +51,11 @@
public class MostSpecificUserClassFilter implements ACITupleFilter
{
public Collection<ACITuple> filter(
+ Registries registries,
Collection<ACITuple> tuples,
OperationScope scope,
PartitionNexusProxy proxy,
- Collection<Name> userGroupNames,
+ Collection<LdapDN> userGroupNames,
LdapDN userName,
Attributes userEntry,
AuthenticationLevel authenticationLevel,
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/RelatedProtectedItemFilter.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/RelatedProtectedItemFilter.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/RelatedProtectedItemFilter.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/RelatedProtectedItemFilter.java Sun Jan 20 08:59:10 2008
@@ -23,7 +23,6 @@
import java.util.Collection;
import java.util.Iterator;
-import javax.naming.Name;
import javax.naming.NamingException;
import javax.naming.directory.Attribute;
import javax.naming.directory.Attributes;
@@ -33,6 +32,7 @@
import org.apache.directory.server.core.subtree.RefinementEvaluator;
import org.apache.directory.server.schema.registries.AttributeTypeRegistry;
import org.apache.directory.server.schema.registries.OidRegistry;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.aci.ACITuple;
import org.apache.directory.shared.ldap.aci.MicroOperation;
import org.apache.directory.shared.ldap.aci.ProtectedItem;
@@ -71,10 +71,11 @@
public Collection<ACITuple> filter(
+ Registries registries,
Collection<ACITuple> tuples,
OperationScope scope,
PartitionNexusProxy proxy,
- Collection<Name> userGroupNames,
+ Collection<LdapDN> userGroupNames,
LdapDN userName,
Attributes userEntry,
AuthenticationLevel authenticationLevel,
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/RelatedUserClassFilter.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/RelatedUserClassFilter.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/RelatedUserClassFilter.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/RelatedUserClassFilter.java Sun Jan 20 08:59:10 2008
@@ -23,12 +23,14 @@
import java.util.Collection;
import java.util.Iterator;
-import javax.naming.Name;
import javax.naming.NamingException;
import javax.naming.directory.Attributes;
+import org.apache.directory.server.core.entry.ServerEntry;
+import org.apache.directory.server.core.entry.ServerEntryUtils;
import org.apache.directory.server.core.partition.PartitionNexusProxy;
import org.apache.directory.server.core.subtree.SubtreeEvaluator;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.aci.ACITuple;
import org.apache.directory.shared.ldap.aci.MicroOperation;
import org.apache.directory.shared.ldap.aci.UserClass;
@@ -58,10 +60,11 @@
public Collection<ACITuple> filter(
+ Registries registries,
Collection<ACITuple> tuples,
OperationScope scope,
PartitionNexusProxy proxy,
- Collection<Name> userGroupNames,
+ Collection<LdapDN> userGroupNames,
LdapDN userName,
Attributes userEntry,
AuthenticationLevel authenticationLevel,
@@ -84,7 +87,11 @@
if ( tuple.isGrant() )
{
- if ( !isRelated( userGroupNames, userName, userEntry, entryName, tuple.getUserClasses() )
+ if ( !isRelated( userGroupNames,
+ userName,
+ ServerEntryUtils.toServerEntry( userEntry, userName, registries ),
+ entryName,
+ tuple.getUserClasses() )
|| authenticationLevel.compareTo( tuple.getAuthenticationLevel() ) < 0 )
{
ii.remove();
@@ -93,7 +100,11 @@
else
// Denials
{
- if ( !isRelated( userGroupNames, userName, userEntry, entryName, tuple.getUserClasses() )
+ if ( !isRelated( userGroupNames,
+ userName,
+ ServerEntryUtils.toServerEntry( userEntry, userName, registries ),
+ entryName,
+ tuple.getUserClasses() )
&& authenticationLevel.compareTo( tuple.getAuthenticationLevel() ) >= 0 )
{
ii.remove();
@@ -105,7 +116,7 @@
}
- private boolean isRelated( Collection<Name> userGroupNames, LdapDN userName, Attributes userEntry,
+ private boolean isRelated( Collection<LdapDN> userGroupNames, LdapDN userName, ServerEntry userEntry,
LdapDN entryName, Collection<UserClass> userClasses ) throws NamingException
{
for ( UserClass userClass : userClasses )
@@ -133,7 +144,7 @@
{
UserClass.UserGroup userGroupUserClass = ( UserClass.UserGroup ) userClass;
- for ( Name userGroupName : userGroupNames )
+ for ( LdapDN userGroupName : userGroupNames )
{
if ( userGroupName != null && userGroupUserClass.getNames().contains( userGroupName ) )
{
@@ -159,7 +170,7 @@
}
- private boolean matchUserClassSubtree( LdapDN userName, Attributes userEntry, UserClass.Subtree subtree )
+ private boolean matchUserClassSubtree( LdapDN userName, ServerEntry userEntry, UserClass.Subtree subtree )
throws NamingException
{
for ( SubtreeSpecification subtreeSpec : subtree.getSubtreeSpecifications() )
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/RestrictedByFilter.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/RestrictedByFilter.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/RestrictedByFilter.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/authz/support/RestrictedByFilter.java Sun Jan 20 08:59:10 2008
@@ -23,12 +23,12 @@
import java.util.Collection;
import java.util.Iterator;
-import javax.naming.Name;
import javax.naming.NamingException;
import javax.naming.directory.Attribute;
import javax.naming.directory.Attributes;
import org.apache.directory.server.core.partition.PartitionNexusProxy;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.aci.ACITuple;
import org.apache.directory.shared.ldap.aci.MicroOperation;
import org.apache.directory.shared.ldap.aci.ProtectedItem;
@@ -47,10 +47,11 @@
public class RestrictedByFilter implements ACITupleFilter
{
public Collection<ACITuple> filter(
+ Registries registries,
Collection<ACITuple> tuples,
OperationScope scope,
PartitionNexusProxy proxy,
- Collection<Name> userGroupNames,
+ Collection<LdapDN> userGroupNames,
LdapDN userName,
Attributes userEntry,
AuthenticationLevel authenticationLevel,
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/changelog/ChangeLogInterceptor.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/changelog/ChangeLogInterceptor.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/changelog/ChangeLogInterceptor.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/changelog/ChangeLogInterceptor.java Sun Jan 20 08:59:10 2008
@@ -19,8 +19,12 @@
package org.apache.directory.server.core.changelog;
+import java.util.Set;
+
import org.apache.directory.server.constants.ApacheSchemaConstants;
import org.apache.directory.server.core.DirectoryService;
+import org.apache.directory.server.core.entry.ServerEntry;
+import org.apache.directory.server.core.entry.ServerEntryUtils;
import org.apache.directory.server.core.interceptor.BaseInterceptor;
import org.apache.directory.server.core.interceptor.NextInterceptor;
import org.apache.directory.server.core.interceptor.context.AddOperationContext;
@@ -29,6 +33,7 @@
import org.apache.directory.server.core.interceptor.context.ModifyOperationContext;
import org.apache.directory.server.core.interceptor.context.MoveAndRenameOperationContext;
import org.apache.directory.server.core.interceptor.context.MoveOperationContext;
+import org.apache.directory.server.core.interceptor.context.OperationContext;
import org.apache.directory.server.core.interceptor.context.RenameOperationContext;
import org.apache.directory.server.core.invocation.Invocation;
import org.apache.directory.server.core.invocation.InvocationStack;
@@ -45,9 +50,7 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import javax.naming.NamingEnumeration;
import javax.naming.NamingException;
-import javax.naming.directory.Attribute;
import javax.naming.directory.Attributes;
@@ -59,10 +62,13 @@
{
/** for debugging */
private static final Logger LOG = LoggerFactory.getLogger( ChangeLogInterceptor.class );
+
/** used to ignore modify operations to tombstone entries */
private AttributeType entryDeleted;
+
/** the changelog service to log changes to */
private ChangeLog changeLog;
+
/** we need the schema service to deal with special conditions */
private SchemaService schemaService;
@@ -98,11 +104,14 @@
Entry forward = new Entry();
forward.setChangeType( ChangeType.Add );
forward.setDn( opContext.getDn().getUpName() );
- NamingEnumeration<? extends Attribute> list = opContext.getEntry().getAll();
- while ( list.hasMore() )
+ ServerEntry addEntry = opContext.getEntry();
+
+ Set<AttributeType> list = addEntry.getAttributeTypes();
+
+ for ( AttributeType attributeType:list )
{
- forward.addAttribute( ( Attribute ) list.next() );
+ forward.addAttribute( ServerEntryUtils.toAttributeImpl( addEntry.get( attributeType ) ) );
}
Entry reverse = LdifUtils.reverseAdd( opContext.getDn() );
@@ -122,7 +131,7 @@
if ( changeLog.isEnabled() && ! opContext.isCollateralOperation() )
{
- attributes = getAttributes( opContext.getDn() );
+ attributes = getAttributes( opContext );
}
next.delete( opContext );
@@ -147,8 +156,9 @@
* @return the entry's attributes (may be immutable if the schema subentry)
* @throws NamingException on error accessing the entry's attributes
*/
- private Attributes getAttributes( LdapDN dn ) throws NamingException
+ private Attributes getAttributes( OperationContext opContext ) throws NamingException
{
+ LdapDN dn = opContext.getDn();
Attributes attributes;
// @todo make sure we're not putting in operational attributes that cannot be user modified
@@ -161,7 +171,7 @@
}
else
{
- attributes = proxy.lookup( new LookupOperationContext( dn ), PartitionNexusProxy.LOOKUP_BYPASS );
+ attributes = proxy.lookup( new LookupOperationContext( opContext.getRegistries(), dn ), PartitionNexusProxy.LOOKUP_BYPASS );
}
return attributes;
@@ -176,7 +186,7 @@
if ( ! isDelete && ( changeLog.isEnabled() && ! opContext.isCollateralOperation() ) )
{
// @todo make sure we're not putting in operational attributes that cannot be user modified
- attributes = getAttributes( opContext.getDn() );
+ attributes = getAttributes( opContext );
}
next.modify( opContext );
@@ -216,7 +226,7 @@
if ( changeLog.isEnabled() && ! renameContext.isCollateralOperation() )
{
// @todo make sure we're not putting in operational attributes that cannot be user modified
- attributes = getAttributes( renameContext.getDn() );
+ attributes = getAttributes( renameContext );
}
next.rename( renameContext );
@@ -246,7 +256,7 @@
// @todo make sure we're not putting in operational attributes that cannot be user modified
Invocation invocation = InvocationStack.getInstance().peek();
PartitionNexusProxy proxy = invocation.getProxy();
- attributes = proxy.lookup( new LookupOperationContext( opCtx.getDn() ),
+ attributes = proxy.lookup( new LookupOperationContext( opCtx.getRegistries(), opCtx.getDn() ),
PartitionNexusProxy.LOOKUP_BYPASS );
}
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/changelog/OriginalChangeLogInterceptor.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/changelog/OriginalChangeLogInterceptor.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/changelog/OriginalChangeLogInterceptor.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/changelog/OriginalChangeLogInterceptor.java Sun Jan 20 08:59:10 2008
@@ -19,6 +19,7 @@
package org.apache.directory.server.core.changelog;
import org.apache.directory.server.core.DirectoryService;
+import org.apache.directory.server.core.entry.ServerEntryUtils;
import org.apache.directory.server.core.interceptor.BaseInterceptor;
import org.apache.directory.server.core.interceptor.NextInterceptor;
import org.apache.directory.server.core.interceptor.context.AddOperationContext;
@@ -73,7 +74,7 @@
private final Queue<StringBuilder> queue = new LinkedList<StringBuilder>();
/** a handle on the attributeType registry to determine the binary nature of attributes */
- private AttributeTypeRegistry registry;
+ private AttributeTypeRegistry atRegistry;
/** determines if this service has been activated */
private boolean isActive;
@@ -92,7 +93,7 @@
super.init( directoryService );
// Get a handle on the attribute registry to check if attributes are binary
- registry = directoryService.getRegistries().getAttributeTypeRegistry();
+ atRegistry = directoryService.getRegistries().getAttributeTypeRegistry();
// Open a print stream to use for flushing LDIFs into
File changes = new File( directoryService.getWorkingDirectory(), "changes.LOG" );
@@ -232,7 +233,7 @@
buf.append( DateUtils.getGeneralizedTime() );
// Append the LDIF entry now
- buf.append( LdifUtils.convertToLdif( opContext.getEntry() ) );
+ buf.append( LdifUtils.convertToLdif( ServerEntryUtils.toAttributesImpl( opContext.getEntry() ) ) );
// Enqueue the buffer onto a queue that is emptied by another thread asynchronously.
synchronized ( queue )
@@ -449,7 +450,7 @@
{
String id = attr.getID();
int sz = attr.size();
- boolean isBinary = ! registry.lookup( id ).getSyntax().isHumanReadable();
+ boolean isBinary = ! atRegistry.lookup( id ).getSyntax().isHumanReadable();
if ( isBinary )
{
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/collective/CollectiveAttributeInterceptor.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/collective/CollectiveAttributeInterceptor.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/collective/CollectiveAttributeInterceptor.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/collective/CollectiveAttributeInterceptor.java Sun Jan 20 08:59:10 2008
@@ -34,6 +34,7 @@
import org.apache.directory.server.core.invocation.InvocationStack;
import org.apache.directory.server.core.partition.PartitionNexus;
import org.apache.directory.server.schema.registries.AttributeTypeRegistry;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.constants.SchemaConstants;
import org.apache.directory.shared.ldap.message.AttributeImpl;
import org.apache.directory.shared.ldap.message.ServerSearchResult;
@@ -65,9 +66,17 @@
*/
public class CollectiveAttributeInterceptor extends BaseInterceptor
{
- public static final String EXCLUDE_ALL_COLLECTIVE_ATTRIBUTES_OID = "2.5.18.0";
- public static final String EXCLUDE_ALL_COLLECTIVE_ATTRIBUTES = "excludeAllCollectiveAttributes";
+ /** The global registries */
+ private Registries registries;
+ /** The attributeType registry */
+ private AttributeTypeRegistry atRegistry;
+
+ private PartitionNexus nexus;
+
+ private CollectiveAttributesSchemaChecker collectiveAttributesSchemaChecker;
+
+
/**
* the search result filter to use for collective attribute injection
*/
@@ -80,7 +89,7 @@
if ( !name.isNormalized() )
{
- name = LdapDN.normalize( name, attrTypeRegistry.getNormalizerMapping() );
+ name = LdapDN.normalize( name, atRegistry.getNormalizerMapping() );
}
Attributes entry = result.getAttributes();
@@ -90,18 +99,13 @@
}
};
- private AttributeTypeRegistry attrTypeRegistry;
- private PartitionNexus nexus;
-
- private CollectiveAttributesSchemaChecker collectiveAttributesSchemaChecker;
-
-
public void init( DirectoryService directoryService ) throws NamingException
{
super.init( directoryService );
nexus = directoryService.getPartitionNexus();
- attrTypeRegistry = directoryService.getRegistries().getAttributeTypeRegistry();
- collectiveAttributesSchemaChecker = new CollectiveAttributesSchemaChecker(nexus, attrTypeRegistry);
+ atRegistry = directoryService.getRegistries().getAttributeTypeRegistry();
+ collectiveAttributesSchemaChecker = new CollectiveAttributesSchemaChecker( nexus, atRegistry );
+ registries = directoryService.getRegistries();
}
@@ -123,7 +127,7 @@
//noinspection StringEquality
if ( ( retAttrs == null ) || ( retAttrs.length != 1 ) || ( retAttrs[0] != SchemaConstants.ALL_USER_ATTRIBUTES ) )
{
- Attributes entryWithCAS = nexus.lookup( new LookupOperationContext( normName, new String[] {
+ Attributes entryWithCAS = nexus.lookup( new LookupOperationContext( registries, normName, new String[] {
SchemaConstants.COLLECTIVE_ATTRIBUTE_SUBENTRIES_AT } ) );
caSubentries = entryWithCAS.get( SchemaConstants.COLLECTIVE_ATTRIBUTE_SUBENTRIES_AT );
}
@@ -152,8 +156,9 @@
if ( collectiveExclusions != null )
{
- if ( AttributeUtils.containsValueCaseIgnore( collectiveExclusions, EXCLUDE_ALL_COLLECTIVE_ATTRIBUTES_OID )
- || AttributeUtils.containsValue( collectiveExclusions, EXCLUDE_ALL_COLLECTIVE_ATTRIBUTES, attrTypeRegistry.lookup( SchemaConstants.COLLECTIVE_EXCLUSIONS_AT_OID ) ) )
+ if ( AttributeUtils.containsValueCaseIgnore( collectiveExclusions, SchemaConstants.EXCLUDE_ALL_COLLECTIVE_ATTRIBUTES_AT_OID )
+ || AttributeUtils.containsValue( collectiveExclusions, SchemaConstants.EXCLUDE_ALL_COLLECTIVE_ATTRIBUTES_AT,
+ atRegistry.lookup( SchemaConstants.COLLECTIVE_EXCLUSIONS_AT_OID ) ) )
{
/*
* This entry does not allow any collective attributes
@@ -166,7 +171,7 @@
for ( int ii = 0; ii < collectiveExclusions.size(); ii++ )
{
- AttributeType attrType = attrTypeRegistry.lookup( ( String ) collectiveExclusions.get( ii ) );
+ AttributeType attrType = atRegistry.lookup( ( String ) collectiveExclusions.get( ii ) );
exclusions.add( attrType.getOid() );
}
}
@@ -200,13 +205,13 @@
{
String subentryDnStr = ( String ) caSubentries.get( ii );
LdapDN subentryDn = new LdapDN( subentryDnStr );
- Attributes subentry = nexus.lookup( new LookupOperationContext( subentryDn ) );
+ Attributes subentry = nexus.lookup( new LookupOperationContext( registries, subentryDn ) );
NamingEnumeration<String> attrIds = subentry.getIDs();
while ( attrIds.hasMore() )
{
String attrId = attrIds.next();
- AttributeType attrType = attrTypeRegistry.lookup( attrId );
+ AttributeType attrType = atRegistry.lookup( attrId );
if ( !attrType.isCollective() )
{
@@ -231,7 +236,7 @@
continue;
}
- AttributeType retType = attrTypeRegistry.lookup( retId );
+ AttributeType retType = atRegistry.lookup( retId );
if ( allSuperTypes.contains( retType ) )
{
@@ -350,7 +355,7 @@
public void modify( NextInterceptor next, ModifyOperationContext opContext ) throws NamingException
{
- collectiveAttributesSchemaChecker.checkModify( opContext.getDn(), opContext.getModItems() );
+ collectiveAttributesSchemaChecker.checkModify( opContext.getRegistries(),opContext.getDn(), opContext.getModItems() );
next.modify( opContext );
}
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/collective/CollectiveAttributesSchemaChecker.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/collective/CollectiveAttributesSchemaChecker.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/collective/CollectiveAttributesSchemaChecker.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/collective/CollectiveAttributesSchemaChecker.java Sun Jan 20 08:59:10 2008
@@ -22,6 +22,7 @@
import java.util.ArrayList;
import java.util.List;
+import java.util.Set;
import javax.naming.NamingEnumeration;
import javax.naming.NamingException;
@@ -30,9 +31,11 @@
import javax.naming.directory.DirContext;
import javax.naming.directory.ModificationItem;
+import org.apache.directory.server.core.entry.ServerEntry;
import org.apache.directory.server.core.interceptor.context.LookupOperationContext;
import org.apache.directory.server.core.partition.PartitionNexus;
import org.apache.directory.server.schema.registries.AttributeTypeRegistry;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.constants.SchemaConstants;
import org.apache.directory.shared.ldap.exception.LdapSchemaViolationException;
import org.apache.directory.shared.ldap.message.ModificationItemImpl;
@@ -60,11 +63,9 @@
this.attrTypeRegistry = attrTypeRegistry;
}
- public void checkAdd( LdapDN normName, Attributes entry ) throws LdapSchemaViolationException, NamingException
+ /* package scope*/ void checkAdd( LdapDN normName, ServerEntry entry ) throws LdapSchemaViolationException, NamingException
{
- Attribute objectClass = entry.get( SchemaConstants.OBJECT_CLASS_AT );
-
- if ( AttributeUtils.containsValueCaseIgnore( objectClass, "collectiveAttributeSubentry" ) )
+ if ( entry.hasObjectClass( SchemaConstants.COLLECTIVE_ATTRIBUTE_SUBENTRY_OC ) )
{
return;
}
@@ -80,7 +81,7 @@
}
}
- public void checkModify( LdapDN normName, int modOp, Attributes mods ) throws NamingException
+ public void checkModify( Registries registries, LdapDN normName, int modOp, Attributes mods ) throws NamingException
{
ArrayList<ModificationItemImpl> modsAsArray = new ArrayList<ModificationItemImpl>( mods.size() );
NamingEnumeration<? extends Attribute> allAttrs = mods.getAll();
@@ -91,17 +92,17 @@
modsAsArray.add( new ModificationItemImpl( modOp, attr ) );
}
- checkModify( normName, modsAsArray );
+ checkModify( registries, normName, modsAsArray );
}
- public void checkModify( LdapDN normName, List<ModificationItemImpl> mods ) throws NamingException
+ public void checkModify( Registries registries, LdapDN normName, List<ModificationItemImpl> mods ) throws NamingException
{
- Attributes originalEntry = nexus.lookup( new LookupOperationContext( normName ) );
+ Attributes originalEntry = nexus.lookup( new LookupOperationContext( registries, normName ) );
Attributes targetEntry = SchemaUtils.getTargetEntry( mods, originalEntry );
Attribute targetObjectClasses = targetEntry.get( SchemaConstants.OBJECT_CLASS_AT );
- if ( AttributeUtils.containsValueCaseIgnore( targetObjectClasses, "collectiveAttributeSubentry" ) )
+ if ( AttributeUtils.containsValueCaseIgnore( targetObjectClasses, SchemaConstants.COLLECTIVE_ATTRIBUTE_SUBENTRY_OC ) )
{
return;
}
@@ -138,16 +139,13 @@
}
- private boolean containsAnyCollectiveAttributes( Attributes entry ) throws NamingException
+ private boolean containsAnyCollectiveAttributes( ServerEntry entry ) throws NamingException
{
- NamingEnumeration<String> allIDs = entry.getIDs();
+ Set<AttributeType> attributeTypes = entry.getAttributeTypes();
- while ( allIDs.hasMoreElements() )
+ for ( AttributeType attributeType:attributeTypes )
{
- String attrTypeStr = allIDs.nextElement();
- AttributeType attrType = attrTypeRegistry.lookup( attrTypeStr );
-
- if ( attrType.isCollective() )
+ if ( attributeType.isCollective() )
{
return true;
}
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/enumeration/ReferralHandlingEnumeration.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/enumeration/ReferralHandlingEnumeration.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/enumeration/ReferralHandlingEnumeration.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/enumeration/ReferralHandlingEnumeration.java Sun Jan 20 08:59:10 2008
@@ -34,7 +34,7 @@
import org.apache.directory.server.core.interceptor.context.LookupOperationContext;
import org.apache.directory.server.core.partition.PartitionNexus;
import org.apache.directory.server.core.referral.ReferralLut;
-import org.apache.directory.server.schema.registries.AttributeTypeRegistry;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.codec.util.LdapURL;
import org.apache.directory.shared.ldap.codec.util.LdapURLEncodingException;
import org.apache.directory.shared.ldap.constants.SchemaConstants;
@@ -68,16 +68,25 @@
* The OIDs normalizer map
*/
private Map<String, OidNormalizer> normalizerMap;
-
- public ReferralHandlingEnumeration( NamingEnumeration<SearchResult> underlying, ReferralLut lut,
- AttributeTypeRegistry registry, PartitionNexus nexus, int scope, boolean doThrow ) throws NamingException
+
+ /** The global registries */
+ private Registries registries;
+
+ public ReferralHandlingEnumeration(
+ NamingEnumeration<SearchResult> underlying,
+ ReferralLut lut,
+ Registries registries,
+ PartitionNexus nexus,
+ int scope,
+ boolean doThrow ) throws NamingException
{
- normalizerMap = registry.getNormalizerMapping();
+ normalizerMap = registries.getAttributeTypeRegistry().getNormalizerMapping();
this.underlying = underlying;
this.doThrow = doThrow;
this.lut = lut;
this.scope = scope;
this.nexus = nexus;
+ this.registries = registries;
prefetch();
}
@@ -104,7 +113,7 @@
prefetched = referrals.get( refIndex );
if ( doThrow )
{
- doReferralExceptionOnSearchBase();
+ doReferralExceptionOnSearchBase( registries );
}
}
@@ -170,7 +179,7 @@
}
- public void doReferralExceptionOnSearchBase() throws NamingException
+ public void doReferralExceptionOnSearchBase( Registries registries ) throws NamingException
{
// the refs attribute may be filtered out so we might need to lookup the entry
Attribute refs = prefetched.getAttributes().get( SchemaConstants.REF_AT );
@@ -179,7 +188,7 @@
{
LdapDN prefetchedDn = new LdapDN( prefetched.getName() );
prefetchedDn.normalize( normalizerMap );
- refs = nexus.lookup( new LookupOperationContext( prefetchedDn ) ).get( SchemaConstants.REF_AT );
+ refs = nexus.lookup( new LookupOperationContext( registries, prefetchedDn ) ).get( SchemaConstants.REF_AT );
}
if ( refs == null )
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/event/EventInterceptor.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/event/EventInterceptor.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/event/EventInterceptor.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/event/EventInterceptor.java Sun Jan 20 08:59:10 2008
@@ -30,6 +30,7 @@
import java.util.Set;
import org.apache.directory.server.core.DirectoryService;
+import org.apache.directory.server.core.entry.ServerEntryUtils;
import org.apache.directory.server.core.interceptor.BaseInterceptor;
import org.apache.directory.server.core.interceptor.NextInterceptor;
import org.apache.directory.server.core.interceptor.context.AddOperationContext;
@@ -47,6 +48,7 @@
import org.apache.directory.server.schema.ConcreteNameComponentNormalizer;
import org.apache.directory.server.schema.registries.AttributeTypeRegistry;
import org.apache.directory.server.schema.registries.OidRegistry;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.filter.AndNode;
import org.apache.directory.shared.ldap.filter.BranchNode;
import org.apache.directory.shared.ldap.filter.ExprNode;
@@ -245,7 +247,7 @@
//super.add( next, opContext );
LdapDN name = opContext.getDn();
- Attributes entry = opContext.getEntry();
+ Attributes entry = ServerEntryUtils.toAttributesImpl( opContext.getEntry() );
Set<EventSourceRecord> selecting = getSelectingSources( name, entry );
@@ -275,7 +277,7 @@
public void delete( NextInterceptor next, DeleteOperationContext opContext ) throws NamingException
{
LdapDN name = opContext.getDn();
- Attributes entry = nexus.lookup( new LookupOperationContext( name ) );
+ Attributes entry = nexus.lookup( new LookupOperationContext( opContext.getRegistries(), name ) );
next.delete( opContext );
//super.delete( next, opContext );
@@ -305,9 +307,9 @@
}
- private void notifyOnModify( LdapDN name, List<ModificationItemImpl> mods, Attributes oriEntry ) throws NamingException
+ private void notifyOnModify( Registries registries, LdapDN name, List<ModificationItemImpl> mods, Attributes oriEntry ) throws NamingException
{
- Attributes entry = nexus.lookup( new LookupOperationContext( name ) );
+ Attributes entry = nexus.lookup( new LookupOperationContext( registries, name ) );
Set<EventSourceRecord> selecting = getSelectingSources( name, entry );
if ( selecting.isEmpty() )
@@ -338,17 +340,17 @@
{
Invocation invocation = InvocationStack.getInstance().peek();
PartitionNexusProxy proxy = invocation.getProxy();
- Attributes oriEntry = proxy.lookup( new LookupOperationContext( opContext.getDn() ), PartitionNexusProxy.LOOKUP_BYPASS );
+ Attributes oriEntry = proxy.lookup( new LookupOperationContext( opContext.getRegistries(), opContext.getDn() ), PartitionNexusProxy.LOOKUP_BYPASS );
next.modify( opContext );
- notifyOnModify( opContext.getDn(), opContext.getModItems(), oriEntry );
+ notifyOnModify( opContext.getRegistries(), opContext.getDn(), opContext.getModItems(), oriEntry );
}
- private void notifyOnNameChange( LdapDN oldName, LdapDN newName ) throws NamingException
+ private void notifyOnNameChange( Registries registries, LdapDN oldName, LdapDN newName ) throws NamingException
{
- Attributes entry = nexus.lookup( new LookupOperationContext( newName ) );
+ Attributes entry = nexus.lookup( new LookupOperationContext( registries, newName ) );
Set<EventSourceRecord> selecting = getSelectingSources( oldName, entry );
if ( selecting.isEmpty() )
@@ -384,7 +386,7 @@
newName.remove( newName.size() - 1 );
newName.add( opContext.getNewRdn() );
newName.normalize( attributeRegistry.getNormalizerMapping() );
- notifyOnNameChange( opContext.getDn(), newName );
+ notifyOnNameChange( opContext.getRegistries(), opContext.getDn(), newName );
}
@@ -396,7 +398,7 @@
LdapDN newName = ( LdapDN ) opContext.getParent().clone();
newName.add( opContext.getNewRdn() );
- notifyOnNameChange( opContext.getDn(), newName );
+ notifyOnNameChange( opContext.getRegistries(), opContext.getDn(), newName );
}
@@ -409,7 +411,7 @@
LdapDN newName = ( LdapDN ) opContext.getParent().clone();
newName.add( oriChildName.get( oriChildName.size() - 1 ) );
- notifyOnNameChange( oriChildName, newName );
+ notifyOnNameChange( opContext.getRegistries(), oriChildName, newName );
}
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/exception/ExceptionInterceptor.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/exception/ExceptionInterceptor.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/exception/ExceptionInterceptor.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/exception/ExceptionInterceptor.java Sun Jan 20 08:59:10 2008
@@ -21,6 +21,8 @@
import org.apache.commons.collections.map.LRUMap;
import org.apache.directory.server.core.DirectoryService;
+import org.apache.directory.server.core.entry.ServerEntryUtils;
+import org.apache.directory.server.core.entry.ServerValue;
import org.apache.directory.server.core.interceptor.BaseInterceptor;
import org.apache.directory.server.core.interceptor.NextInterceptor;
import org.apache.directory.server.core.interceptor.context.AddOperationContext;
@@ -39,6 +41,7 @@
import org.apache.directory.server.core.partition.Partition;
import org.apache.directory.server.core.partition.PartitionNexus;
import org.apache.directory.server.core.partition.PartitionNexusProxy;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.constants.SchemaConstants;
import org.apache.directory.shared.ldap.exception.LdapAttributeInUseException;
import org.apache.directory.shared.ldap.exception.LdapContextNotEmptyException;
@@ -77,6 +80,9 @@
*/
public class ExceptionInterceptor extends BaseInterceptor
{
+ /** The global registries */
+ private Registries registries;
+
private PartitionNexus nexus;
private LdapDN subschemSubentryDn;
@@ -121,9 +127,10 @@
{
nexus = directoryService.getPartitionNexus();
normalizerMap = directoryService.getRegistries().getAttributeTypeRegistry().getNormalizerMapping();
- Attribute attr = nexus.getRootDSE( null ).get( SchemaConstants.SUBSCHEMA_SUBENTRY_AT );
+ ServerValue<?> attr = nexus.getRootDSE( null ).get( SchemaConstants.SUBSCHEMA_SUBENTRY_AT ).get();
subschemSubentryDn = new LdapDN( ( String ) attr.get() );
subschemSubentryDn.normalize( normalizerMap );
+ registries = directoryService.getRegistries();
}
@@ -147,7 +154,7 @@
}
// check if the entry already exists
- if ( nextInterceptor.hasEntry( new EntryOperationContext( name ) ) )
+ if ( nextInterceptor.hasEntry( new EntryOperationContext( registries, name ) ) )
{
NamingException ne = new LdapNameAlreadyBoundException( name.getUpName() + " already exists!" );
ne.setResolvedName( new LdapDN( name.getUpName() ) );
@@ -173,13 +180,13 @@
try
{
- attrs = nextInterceptor.lookup( new LookupOperationContext( parentDn ) );
+ attrs = nextInterceptor.lookup( new LookupOperationContext( registries, parentDn ) );
}
catch ( Exception e )
{
LdapNameNotFoundException e2 = new LdapNameNotFoundException( "Parent " + parentDn.getUpName()
+ " not found" );
- e2.setResolvedName( new LdapDN( nexus.getMatchedName( new GetMatchedNameOperationContext( parentDn ) ).getUpName() ) );
+ e2.setResolvedName( new LdapDN( nexus.getMatchedName( new GetMatchedNameOperationContext( registries, parentDn ) ).getUpName() ) );
throw e2;
}
@@ -228,7 +235,7 @@
// check if entry to delete has children (only leaves can be deleted)
boolean hasChildren = false;
- NamingEnumeration<SearchResult> list = nextInterceptor.list( new ListOperationContext( name ) );
+ NamingEnumeration<SearchResult> list = nextInterceptor.list( new ListOperationContext( registries, name ) );
if ( list.hasMore() )
{
@@ -282,7 +289,7 @@
{
if ( opContext.getDn().getNormName().equals( subschemSubentryDn.getNormName() ) )
{
- return nexus.getRootDSE( null );
+ return ServerEntryUtils.toAttributesImpl( nexus.getRootDSE( null ) );
}
// check if entry to lookup exists
@@ -312,7 +319,7 @@
assertHasEntry( nextInterceptor, msg, opContext.getDn() );
- Attributes entry = nexus.lookup( new LookupOperationContext( opContext.getDn() ) );
+ Attributes entry = nexus.lookup( new LookupOperationContext( registries, opContext.getDn() ) );
List<ModificationItemImpl> items = opContext.getModItems();
for ( ModificationItemImpl item : items )
@@ -379,7 +386,7 @@
newDn.add( opContext.getNewRdn() );
newDn.normalize( normalizerMap );
- if ( nextInterceptor.hasEntry( new EntryOperationContext( newDn ) ) )
+ if ( nextInterceptor.hasEntry( new EntryOperationContext( registries, newDn ) ) )
{
LdapNameAlreadyBoundException e;
e = new LdapNameAlreadyBoundException( "target entry " + newDn.getUpName() + " already exists!" );
@@ -430,7 +437,7 @@
LdapDN target = ( LdapDN ) newParentName.clone();
target.add( rdn );
- if ( nextInterceptor.hasEntry( new EntryOperationContext( target ) ) )
+ if ( nextInterceptor.hasEntry( new EntryOperationContext( registries, target ) ) )
{
// we must calculate the resolved name using the user provided Rdn value
String upRdn = new LdapDN( oriChildName.getUpName() ).get( oriChildName.size() - 1 );
@@ -485,7 +492,7 @@
LdapDN target = ( LdapDN ) parent.clone();
target.add( opContext.getNewRdn() );
- if ( nextInterceptor.hasEntry( new EntryOperationContext( target ) ) )
+ if ( nextInterceptor.hasEntry( new EntryOperationContext( registries, target ) ) )
{
// we must calculate the resolved name using the user provided Rdn value
LdapDN upTarget = ( LdapDN ) parent.clone();
@@ -560,7 +567,7 @@
Invocation invocation = InvocationStack.getInstance().peek();
PartitionNexusProxy proxy = invocation.getProxy();
- if ( !nextInterceptor.hasEntry( new EntryOperationContext( dn ) ) )
+ if ( !nextInterceptor.hasEntry( new EntryOperationContext( registries, dn ) ) )
{
LdapNameNotFoundException e;
@@ -576,7 +583,7 @@
e.setResolvedName(
new LdapDN(
proxy.getMatchedName(
- new GetMatchedNameOperationContext( dn ) ).getUpName() ) );
+ new GetMatchedNameOperationContext( registries, dn ) ).getUpName() ) );
throw e;
}
}
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/BaseInterceptor.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/BaseInterceptor.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/BaseInterceptor.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/BaseInterceptor.java Sun Jan 20 08:59:10 2008
@@ -22,6 +22,7 @@
import org.apache.directory.server.core.DirectoryService;
import org.apache.directory.server.core.authn.LdapPrincipal;
+import org.apache.directory.server.core.entry.ServerEntry;
import org.apache.directory.server.core.interceptor.context.AddContextPartitionOperationContext;
import org.apache.directory.server.core.interceptor.context.AddOperationContext;
import org.apache.directory.server.core.interceptor.context.BindOperationContext;
@@ -143,7 +144,7 @@
}
- public Attributes getRootDSE( NextInterceptor next, GetRootDSEOperationContext opContext ) throws NamingException
+ public ServerEntry getRootDSE( NextInterceptor next, GetRootDSEOperationContext opContext ) throws NamingException
{
return next.getRootDSE( opContext );
}
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/Interceptor.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/Interceptor.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/Interceptor.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/Interceptor.java Sun Jan 20 08:59:10 2008
@@ -21,6 +21,7 @@
import org.apache.directory.server.core.DirectoryService;
+import org.apache.directory.server.core.entry.ServerEntry;
import org.apache.directory.server.core.interceptor.context.AddContextPartitionOperationContext;
import org.apache.directory.server.core.interceptor.context.AddOperationContext;
import org.apache.directory.server.core.interceptor.context.BindOperationContext;
@@ -139,7 +140,7 @@
/**
* Filters {@link PartitionNexus#getRootDSE( GetRootDSEOperationContext )} call.
*/
- Attributes getRootDSE( NextInterceptor next, GetRootDSEOperationContext opContext ) throws NamingException;
+ ServerEntry getRootDSE( NextInterceptor next, GetRootDSEOperationContext opContext ) throws NamingException;
/**
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/InterceptorChain.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/InterceptorChain.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/InterceptorChain.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/InterceptorChain.java Sun Jan 20 08:59:10 2008
@@ -27,6 +27,7 @@
import java.util.Map;
import org.apache.directory.server.core.DirectoryService;
+import org.apache.directory.server.core.entry.ServerEntry;
import org.apache.directory.server.core.interceptor.context.AddContextPartitionOperationContext;
import org.apache.directory.server.core.interceptor.context.AddOperationContext;
import org.apache.directory.server.core.interceptor.context.BindOperationContext;
@@ -102,7 +103,7 @@
}
- public Attributes getRootDSE( NextInterceptor next, GetRootDSEOperationContext opContext ) throws NamingException
+ public ServerEntry getRootDSE( NextInterceptor next, GetRootDSEOperationContext opContext ) throws NamingException
{
return nexus.getRootDSE( opContext );
}
@@ -536,7 +537,7 @@
}
- public Attributes getRootDSE( GetRootDSEOperationContext opContext ) throws NamingException
+ public ServerEntry getRootDSE( GetRootDSEOperationContext opContext ) throws NamingException
{
Entry entry = getStartingEntry();
Interceptor head = entry.interceptor;
@@ -1041,7 +1042,7 @@
}
- public Attributes getRootDSE( GetRootDSEOperationContext opContext ) throws NamingException
+ public ServerEntry getRootDSE( GetRootDSEOperationContext opContext ) throws NamingException
{
Entry next = getNextEntry();
Interceptor interceptor = next.interceptor;
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/NextInterceptor.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/NextInterceptor.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/NextInterceptor.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/NextInterceptor.java Sun Jan 20 08:59:10 2008
@@ -27,6 +27,7 @@
import javax.naming.directory.Attributes;
import javax.naming.directory.SearchResult;
+import org.apache.directory.server.core.entry.ServerEntry;
import org.apache.directory.server.core.interceptor.context.AddContextPartitionOperationContext;
import org.apache.directory.server.core.interceptor.context.AddOperationContext;
import org.apache.directory.server.core.interceptor.context.BindOperationContext;
@@ -69,7 +70,7 @@
/**
* Calls the next interceptor's {@link Interceptor#getRootDSE( NextInterceptor, GetRootDSEOperationContext )}.
*/
- Attributes getRootDSE( GetRootDSEOperationContext opContext ) throws NamingException;
+ ServerEntry getRootDSE( GetRootDSEOperationContext opContext ) throws NamingException;
/**
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/AbstractOperationContext.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/AbstractOperationContext.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/AbstractOperationContext.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/AbstractOperationContext.java Sun Jan 20 08:59:10 2008
@@ -25,6 +25,7 @@
import javax.naming.ldap.Control;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.name.LdapDN;
@@ -41,43 +42,56 @@
/** The DN associated with the context */
private LdapDN dn;
+
+ /** The associated request's controls */
private Map<String, Control> requestControls = new HashMap<String, Control>(4);
+
+ /** The associated response's controls */
private Map<String, Control> responseControls = new HashMap<String, Control>(4);
+ /** A flag to tell that this is a collateral operation */
private boolean collateralOperation;
+
+ /** The global registries reference */
+ private Registries registries;
/**
- *
* Creates a new instance of AbstractOperationContext.
*
+ * @param Registries The global registries
*/
- public AbstractOperationContext()
+ public AbstractOperationContext( Registries registries )
{
+ this.registries = registries;
}
-
-
+
+
/**
* Creates a new instance of AbstractOperationContext.
*
+ * @param Registries The global registries
* @param dn The associated DN
*/
- public AbstractOperationContext( LdapDN dn )
+ public AbstractOperationContext( Registries registries, LdapDN dn )
{
this.dn = dn;
+ this.registries = registries;
}
/**
* Creates a new instance of AbstractOperationContext.
*
+ * @param Registries The global registries
* @param dn the associated DN
* @param collateralOperation true if op is collateral, false otherwise
*/
- public AbstractOperationContext( LdapDN dn, boolean collateralOperation )
+ public AbstractOperationContext( Registries registries, LdapDN dn, boolean collateralOperation )
{
this.dn = dn;
this.collateralOperation = collateralOperation;
+ this.registries = registries;
}
@@ -85,14 +99,20 @@
* Creates an operation context where the operation is considered a side
* effect of a direct operation.
*
+ * @param Registries The global registries
* @param collateralOperation true if this is a side effect operation
*/
- public AbstractOperationContext( boolean collateralOperation )
+ public AbstractOperationContext( Registries registries, boolean collateralOperation )
{
this.collateralOperation = collateralOperation;
+ this.registries = registries;
}
+ /**
+ * Tells if the current operation is considered a side effect of the
+ * current context
+ */
public boolean isCollateralOperation()
{
return collateralOperation;
@@ -190,5 +210,14 @@
{
this.requestControls.put( c.getID(), c );
}
+ }
+
+
+ /**
+ * @return The AttributeTypeRegistry
+ */
+ public Registries getRegistries()
+ {
+ return registries;
}
}
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/AddContextPartitionOperationContext.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/AddContextPartitionOperationContext.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/AddContextPartitionOperationContext.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/AddContextPartitionOperationContext.java Sun Jan 20 08:59:10 2008
@@ -21,6 +21,7 @@
import org.apache.directory.server.core.partition.Partition;
+import org.apache.directory.server.schema.registries.Registries;
/**
@@ -32,7 +33,7 @@
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
* @version $Rev$, $Date$
*/
-public class AddContextPartitionOperationContext extends EmptyOperationContext
+public class AddContextPartitionOperationContext extends EmptyOperationContext
{
/** the instantiated partition class */
private Partition partition;
@@ -43,9 +44,9 @@
*
* @param partition The partition to add
*/
- public AddContextPartitionOperationContext( Partition partition )
+ public AddContextPartitionOperationContext( Registries registries, Partition partition )
{
- super();
+ super( registries );
this.partition = partition;
}
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/AddOperationContext.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/AddOperationContext.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/AddOperationContext.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/AddOperationContext.java Sun Jan 20 08:59:10 2008
@@ -19,10 +19,10 @@
*/
package org.apache.directory.server.core.interceptor.context;
-import javax.naming.directory.Attributes;
+import org.apache.directory.server.core.entry.ServerEntry;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.name.LdapDN;
-import org.apache.directory.shared.ldap.util.AttributeUtils;
/**
* A Add context used for Interceptors. It contains all the informations
@@ -33,34 +33,34 @@
*/
public class AddOperationContext extends AbstractOperationContext
{
- /** The added Attribute */
- private Attributes entry;
+ /** The added entry */
+ private ServerEntry entry;
/**
* Creates a new instance of AddOperationContext.
*/
- public AddOperationContext()
+ public AddOperationContext( Registries registries )
{
- super();
+ super( registries );
}
/**
* Creates a new instance of AddOperationContext.
*/
- public AddOperationContext( LdapDN dn )
+ public AddOperationContext( Registries registries, LdapDN dn )
{
- super( dn );
+ super( registries, dn );
}
/**
* Creates a new instance of ModifyOperationContext.
*/
- public AddOperationContext( LdapDN dn, Attributes entry )
+ public AddOperationContext( Registries registries, LdapDN dn, ServerEntry entry )
{
- super( dn );
+ super( registries, dn );
this.entry = entry;
}
@@ -70,9 +70,9 @@
*
* @param collateralOperation whether or not this is a side-effect
*/
- public AddOperationContext( boolean collateralOperation )
+ public AddOperationContext( Registries registries, boolean collateralOperation )
{
- super( collateralOperation );
+ super( registries, collateralOperation );
}
@@ -82,9 +82,9 @@
* @param dn the name of the entry being added
* @param collateralOperation whether or not this is a side-effect
*/
- public AddOperationContext( LdapDN dn, boolean collateralOperation )
+ public AddOperationContext( Registries registries, LdapDN dn, boolean collateralOperation )
{
- super( dn, collateralOperation );
+ super( registries, dn, collateralOperation );
}
@@ -95,9 +95,9 @@
* @param entry the entry being added
* @param collateralOperation whether or not this is a side-effect
*/
- public AddOperationContext( LdapDN dn, Attributes entry, boolean collateralOperation )
+ public AddOperationContext( Registries registries, LdapDN dn, ServerEntry entry, boolean collateralOperation )
{
- super( dn, collateralOperation );
+ super( registries, dn, collateralOperation );
this.entry = entry;
}
@@ -105,7 +105,7 @@
/**
* @return The added attributes
*/
- public Attributes getEntry()
+ public ServerEntry getEntry()
{
return entry;
}
@@ -114,7 +114,7 @@
* Set the added attributes
* @param entry The added attributes
*/
- public void setEntry( Attributes entry )
+ public void setEntry( ServerEntry entry )
{
this.entry = entry;
}
@@ -125,6 +125,6 @@
public String toString()
{
return "AddContext for DN '" + getDn().getUpName() + "'" +
- ", added entry: " + AttributeUtils.toString( entry );
+ ", added entry: " + entry;
}
}
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/BindOperationContext.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/BindOperationContext.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/BindOperationContext.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/BindOperationContext.java Sun Jan 20 08:59:10 2008
@@ -21,6 +21,7 @@
import java.util.List;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.util.StringTools;
/**
@@ -40,6 +41,17 @@
/** The SASL identifier */
private String saslAuthId;
+
+ /**
+ * Creates a new instance of BindOperationContext.
+ *
+ * @param Registries The global registries
+ */
+ public BindOperationContext( Registries registries )
+ {
+ super( registries );
+ }
+
/**
* @return The list of supported mechanisms
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/CompareOperationContext.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/CompareOperationContext.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/CompareOperationContext.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/CompareOperationContext.java Sun Jan 20 08:59:10 2008
@@ -19,6 +19,7 @@
*/
package org.apache.directory.server.core.interceptor.context;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.name.LdapDN;
import org.apache.directory.shared.ldap.util.StringTools;
@@ -29,7 +30,7 @@
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
* @version $Rev$, $Date$
*/
-public class CompareOperationContext extends AbstractOperationContext
+public class CompareOperationContext extends AbstractOperationContext
{
/** The entry OID */
private String oid;
@@ -37,14 +38,15 @@
/** The value to be compared */
private Object value;
+
/**
*
* Creates a new instance of CompareOperationContext.
*
*/
- public CompareOperationContext()
+ public CompareOperationContext( Registries registries )
{
- super();
+ super( registries );
}
/**
@@ -52,9 +54,9 @@
* Creates a new instance of CompareOperationContext.
*
*/
- public CompareOperationContext( LdapDN dn )
+ public CompareOperationContext( Registries registries, LdapDN dn )
{
- super( dn );
+ super( registries, dn );
}
/**
@@ -62,9 +64,9 @@
* Creates a new instance of LookupOperationContext.
*
*/
- public CompareOperationContext( String oid )
+ public CompareOperationContext( Registries registries, String oid )
{
- super();
+ super( registries );
this.oid = oid;
}
@@ -73,9 +75,9 @@
* Creates a new instance of LookupOperationContext.
*
*/
- public CompareOperationContext( LdapDN dn, String oid )
+ public CompareOperationContext( Registries registries, LdapDN dn, String oid )
{
- super( dn );
+ super( registries, dn );
this.oid = oid;
}
@@ -84,9 +86,9 @@
* Creates a new instance of LookupOperationContext.
*
*/
- public CompareOperationContext( LdapDN dn, String oid, Object value )
+ public CompareOperationContext( Registries registries, LdapDN dn, String oid, Object value )
{
- super( dn );
+ super( registries, dn );
this.oid = oid;
this.value = value;
}
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/DeleteOperationContext.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/DeleteOperationContext.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/DeleteOperationContext.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/DeleteOperationContext.java Sun Jan 20 08:59:10 2008
@@ -19,6 +19,7 @@
*/
package org.apache.directory.server.core.interceptor.context;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.name.LdapDN;
/**
@@ -28,14 +29,14 @@
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
* @version $Rev$, $Date$
*/
-public class DeleteOperationContext extends AbstractOperationContext
+public class DeleteOperationContext extends AbstractOperationContext
{
/**
* Creates a new instance of DeleteOperationContext.
*/
- public DeleteOperationContext()
+ public DeleteOperationContext( Registries registries )
{
- super();
+ super( registries );
}
@@ -44,9 +45,9 @@
*
* @param collateralOperation true if this is a side effect operation
*/
- public DeleteOperationContext( boolean collateralOperation )
+ public DeleteOperationContext( Registries registries, boolean collateralOperation )
{
- super( collateralOperation );
+ super( registries, collateralOperation );
}
@@ -55,9 +56,9 @@
*
* @param deleteDn The entry DN to delete
*/
- public DeleteOperationContext( LdapDN deleteDn )
+ public DeleteOperationContext( Registries registries, LdapDN deleteDn )
{
- super( deleteDn );
+ super( registries, deleteDn );
}
@@ -67,9 +68,9 @@
* @param deleteDn The entry DN to delete
* @param collateralOperation true if this is a side effect operation
*/
- public DeleteOperationContext( LdapDN deleteDn, boolean collateralOperation )
+ public DeleteOperationContext( Registries registries, LdapDN deleteDn, boolean collateralOperation )
{
- super( deleteDn, collateralOperation );
+ super( registries, deleteDn, collateralOperation );
}
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/EmptyOperationContext.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/EmptyOperationContext.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/EmptyOperationContext.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/EmptyOperationContext.java Sun Jan 20 08:59:10 2008
@@ -19,6 +19,7 @@
*/
package org.apache.directory.server.core.interceptor.context;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.name.LdapDN;
/**
@@ -33,9 +34,9 @@
/**
* Creates a new instance of EmptyOperationContext.
*/
- public EmptyOperationContext()
+ public EmptyOperationContext( Registries registries )
{
- super( LdapDN.EMPTY_LDAPDN );
+ super( registries, LdapDN.EMPTY_LDAPDN );
}
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/EntryOperationContext.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/EntryOperationContext.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/EntryOperationContext.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/EntryOperationContext.java Sun Jan 20 08:59:10 2008
@@ -19,6 +19,7 @@
*/
package org.apache.directory.server.core.interceptor.context;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.name.LdapDN;
/**
@@ -28,13 +29,14 @@
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
* @version $Rev$, $Date$
*/
-public class EntryOperationContext extends AbstractOperationContext
+public class EntryOperationContext extends AbstractOperationContext
{
/**
* Creates a new instance of EntryOperationContext.
*/
- public EntryOperationContext()
+ public EntryOperationContext( Registries registries )
{
+ super( registries );
}
/**
@@ -42,9 +44,9 @@
*
* @param entryDn The Entry DN to unbind
*/
- public EntryOperationContext( LdapDN entryDn )
+ public EntryOperationContext( Registries registries, LdapDN entryDn )
{
- super( entryDn );
+ super( registries, entryDn );
}
/**
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/GetMatchedNameOperationContext.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/GetMatchedNameOperationContext.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/GetMatchedNameOperationContext.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/GetMatchedNameOperationContext.java Sun Jan 20 08:59:10 2008
@@ -19,6 +19,7 @@
*/
package org.apache.directory.server.core.interceptor.context;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.name.LdapDN;
/**
@@ -28,14 +29,14 @@
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
* @version $Rev$, $Date$
*/
-public class GetMatchedNameOperationContext extends AbstractOperationContext
+public class GetMatchedNameOperationContext extends AbstractOperationContext
{
/**
* Creates a new instance of GetMatchedNameOperationContext.
*/
- public GetMatchedNameOperationContext()
+ public GetMatchedNameOperationContext( Registries registries )
{
- super();
+ super( registries );
}
/**
@@ -43,9 +44,9 @@
*
* @param dn The DN to match
*/
- public GetMatchedNameOperationContext( LdapDN dn )
+ public GetMatchedNameOperationContext( Registries registries, LdapDN dn )
{
- super( dn );
+ super( registries, dn );
}
/**
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/GetRootDSEOperationContext.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/GetRootDSEOperationContext.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/GetRootDSEOperationContext.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/GetRootDSEOperationContext.java Sun Jan 20 08:59:10 2008
@@ -19,6 +19,7 @@
*/
package org.apache.directory.server.core.interceptor.context;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.name.LdapDN;
/**
@@ -28,14 +29,14 @@
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
* @version $Rev$, $Date$
*/
-public class GetRootDSEOperationContext extends AbstractOperationContext
+public class GetRootDSEOperationContext extends AbstractOperationContext
{
/**
* Creates a new instance of GetRootDSEOperationContext.
*/
- public GetRootDSEOperationContext()
+ public GetRootDSEOperationContext( Registries registries )
{
- super();
+ super( registries );
}
/**
@@ -43,9 +44,9 @@
*
* @param dn The entry DN used to get the rootDSE
*/
- public GetRootDSEOperationContext( LdapDN dn )
+ public GetRootDSEOperationContext( Registries registries, LdapDN dn )
{
- super( dn );
+ super( registries, dn );
}
/**
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/GetSuffixOperationContext.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/GetSuffixOperationContext.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/GetSuffixOperationContext.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/GetSuffixOperationContext.java Sun Jan 20 08:59:10 2008
@@ -19,6 +19,7 @@
*/
package org.apache.directory.server.core.interceptor.context;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.name.LdapDN;
/**
@@ -28,14 +29,14 @@
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
* @version $Rev$, $Date$
*/
-public class GetSuffixOperationContext extends AbstractOperationContext
+public class GetSuffixOperationContext extends AbstractOperationContext
{
/**
* Creates a new instance of GetSuffixOperationContext.
*/
- public GetSuffixOperationContext()
+ public GetSuffixOperationContext( Registries registries )
{
- super();
+ super( registries );
}
/**
@@ -43,9 +44,9 @@
*
* @param dn The DN to get the suffix from
*/
- public GetSuffixOperationContext( LdapDN dn )
+ public GetSuffixOperationContext( Registries registries, LdapDN dn )
{
- super( dn );
+ super( registries, dn );
}
/**
Modified: directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/ListOperationContext.java
URL: http://svn.apache.org/viewvc/directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/ListOperationContext.java?rev=613608&r1=613607&r2=613608&view=diff
==============================================================================
--- directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/ListOperationContext.java (original)
+++ directory/sandbox/akarasulu/bigbang/apacheds/core/src/main/java/org/apache/directory/server/core/interceptor/context/ListOperationContext.java Sun Jan 20 08:59:10 2008
@@ -19,6 +19,7 @@
*/
package org.apache.directory.server.core.interceptor.context;
+import org.apache.directory.server.schema.registries.Registries;
import org.apache.directory.shared.ldap.name.LdapDN;
import org.apache.directory.shared.ldap.message.AliasDerefMode;
@@ -29,7 +30,7 @@
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
* @version $Rev$, $Date$
*/
-public class ListOperationContext extends AbstractOperationContext
+public class ListOperationContext extends AbstractOperationContext
{
private AliasDerefMode aliasDerefMode = AliasDerefMode.DEREF_ALWAYS;
@@ -37,9 +38,9 @@
/**
* Creates a new instance of ListOperationContext.
*/
- public ListOperationContext()
+ public ListOperationContext( Registries registries )
{
- super();
+ super( registries );
}
@@ -48,9 +49,9 @@
*
* @param dn The DN to get the suffix from
*/
- public ListOperationContext( LdapDN dn )
+ public ListOperationContext( Registries registries, LdapDN dn )
{
- super( dn );
+ super( registries, dn );
}
@@ -60,9 +61,9 @@
* @param dn The DN to get the suffix from
* @param aliasDerefMode the alias dereferencing mode to use
*/
- public ListOperationContext( LdapDN dn, AliasDerefMode aliasDerefMode )
+ public ListOperationContext( Registries registries, LdapDN dn, AliasDerefMode aliasDerefMode )
{
- super( dn );
+ super( registries, dn );
this.aliasDerefMode = aliasDerefMode;
}