# NOTE: this file is autogenerated by Apache XBean

# beans
aciAuthorizationInterceptor = org.apache.directory.server.core.authz.AciAuthorizationInterceptor

apacheDS = org.apache.directory.server.configuration.ApacheDS
apacheDS.initMethod = startup
apacheDS.destroyMethod = shutdown

org.apache.directory.server.configuration.ApacheDS(org.apache.directory.server.core.DirectoryService,org.apache.directory.server.ldap.LdapService,org.apache.directory.server.ldap.LdapService).parameterNames = directoryService ldapService ldapsService

authenticationInterceptor = org.apache.directory.server.core.authn.AuthenticationInterceptor

certGenerationRequestHandler = org.apache.directory.server.ldap.handlers.extended.CertGenerationRequestHandler

changeLogInterceptor = org.apache.directory.server.core.changelog.ChangeLogInterceptor

changeLogStore = org.apache.directory.server.core.changelog.ChangeLogStore

changePasswordServer = org.apache.directory.server.changepw.ChangePasswordServer

collectiveAttributeInterceptor = org.apache.directory.server.core.collective.CollectiveAttributeInterceptor

cramMd5MechanismHandler = org.apache.directory.server.ldap.handlers.bind.cramMD5.CramMd5MechanismHandler

defaultAuthorizationInterceptor = org.apache.directory.server.core.authz.DefaultAuthorizationInterceptor

defaultDirectoryService = org.apache.directory.server.core.DefaultDirectoryService

digestMd5MechanismHandler = org.apache.directory.server.ldap.handlers.bind.digestMD5.DigestMd5MechanismHandler

dnsServer = org.apache.directory.server.dns.DnsServer

eventInterceptor = org.apache.directory.server.core.event.EventInterceptor

exceptionInterceptor = org.apache.directory.server.core.exception.ExceptionInterceptor

extendedOperationHandler = org.apache.directory.server.ldap.ExtendedOperationHandler

gracefulShutdownHandler = org.apache.directory.server.ldap.handlers.extended.GracefulShutdownHandler

gssapiMechanismHandler = org.apache.directory.server.ldap.handlers.bind.gssapi.GssapiMechanismHandler

jdbmIndex = org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmIndex
org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmIndex(java.lang.String).parameterNames = attributeId

jdbmPartition = org.apache.directory.server.core.partition.impl.btree.jdbm.JdbmPartition

kdcServer = org.apache.directory.server.kerberos.kdc.KdcServer

keyDerivationInterceptor = org.apache.directory.server.core.kerberos.KeyDerivationInterceptor

launchDiagnosticUiHandler = org.apache.directory.server.ldap.handlers.extended.LaunchDiagnosticUiHandler

ldapService = org.apache.directory.server.ldap.LdapService
ldapService.saslMechanismHandlers.map.keyName = mech-name
ldapService.saslMechanismHandlers.map.flat = true
ldapService.saslMechanismHandlers.map.dups = replace

memoryChangeLogStore = org.apache.directory.server.core.changelog.MemoryChangeLogStore

normalizationInterceptor = org.apache.directory.server.core.normalization.NormalizationInterceptor

ntlmMechanismHandler = org.apache.directory.server.ldap.handlers.bind.ntlm.NtlmMechanismHandler

ntpServer = org.apache.directory.server.ntp.NtpServer

operationalAttributeInterceptor = org.apache.directory.server.core.operational.OperationalAttributeInterceptor

passwordPolicyInterceptor = org.apache.directory.server.core.kerberos.PasswordPolicyInterceptor

plainMechanismHandler = org.apache.directory.server.ldap.handlers.bind.plain.PlainMechanismHandler

referralInterceptor = org.apache.directory.server.core.referral.ReferralInterceptor

replicationConfiguration = org.apache.directory.mitosis.configuration.ReplicationConfiguration

replicationInterceptor = org.apache.directory.mitosis.service.ReplicationInterceptor

schemaInterceptor = org.apache.directory.server.core.schema.SchemaInterceptor

simpleMechanismHandler = org.apache.directory.server.ldap.handlers.bind.SimpleMechanismHandler

standardThreadPool = org.apache.directory.server.protocol.shared.StandardThreadPool
standardThreadPool.destroyMethod = stop
org.apache.directory.server.protocol.shared.StandardThreadPool(int).parameterNames = maxThreads

startTlsHandler = org.apache.directory.server.ldap.handlers.extended.StartTlsHandler

storedProcedureExtendedOperationHandler = org.apache.directory.server.ldap.handlers.extended.StoredProcedureExtendedOperationHandler

subentryInterceptor = org.apache.directory.server.core.subtree.SubentryInterceptor

tcpTransport = org.apache.directory.server.protocol.shared.transport.TcpTransport
org.apache.directory.server.protocol.shared.transport.TcpTransport(int).parameterNames = tcpPort
org.apache.directory.server.protocol.shared.transport.TcpTransport(int,int).parameterNames = tcpPort nbThreads
org.apache.directory.server.protocol.shared.transport.TcpTransport(java.lang.String,int).parameterNames = address port
org.apache.directory.server.protocol.shared.transport.TcpTransport(int,int,int).parameterNames = tcpPort nbThreads backLog
org.apache.directory.server.protocol.shared.transport.TcpTransport(java.lang.String,int,int,int).parameterNames = address tcpPort nbThreads backLog

triggerInterceptor = org.apache.directory.server.core.trigger.TriggerInterceptor

udpTransport = org.apache.directory.server.protocol.shared.transport.UdpTransport
org.apache.directory.server.protocol.shared.transport.UdpTransport(int).parameterNames = udpPort
org.apache.directory.server.protocol.shared.transport.UdpTransport(java.lang.String,int).parameterNames = address udpPort

