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 2007/01/03 21:40:41 UTC
svn commit: r492293 - in /directory/trunks/apacheds:
core-unit/src/main/java/org/apache/directory/server/core/unit/
core/src/main/java/org/apache/directory/server/core/
core/src/main/java/org/apache/directory/server/core/authn/
core/src/main/java/org/a...
Author: akarasulu
Date: Wed Jan 3 12:40:39 2007
New Revision: 492293
URL: http://svn.apache.org/viewvc?view=rev&rev=492293
Log:
playing with different concepts on how to handle updates to schema data
Added:
directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MetaComparatorHandler.java
directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MetaSchemaHandler.java
- copied, changed from r491943, directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MetaSchemaModifyHandler.java
directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MetaSchemaUtils.java
directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/RegistryModifier.java
directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/SchemaChangeHandler.java
Removed:
directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MetaSchemaModifyHandler.java
Modified:
directory/trunks/apacheds/core-unit/src/main/java/org/apache/directory/server/core/unit/AbstractPerformanceTest.java
directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/DefaultDirectoryService.java
directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/authn/AuthenticationService.java
directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/MutableStartupConfiguration.java
directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/StartupConfiguration.java
directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MatchingRuleImpl.java
directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/SchemaManager.java
directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/SchemaPartitionDao.java
directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/SchemaService.java
directory/trunks/apacheds/schema-registries/src/main/java/org/apache/directory/server/schema/registries/DefaultRegistries.java
directory/trunks/apacheds/schema-registries/src/main/java/org/apache/directory/server/schema/registries/Registries.java
directory/trunks/apacheds/server-installers/pom.xml
directory/trunks/apacheds/server-installers/src/main/installers/server.xml
directory/trunks/apacheds/server-jndi/src/main/java/org/apache/directory/server/configuration/MutableServerStartupConfiguration.java
directory/trunks/apacheds/server-main/server.xml
Modified: directory/trunks/apacheds/core-unit/src/main/java/org/apache/directory/server/core/unit/AbstractPerformanceTest.java
URL: http://svn.apache.org/viewvc/directory/trunks/apacheds/core-unit/src/main/java/org/apache/directory/server/core/unit/AbstractPerformanceTest.java?view=diff&rev=492293&r1=492292&r2=492293
==============================================================================
--- directory/trunks/apacheds/core-unit/src/main/java/org/apache/directory/server/core/unit/AbstractPerformanceTest.java (original)
+++ directory/trunks/apacheds/core-unit/src/main/java/org/apache/directory/server/core/unit/AbstractPerformanceTest.java Wed Jan 3 12:40:39 2007
@@ -36,6 +36,7 @@
import javax.naming.ldap.LdapContext;
import org.apache.directory.server.core.configuration.MutablePartitionConfiguration;
+import org.apache.directory.server.core.configuration.PartitionConfiguration;
import org.apache.directory.server.core.partition.PartitionNexus;
import org.apache.directory.shared.ldap.ldif.Entry;
import org.apache.directory.shared.ldap.ldif.LdifReader;
@@ -152,7 +153,7 @@
partConfig.setContextEntry( attributes );
configuration.setShutdownHookEnabled( false );
- configuration.setPartitionConfigurations( Collections.singleton( partConfig ) );
+ configuration.setPartitionConfigurations( Collections.singleton( ( PartitionConfiguration ) partConfig ) );
doDelete( configuration.getWorkingDirectory() );
setContextRoots( username, password, configuration );
Modified: directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/DefaultDirectoryService.java
URL: http://svn.apache.org/viewvc/directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/DefaultDirectoryService.java?view=diff&rev=492293&r1=492292&r2=492293
==============================================================================
--- directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/DefaultDirectoryService.java (original)
+++ directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/DefaultDirectoryService.java Wed Jan 3 12:40:39 2007
@@ -851,7 +851,7 @@
String schemaName = dao.findSchema( indexedAttr.toString() );
if ( schemaName == null )
{
- throw new NamingException( "Index on unidentified attribute" );
+ throw new NamingException( "Index on unidentified attribute: " + indexedAttr.toString() );
}
Schema schema = schemaMap.get( schemaName );
Modified: directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/authn/AuthenticationService.java
URL: http://svn.apache.org/viewvc/directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/authn/AuthenticationService.java?view=diff&rev=492293&r1=492292&r2=492293
==============================================================================
--- directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/authn/AuthenticationService.java (original)
+++ directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/authn/AuthenticationService.java Wed Jan 3 12:40:39 2007
@@ -23,9 +23,11 @@
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
+import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
+import java.util.Set;
import javax.naming.Context;
import javax.naming.NamingEnumeration;
@@ -105,11 +107,16 @@
/**
* Deinitializes and deregisters all {@link Authenticator}s from this service.
*/
+ @SuppressWarnings("unchecked")
public void destroy()
{
- for ( Collection<Authenticator> collection:authenticators.values() )
+ Set<Collection<Authenticator>> clonedAuthenticatorCollections = new HashSet<Collection<Authenticator>>();
+ clonedAuthenticatorCollections.addAll( authenticators.values() );
+ for ( Collection<Authenticator> collection:clonedAuthenticatorCollections )
{
- for ( Authenticator authenticator:collection )
+ Set <Authenticator> clonedAuthenticators = new HashSet<Authenticator>();
+ clonedAuthenticators.addAll( collection );
+ for ( Authenticator authenticator:clonedAuthenticators )
{
unregister( authenticator );
}
Modified: directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/MutableStartupConfiguration.java
URL: http://svn.apache.org/viewvc/directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/MutableStartupConfiguration.java?view=diff&rev=492293&r1=492292&r2=492293
==============================================================================
--- directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/MutableStartupConfiguration.java (original)
+++ directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/MutableStartupConfiguration.java Wed Jan 3 12:40:39 2007
@@ -92,7 +92,7 @@
}
- public void setPartitionConfigurations( Set paritionConfigurations )
+ public void setPartitionConfigurations( Set<PartitionConfiguration> paritionConfigurations )
{
super.setPartitionConfigurations( paritionConfigurations );
}
Modified: directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/StartupConfiguration.java
URL: http://svn.apache.org/viewvc/directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/StartupConfiguration.java?view=diff&rev=492293&r1=492292&r2=492293
==============================================================================
--- directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/StartupConfiguration.java (original)
+++ directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/configuration/StartupConfiguration.java Wed Jan 3 12:40:39 2007
@@ -241,7 +241,7 @@
/**
* Sets {@link PartitionConfiguration}s to configure context partitions.
*/
- protected void setPartitionConfigurations( Set contextParitionConfigurations )
+ protected void setPartitionConfigurations( Set<PartitionConfiguration> contextParitionConfigurations )
{
Set newSet = ConfigurationUtil.getTypeSafeSet( contextParitionConfigurations,
PartitionConfiguration.class );
Modified: directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MatchingRuleImpl.java
URL: http://svn.apache.org/viewvc/directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MatchingRuleImpl.java?view=diff&rev=492293&r1=492292&r2=492293
==============================================================================
--- directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MatchingRuleImpl.java (original)
+++ directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MatchingRuleImpl.java Wed Jan 3 12:40:39 2007
@@ -17,9 +17,9 @@
* under the License.
*
*/
-
package org.apache.directory.server.core.schema;
+
import java.util.Comparator;
import javax.naming.NamingException;
@@ -32,6 +32,7 @@
import org.apache.directory.shared.ldap.schema.MutableSchemaObject;
import org.apache.directory.shared.ldap.schema.Normalizer;
import org.apache.directory.shared.ldap.schema.Syntax;
+
class MatchingRuleImpl extends AbstractMatchingRule implements MutableSchemaObject
{
Added: directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MetaComparatorHandler.java
URL: http://svn.apache.org/viewvc/directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MetaComparatorHandler.java?view=auto&rev=492293
==============================================================================
--- directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MetaComparatorHandler.java (added)
+++ directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MetaComparatorHandler.java Wed Jan 3 12:40:39 2007
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.directory.server.core.schema;
+
+
+import java.util.Comparator;
+
+import javax.naming.NamingException;
+import javax.naming.directory.Attribute;
+import javax.naming.directory.Attributes;
+import javax.naming.directory.ModificationItem;
+
+import org.apache.directory.server.constants.MetaSchemaConstants;
+import org.apache.directory.server.core.ServerUtils;
+import org.apache.directory.server.schema.bootstrap.Schema;
+import org.apache.directory.server.schema.registries.Registries;
+import org.apache.directory.shared.ldap.name.LdapDN;
+import org.apache.directory.shared.ldap.schema.AttributeType;
+import org.apache.directory.shared.ldap.util.NamespaceTools;
+
+
+/**
+ * A handler for operations peformed to add, delete, modify, rename and
+ * move schema comparators.
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$, $Date$
+ */
+public class MetaComparatorHandler implements SchemaChangeHandler
+{
+ private final SchemaEntityFactory factory;
+ private final RegistryModifier registryModifier;
+ private final Registries targetRegistries;
+ private final AttributeType m_oidAT;
+
+
+ public MetaComparatorHandler( Registries targetRegistries ) throws NamingException
+ {
+ this.targetRegistries = targetRegistries;
+ this.factory = new SchemaEntityFactory( targetRegistries );
+ this.registryModifier = new RegistryModifier();
+ this.m_oidAT = targetRegistries.getAttributeTypeRegistry().lookup( MetaSchemaConstants.M_OID_AT );
+ }
+
+
+ private String getOid( Attributes entry ) throws NamingException
+ {
+ Attribute oid = ServerUtils.getAttribute( m_oidAT, entry );
+ if ( oid == null )
+ {
+ return null;
+ }
+ return ( String ) oid.get();
+ }
+
+
+ private void modify( LdapDN name, Attributes entry, Attributes targetEntry ) throws NamingException
+ {
+ String oid = getOid( entry );
+ Comparator replacement = factory.getComparator( entry, targetRegistries );
+ Schema targetSchema = targetRegistries.getSchema( MetaSchemaUtils.getSchemaName( name ) );
+ registryModifier.modify( oid, replacement, targetSchema );
+ }
+
+
+ public void modify( LdapDN name, int modOp, Attributes mods, Attributes entry, Attributes targetEntry )
+ throws NamingException
+ {
+ modify( name, entry, targetEntry );
+ }
+
+
+ public void modify( LdapDN name, ModificationItem[] mods, Attributes entry, Attributes targetEntry )
+ throws NamingException
+ {
+ modify( name, entry, targetEntry );
+ }
+
+
+ public void add( LdapDN name, Attributes entry ) throws NamingException
+ {
+ Comparator comparator = factory.getComparator( entry, targetRegistries );
+ Schema schema = targetRegistries.getSchema( MetaSchemaUtils.getSchemaName( name ) );
+ registryModifier.add( getOid( entry ), comparator, schema );
+ }
+
+
+ public void delete( LdapDN name, Attributes entry ) throws NamingException
+ {
+ Comparator comparator = factory.getComparator( entry, targetRegistries );
+ Schema schema = targetRegistries.getSchema( MetaSchemaUtils.getSchemaName( name ) );
+ registryModifier.remove( getOid( entry ), comparator, schema );
+ }
+
+
+ public void rename( LdapDN name, Attributes entry, String newRdn ) throws NamingException
+ {
+ Schema schema = targetRegistries.getSchema( MetaSchemaUtils.getSchemaName( name ) );
+ String oid = NamespaceTools.getRdnValue( newRdn );
+ registryModifier.renameComparator( getOid( entry ), oid, schema );
+ }
+}
Copied: directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MetaSchemaHandler.java (from r491943, directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MetaSchemaModifyHandler.java)
URL: http://svn.apache.org/viewvc/directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MetaSchemaHandler.java?view=diff&rev=492293&p1=directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MetaSchemaModifyHandler.java&r1=491943&p2=directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MetaSchemaHandler.java&r2=492293
==============================================================================
--- directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MetaSchemaModifyHandler.java (original)
+++ directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MetaSchemaHandler.java Wed Jan 3 12:40:39 2007
@@ -42,14 +42,14 @@
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
* @version $Rev$, $Date$
*/
-public class MetaSchemaModifyHandler
+public class MetaSchemaHandler implements SchemaChangeHandler
{
private final PartitionSchemaLoader loader;
private final Registries globalRegistries;
private final AttributeType disabledAT;
- public MetaSchemaModifyHandler( Registries globalRegistries, PartitionSchemaLoader loader )
+ public MetaSchemaHandler( Registries globalRegistries, PartitionSchemaLoader loader )
throws NamingException
{
this.globalRegistries = globalRegistries;
@@ -59,18 +59,18 @@
}
- void handleMetaSchemaModification( LdapDN name, int modOp, Attributes mods, Attributes entry )
+ public void modify( LdapDN name, int modOp, Attributes mods, Attributes entry, Attributes targetEntry )
throws NamingException
{
Attribute disabledInMods = ServerUtils.getAttribute( disabledAT, mods );
if ( disabledInMods != null )
{
- handleMetaSchemaDisable( name, modOp, disabledInMods, ServerUtils.getAttribute( disabledAT, entry ) );
+ disable( name, modOp, disabledInMods, ServerUtils.getAttribute( disabledAT, entry ) );
}
}
- private void handleMetaSchemaDisable( LdapDN name, int modOp, Attribute disabledInMods, Attribute disabledInEntry )
+ private void disable( LdapDN name, int modOp, Attribute disabledInMods, Attribute disabledInEntry )
throws NamingException
{
switch ( modOp )
@@ -155,7 +155,7 @@
}
- public void handleMetaSchemaModification( LdapDN name, ModificationItem[] mods, Attributes entry )
+ public void modify( LdapDN name, ModificationItem[] mods, Attributes entry, Attributes targetEntry )
throws NamingException
{
OidRegistry registry = globalRegistries.getOidRegistry();
@@ -166,9 +166,27 @@
String id = registry.getOid( mods[ii].getAttribute().getID() );
if ( id.equals( disabledAT.getOid() ) )
{
- handleMetaSchemaDisable( name, mods[ii].getModificationOp(),
+ disable( name, mods[ii].getModificationOp(),
mods[ii].getAttribute(), disabledInEntry );
}
}
+ }
+
+
+ public void add( LdapDN name, Attributes entry ) throws NamingException
+ {
+ throw new NotImplementedException();
+ }
+
+
+ public void delete( LdapDN name, Attributes entry ) throws NamingException
+ {
+ throw new NotImplementedException();
+ }
+
+
+ public void rename( LdapDN name, Attributes entry, String newRdn ) throws NamingException
+ {
+ throw new NotImplementedException();
}
}
Added: directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MetaSchemaUtils.java
URL: http://svn.apache.org/viewvc/directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MetaSchemaUtils.java?view=auto&rev=492293
==============================================================================
--- directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MetaSchemaUtils.java (added)
+++ directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/MetaSchemaUtils.java Wed Jan 3 12:40:39 2007
@@ -0,0 +1,47 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.directory.server.core.schema;
+
+
+import javax.naming.NamingException;
+
+import org.apache.directory.shared.ldap.name.LdapDN;
+import org.apache.directory.shared.ldap.name.Rdn;
+
+
+/**
+ * Some useful methods used by meta schema handling code.
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$
+ */
+public class MetaSchemaUtils
+{
+ public static String getSchemaName( LdapDN dn ) throws NamingException
+ {
+ if ( dn.size() < 2 )
+ {
+ throw new NamingException( "At least two name components are expected for the dn" );
+ }
+
+ Rdn rdn = dn.getRdn( 1 );
+ return ( String ) rdn.getValue();
+ }
+}
Added: directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/RegistryModifier.java
URL: http://svn.apache.org/viewvc/directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/RegistryModifier.java?view=auto&rev=492293
==============================================================================
--- directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/RegistryModifier.java (added)
+++ directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/RegistryModifier.java Wed Jan 3 12:40:39 2007
@@ -0,0 +1,164 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.directory.server.core.schema;
+
+
+import java.util.Comparator;
+import javax.naming.NamingException;
+
+import org.apache.directory.server.schema.bootstrap.Schema;
+import org.apache.directory.shared.ldap.schema.Normalizer;
+import org.apache.directory.shared.ldap.schema.syntax.AttributeTypeDescription;
+import org.apache.directory.shared.ldap.schema.syntax.LdapSyntaxDescription;
+import org.apache.directory.shared.ldap.schema.syntax.MatchingRuleDescription;
+import org.apache.directory.shared.ldap.schema.syntax.ObjectClassDescription;
+import org.apache.directory.shared.ldap.schema.syntax.SyntaxChecker;
+
+
+/**
+ * A class that reacts to schema changes. It is informed of the event
+ * before the operation occurs so it can reject the operation by throwing
+ * an exception.
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$, $Date$
+ */
+public class RegistryModifier
+{
+ // --- handles entity addititions
+
+ void add( String oid, Normalizer normalizer, Schema schema ) throws NamingException
+ {
+ }
+ void add( String oid, Comparator comparator, Schema schema ) throws NamingException
+ {
+ }
+ void add( String oid, SyntaxChecker syntaxChecker, Schema schema ) throws NamingException
+ {
+ }
+ void add( LdapSyntaxDescription syntax, Schema schema ) throws NamingException
+ {
+ }
+ void add( MatchingRuleDescription matchingRuleDescription, Schema schema ) throws NamingException
+ {
+ }
+ void add( AttributeTypeDescription attributeTypeDescription, Schema schema ) throws NamingException
+ {
+ }
+ void add( ObjectClassDescription objectClassDescription, Schema schema ) throws NamingException
+ {
+ }
+
+ // --- handles entity deletions
+
+ void remove( String oid, Normalizer normalizer, Schema schema ) throws NamingException
+ {
+ }
+ void remove( String oid, Comparator comparator, Schema schema ) throws NamingException
+ {
+ }
+ void remove( String oid, SyntaxChecker syntaxChecker, Schema schema ) throws NamingException
+ {
+ }
+ void remove( LdapSyntaxDescription syntax, Schema schema ) throws NamingException
+ {
+ }
+ void remove( MatchingRuleDescription matchingRuleDescription, Schema schema ) throws NamingException
+ {
+ }
+ void remove( AttributeTypeDescription attributeTypeDescription, Schema schema ) throws NamingException
+ {
+ }
+ void remove( ObjectClassDescription objectClassDescription, Schema schema ) throws NamingException
+ {
+ }
+
+ // --- handles entity moves
+
+ void replace( String oldOid, String newOid, Normalizer replacement, Schema targetSchema ) throws NamingException
+ {
+ }
+ void replace( String oldOid, String newOid, Comparator replacement, Schema targetSchema ) throws NamingException
+ {
+ }
+ void replace( String oldOid, String newOid, SyntaxChecker replacement, Schema targetSchema ) throws NamingException
+ {
+ }
+ void replace( LdapSyntaxDescription old, LdapSyntaxDescription replacement, Schema targetSchema ) throws NamingException
+ {
+ }
+ void replace( MatchingRuleDescription old, MatchingRuleDescription replacement, Schema targetSchema ) throws NamingException
+ {
+ }
+ void replace( AttributeTypeDescription old, AttributeTypeDescription replacement, Schema targetSchema ) throws NamingException
+ {
+ }
+ void replace( ObjectClassDescription old, ObjectClassDescription replacement, Schema targetSchema ) throws NamingException
+ {
+ }
+
+ // --- handles entity modifications
+
+ void modify( String oid, Normalizer replacement, Schema targetSchema ) throws NamingException
+ {
+ }
+ void modify( String oid, Comparator replacement, Schema targetSchema ) throws NamingException
+ {
+ }
+ void modify( String oid, SyntaxChecker replacement, Schema targetSchema ) throws NamingException
+ {
+ }
+ void modify( LdapSyntaxDescription old, LdapSyntaxDescription replacement, Schema targetSchema ) throws NamingException
+ {
+ }
+ void modify( MatchingRuleDescription old, MatchingRuleDescription replacement, Schema targetSchema ) throws NamingException
+ {
+ }
+ void modify( AttributeTypeDescription old, AttributeTypeDescription replacement, Schema targetSchema ) throws NamingException
+ {
+ }
+ void modify( ObjectClassDescription old, ObjectClassDescription replacement, Schema targetSchema ) throws NamingException
+ {
+ }
+
+ // --- handles entity renames
+
+ void renameNormalizer( String oldOid, String newOid, Schema targetSchema ) throws NamingException
+ {
+ }
+ void renameComparator( String oldOid, String newOid, Schema targetSchema ) throws NamingException
+ {
+ }
+ void renameSyntaxChecker( String oldOid, String newOid, Schema targetSchema ) throws NamingException
+ {
+ }
+ void renameSyntax( String oldOid, String newOid, Schema targetSchema ) throws NamingException
+ {
+ }
+ void renameMatchingRule( String oldOid, String newOid, Schema targetSchema ) throws NamingException
+ {
+ }
+ void renameAttributeType( String oldOid, String newOid, Schema targetSchema ) throws NamingException
+ {
+ }
+ void renameObjectClass( String oldOid, String newOid, Schema targetSchema ) throws NamingException
+ {
+ }
+}
Added: directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/SchemaChangeHandler.java
URL: http://svn.apache.org/viewvc/directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/SchemaChangeHandler.java?view=auto&rev=492293
==============================================================================
--- directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/SchemaChangeHandler.java (added)
+++ directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/SchemaChangeHandler.java Wed Jan 3 12:40:39 2007
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.directory.server.core.schema;
+
+import javax.naming.NamingException;
+import javax.naming.directory.Attributes;
+import javax.naming.directory.ModificationItem;
+
+import org.apache.directory.shared.ldap.name.LdapDN;
+
+
+/**
+ * A common interface used by schema change handlers which react to
+ * changes performed on schema entities.
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$
+ */
+public interface SchemaChangeHandler
+{
+ public void add( LdapDN name, Attributes entry ) throws NamingException;
+ public void delete( LdapDN name, Attributes entry ) throws NamingException;
+ public void rename( LdapDN name, Attributes entry, String newRdn ) throws NamingException;
+ public void modify( LdapDN name, int modOp, Attributes mods, Attributes entry, Attributes targetEntry ) throws NamingException;
+ public void modify( LdapDN name, ModificationItem[] mods, Attributes entry, Attributes targetEntry ) throws NamingException;
+// public void move( LdapDN oldName, Attributes entry, Ldap) throws NamingException;
+}
Modified: directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/SchemaManager.java
URL: http://svn.apache.org/viewvc/directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/SchemaManager.java?view=diff&rev=492293&r1=492292&r2=492293
==============================================================================
--- directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/SchemaManager.java (original)
+++ directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/SchemaManager.java Wed Jan 3 12:40:39 2007
@@ -25,6 +25,7 @@
import javax.naming.directory.Attributes;
import javax.naming.directory.ModificationItem;
+import org.apache.directory.server.constants.MetaSchemaConstants;
import org.apache.directory.server.constants.SystemSchemaConstants;
import org.apache.directory.server.core.ServerUtils;
import org.apache.directory.server.schema.registries.Registries;
@@ -50,9 +51,10 @@
public class SchemaManager
{
private final PartitionSchemaLoader loader;
- private final MetaSchemaModifyHandler metaSchemaModifyHandler;
+ private final MetaSchemaHandler metaSchemaHandler;
private final Registries globalRegistries;
private final AttributeType objectClassAT;
+ private final MetaComparatorHandler metaComparatorHandler;
public SchemaManager( Registries globalRegistries, PartitionSchemaLoader loader ) throws NamingException
@@ -61,13 +63,14 @@
this.globalRegistries = globalRegistries;
this.objectClassAT = this.globalRegistries.getAttributeTypeRegistry()
.lookup( SystemSchemaConstants.OBJECT_CLASS_AT );
- this.metaSchemaModifyHandler = new MetaSchemaModifyHandler( this.globalRegistries, this.loader );
+ this.metaSchemaHandler = new MetaSchemaHandler( this.globalRegistries, this.loader );
+ this.metaComparatorHandler = new MetaComparatorHandler( globalRegistries );
}
public Registries getGlobalRegistries()
{
- throw new NotImplementedException();
+ return globalRegistries;
}
@@ -78,14 +81,19 @@
- public void modify( LdapDN name, int modOp, Attributes mods, Attributes entry ) throws NamingException
+ public void modify( LdapDN name, int modOp, Attributes mods, Attributes entry, Attributes targetEntry ) throws NamingException
{
Attribute oc = ServerUtils.getAttribute( objectClassAT, entry );
- // We are changing a metaSchema entry
- if ( AttributeUtils.containsValue( oc, "metaSchema", objectClassAT ) )
+ if ( AttributeUtils.containsValue( oc, MetaSchemaConstants.META_SCHEMA_OC, objectClassAT ) )
+ {
+ metaSchemaHandler.modify( name, modOp, mods, entry, targetEntry );
+ return;
+ }
+
+ if ( AttributeUtils.containsValue( oc, MetaSchemaConstants.META_COMPARATOR_OC, objectClassAT ) )
{
- metaSchemaModifyHandler.handleMetaSchemaModification( name, modOp, mods, entry );
+ metaComparatorHandler.modify( name, modOp, mods, entry, targetEntry );
return;
}
@@ -93,14 +101,19 @@
}
- public void modify( LdapDN name, ModificationItem[] mods, Attributes entry ) throws NamingException
+ public void modify( LdapDN name, ModificationItem[] mods, Attributes entry, Attributes targetEntry ) throws NamingException
{
Attribute oc = ServerUtils.getAttribute( objectClassAT, entry );
- // We are changing a metaSchema entry
- if ( AttributeUtils.containsValue( oc, "metaSchema", objectClassAT ) )
+ if ( AttributeUtils.containsValue( oc, MetaSchemaConstants.META_SCHEMA_OC, objectClassAT ) )
+ {
+ metaSchemaHandler.modify( name, mods, entry, targetEntry );
+ return;
+ }
+
+ if ( AttributeUtils.containsValue( oc, MetaSchemaConstants.META_COMPARATOR_OC, objectClassAT ) )
{
- metaSchemaModifyHandler.handleMetaSchemaModification( name, mods, entry );
+ metaComparatorHandler.modify( name, mods, entry, targetEntry );
return;
}
Modified: directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/SchemaPartitionDao.java
URL: http://svn.apache.org/viewvc/directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/SchemaPartitionDao.java?view=diff&rev=492293&r1=492292&r2=492293
==============================================================================
--- directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/SchemaPartitionDao.java (original)
+++ directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/SchemaPartitionDao.java Wed Jan 3 12:40:39 2007
@@ -43,6 +43,7 @@
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.BranchNode;
import org.apache.directory.shared.ldap.filter.ExprNode;
import org.apache.directory.shared.ldap.filter.SimpleNode;
import org.apache.directory.shared.ldap.filter.AssertionEnum;
@@ -67,6 +68,7 @@
/** static class logger */
private final static Logger log = LoggerFactory.getLogger( SchemaPartitionDao.class );
+
private final Partition partition;
private final Registries bootstrapRegistries;
private final SchemaEntityFactory factory;
@@ -75,6 +77,7 @@
private final String M_NAME_OID;
private final String CN_OID;
+ private final String M_OID_OID;
private final AttributeType disabledAttributeType;
@@ -95,6 +98,7 @@
this.M_NAME_OID = oidRegistry.getOid( MetaSchemaConstants.M_NAME_AT );
this.CN_OID = oidRegistry.getOid( SystemSchemaConstants.CN_AT );
this.disabledAttributeType = attrRegistry.lookup( MetaSchemaConstants.M_DISABLED_AT );
+ this.M_OID_OID = oidRegistry.getOid( MetaSchemaConstants.M_OID_AT );
}
@@ -168,7 +172,11 @@
*/
public String findSchema( String entityName ) throws NamingException
{
- SimpleNode filter = new SimpleNode( M_NAME_OID, entityName.toLowerCase(), AssertionEnum.EQUALITY );
+ BranchNode filter = new BranchNode( AssertionEnum.OR );
+ SimpleNode nameAVA = new SimpleNode( M_NAME_OID, entityName.toLowerCase(), AssertionEnum.EQUALITY );
+ SimpleNode oidAVA = new SimpleNode( M_OID_OID, entityName.toLowerCase(), AssertionEnum.EQUALITY );
+ filter.addNode( nameAVA );
+ filter.addNode( oidAVA );
SearchControls searchControls = new SearchControls();
searchControls.setSearchScope( SearchControls.SUBTREE_SCOPE );
NamingEnumeration<SearchResult> ne = null;
Modified: directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/SchemaService.java
URL: http://svn.apache.org/viewvc/directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/SchemaService.java?view=diff&rev=492293&r1=492292&r2=492293
==============================================================================
--- directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/SchemaService.java (original)
+++ directory/trunks/apacheds/core/src/main/java/org/apache/directory/server/core/schema/SchemaService.java Wed Jan 3 12:40:39 2007
@@ -130,6 +130,7 @@
// the base DN (normalized) of the schema partition
private LdapDN schemaBaseDN;
+
/**
* Creates a schema service interceptor.
@@ -139,6 +140,7 @@
startUpTimeStamp = DateUtils.getGeneralizedTime();
}
+
/**
* Initialize the Schema Service
*
@@ -667,6 +669,7 @@
{
// First, we get the entry from the backend. If it does not exist, then we throw an exception
Attributes entry = nexus.lookup( name );
+ Attributes targetEntry = SchemaUtils.getTargetEntry( modOp, mods, entry );
if ( entry == null )
{
@@ -680,7 +683,7 @@
NamingEnumeration changes = mods.getIDs();
- Attributes tmpEntryForAdd = (Attributes)entry.clone();
+ Attributes tmpEntryForAdd = ( Attributes ) entry.clone();
while ( changes.hasMore() )
{
@@ -789,7 +792,7 @@
if ( name.startsWith( schemaBaseDN ) )
{
- schemaManager.modify( name, modOp, mods, entry );
+ schemaManager.modify( name, modOp, mods, entry, targetEntry );
}
next.modify( name, modOp, mods );
}
@@ -799,6 +802,7 @@
{
// First, we get the entry from the backend. If it does not exist, then we throw an exception
Attributes entry = nexus.lookup( name );
+ Attributes targetEntry = SchemaUtils.getTargetEntry( mods, entry );
if ( entry == null )
{
@@ -1027,7 +1031,7 @@
if ( name.startsWith( schemaBaseDN ) )
{
- schemaManager.modify( name, mods, entry );
+ schemaManager.modify( name, mods, entry, targetEntry );
}
next.modify( name, mods );
}
Modified: directory/trunks/apacheds/schema-registries/src/main/java/org/apache/directory/server/schema/registries/DefaultRegistries.java
URL: http://svn.apache.org/viewvc/directory/trunks/apacheds/schema-registries/src/main/java/org/apache/directory/server/schema/registries/DefaultRegistries.java?view=diff&rev=492293&r1=492292&r2=492293
==============================================================================
--- directory/trunks/apacheds/schema-registries/src/main/java/org/apache/directory/server/schema/registries/DefaultRegistries.java (original)
+++ directory/trunks/apacheds/schema-registries/src/main/java/org/apache/directory/server/schema/registries/DefaultRegistries.java Wed Jan 3 12:40:39 2007
@@ -513,4 +513,10 @@
{
return schemaLoader;
}
+
+
+ public Schema getSchema( String schemaName )
+ {
+ return this.byName.get( schemaName );
+ }
}
Modified: directory/trunks/apacheds/schema-registries/src/main/java/org/apache/directory/server/schema/registries/Registries.java
URL: http://svn.apache.org/viewvc/directory/trunks/apacheds/schema-registries/src/main/java/org/apache/directory/server/schema/registries/Registries.java?view=diff&rev=492293&r1=492292&r2=492293
==============================================================================
--- directory/trunks/apacheds/schema-registries/src/main/java/org/apache/directory/server/schema/registries/Registries.java (original)
+++ directory/trunks/apacheds/schema-registries/src/main/java/org/apache/directory/server/schema/registries/Registries.java Wed Jan 3 12:40:39 2007
@@ -48,40 +48,30 @@
SchemaLoader setSchemaLoader();
AttributeTypeRegistry getAttributeTypeRegistry();
-
ComparatorRegistry getComparatorRegistry();
-
DITContentRuleRegistry getDitContentRuleRegistry();
-
DITStructureRuleRegistry getDitStructureRuleRegistry();
-
MatchingRuleRegistry getMatchingRuleRegistry();
-
MatchingRuleUseRegistry getMatchingRuleUseRegistry();
-
NameFormRegistry getNameFormRegistry();
-
NormalizerRegistry getNormalizerRegistry();
-
ObjectClassRegistry getObjectClassRegistry();
-
OidRegistry getOidRegistry();
-
SyntaxCheckerRegistry getSyntaxCheckerRegistry();
-
SyntaxRegistry getSyntaxRegistry();
-
List checkRefInteg();
+
+ Schema getSchema( String schemaName );
}
Modified: directory/trunks/apacheds/server-installers/pom.xml
URL: http://svn.apache.org/viewvc/directory/trunks/apacheds/server-installers/pom.xml?view=diff&rev=492293&r1=492292&r2=492293
==============================================================================
--- directory/trunks/apacheds/server-installers/pom.xml (original)
+++ directory/trunks/apacheds/server-installers/pom.xml Wed Jan 3 12:40:39 2007
@@ -34,6 +34,11 @@
<version>${pom.version}</version>
</dependency>
<dependency>
+ <groupId>org.apache.directory.server</groupId>
+ <artifactId>apacheds-schema-extras</artifactId>
+ <version>${pom.version}</version>
+ </dependency>
+ <dependency>
<groupId>org.slf4j</groupId>
<artifactId>nlog4j</artifactId>
</dependency>
@@ -71,7 +76,6 @@
<plugin>
<groupId>org.apache.directory.daemon</groupId>
<artifactId>daemon-plugin</artifactId>
- <version>1.1.0-SNAPSHOT</version>
<configuration>
<excludes>
@@ -191,6 +195,7 @@
<osArch>i386</osArch>
<daemonFramework>jsvc</daemonFramework>
</izPackTarget>
+<!--
<izPackTarget>
<packagedFiles>
<packagedFile>
@@ -251,6 +256,7 @@
<osArch>ppc</osArch>
<daemonFramework>jsvc</daemonFramework>
</izPackTarget>
+-->
</izPackTargets>
</configuration>
<executions>
Modified: directory/trunks/apacheds/server-installers/src/main/installers/server.xml
URL: http://svn.apache.org/viewvc/directory/trunks/apacheds/server-installers/src/main/installers/server.xml?view=diff&rev=492293&r1=492292&r2=492293
==============================================================================
--- directory/trunks/apacheds/server-installers/src/main/installers/server.xml (original)
+++ directory/trunks/apacheds/server-installers/src/main/installers/server.xml Wed Jan 3 12:40:39 2007
@@ -95,25 +95,9 @@
<ref bean="systemPartitionConfiguration"/>
</property>
- <property name="contextPartitionConfigurations">
+ <property name="partitionConfigurations">
<set>
<ref bean="examplePartitionConfiguration"/>
- </set>
- </property>
- <property name="bootstrapSchemas">
- <set>
- <bean class="org.apache.directory.server.core.schema.bootstrap.AutofsSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.CorbaSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.CoreSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.CosineSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.ApacheSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.CollectiveSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.InetorgpersonSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.JavaSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.Krb5kdcSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.NisSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.SystemSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.ApachednsSchema"/>
</set>
</property>
Modified: directory/trunks/apacheds/server-jndi/src/main/java/org/apache/directory/server/configuration/MutableServerStartupConfiguration.java
URL: http://svn.apache.org/viewvc/directory/trunks/apacheds/server-jndi/src/main/java/org/apache/directory/server/configuration/MutableServerStartupConfiguration.java?view=diff&rev=492293&r1=492292&r2=492293
==============================================================================
--- directory/trunks/apacheds/server-jndi/src/main/java/org/apache/directory/server/configuration/MutableServerStartupConfiguration.java (original)
+++ directory/trunks/apacheds/server-jndi/src/main/java/org/apache/directory/server/configuration/MutableServerStartupConfiguration.java Wed Jan 3 12:40:39 2007
@@ -102,13 +102,7 @@
}
-// public void setBootstrapSchemas( Set arg0 )
-// {
-// super.setBootstrapSchemas( arg0 );
-// }
-//
-
- public void setPartitionConfigurations( Set arg0 )
+ public void setPartitionConfigurations( Set<PartitionConfiguration> arg0 )
{
super.setPartitionConfigurations( arg0 );
}
Modified: directory/trunks/apacheds/server-main/server.xml
URL: http://svn.apache.org/viewvc/directory/trunks/apacheds/server-main/server.xml?view=diff&rev=492293&r1=492292&r2=492293
==============================================================================
--- directory/trunks/apacheds/server-main/server.xml (original)
+++ directory/trunks/apacheds/server-main/server.xml Wed Jan 3 12:40:39 2007
@@ -95,33 +95,16 @@
<ref bean="systemPartitionConfiguration"/>
</property>
- <property name="contextPartitionConfigurations">
+ <property name="partitionConfigurations">
<set>
<ref bean="examplePartitionConfiguration"/>
</set>
</property>
- <property name="bootstrapSchemas">
- <set>
- <bean class="org.apache.directory.server.core.schema.bootstrap.AutofsSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.CorbaSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.CoreSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.CosineSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.ApacheSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.CollectiveSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.InetorgpersonSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.JavaSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.Krb5kdcSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.NisSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.SystemSchema"/>
- <bean class="org.apache.directory.server.core.schema.bootstrap.ApachednsSchema"/>
- </set>
- </property>
<property name="extendedOperationHandlers">
<list>
<bean class="org.apache.directory.server.ldap.support.extended.GracefulShutdownHandler"/>
<bean class="org.apache.directory.server.ldap.support.extended.LaunchDiagnosticUiHandler"/>
- <bean class="org.apache.directory.server.ldap.support.extended.StoredProcedureExtendedOperationHandler"/>
</list>
</property>
@@ -199,6 +182,23 @@
<bean class="org.apache.directory.server.core.trigger.TriggerService" />
</property>
</bean>
+
+ <!-- Uncomment to enable replication service
+ <bean class="org.apache.directory.server.core.configuration.MutableInterceptorConfiguration">
+ <property name="name"><value>replicationService</value></property>
+ <property name="interceptor">
+ <bean class="org.apache.directory.mitosis.service.ReplicationService">
+ <property name="configuration">
+ <bean class="org.apache.directory.mitosis.configuration.ReplicationConfiguration">
+ <property name="replicaId"><value>instance_a</value></property>
+ <property name="serverPort"><value>10390</value></property>
+ <property name="peerReplicas"><value>instance_b@localhost:10392</value></property>
+ </bean>
+ </property>
+ </bean>
+ </property>
+ </bean>
+ -->
</list>
</property>
</bean>