mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

Jean-Noël Rouvignac
20.42.2016 61b9eb1be03fc03a9f4bb0013a08ff44a1059503
opendj-server-legacy: added @Override + Autorefactor'ed comments
305 files modified
9247 ■■■■ changed files
opendj-server-legacy/src/main/java/org/opends/server/api/Group.java 57 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/api/ProtocolElement.java 25 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/api/plugin/InternalDirectoryServerPlugin.java 12 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/authorization/dseecompat/IP.java 37 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/authorization/dseecompat/SSF.java 15 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/authorization/dseecompat/TimeOfDay.java 26 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/AccountUsableRequestControl.java 51 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/AccountUsableResponseControl.java 96 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/AuthorizationIdentityResponseControl.java 30 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/EntryChangeNotificationControl.java 52 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/EntryChangelogNotificationControl.java 31 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/LDAPAssertionRequestControl.java 52 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/LDAPPostReadRequestControl.java 13 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/LDAPPostReadResponseControl.java 20 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/LDAPPreReadRequestControl.java 13 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/LDAPPreReadResponseControl.java 22 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/MatchedValuesControl.java 28 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/PagedResultsControl.java 25 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/PasswordExpiredControl.java 25 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/PasswordExpiringControl.java 21 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/PasswordPolicyRequestControl.java 35 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/PasswordPolicyResponseControl.java 29 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/PersistentSearchControl.java 13 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/ProxiedAuthV1Control.java 9 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/ProxiedAuthV2Control.java 17 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/ServerSideSortRequestControl.java 17 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/ServerSideSortResponseControl.java 17 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/SubentriesControl.java 13 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/SubtreeDeleteControl.java 16 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/VLVRequestControl.java 21 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/controls/VLVResponseControl.java 14 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/AbandonOperationBasis.java 31 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/AbandonOperationWrapper.java 6 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/AccountStatusNotificationHandlerConfigManager.java 30 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/AddOperation.java 2 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/AddOperationWrapper.java 16 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/AlertHandlerConfigManager.java 26 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/AttributeSyntaxConfigManager.java 34 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/BindOperationBasis.java 38 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/BindOperationWrapper.java 23 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/BoundedWorkQueueStrategy.java 9 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/CertificateMapperConfigManager.java 20 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/ConnectionHandlerConfigManager.java 31 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/DefaultAccessControlHandler.java 52 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/DefaultCompressedSchema.java 17 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/DeleteOperation.java 2 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/DeleteOperationWrapper.java 6 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/DirectoryServerShutdownHook.java 3 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/EntryCacheConfigManager.java 17 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/ExtendedOperationBasis.java 53 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/ExtendedOperationConfigManager.java 16 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/ExtendedOperationWrapper.java 10 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/GroupManager.java 86 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/IdentityMapperConfigManager.java 30 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/IdleTimeLimitThread.java 27 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/KeyManagerProviderConfigManager.java 39 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/MatchingRuleConfigManager.java 29 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/ModifyDNOperation.java 11 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/ModifyDNOperationBasis.java 38 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/ModifyDNOperationWrapper.java 18 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/ModifyOperation.java 2 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/ModifyOperationWrapper.java 11 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/MonitorConfigManager.java 30 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/OperationWrapper.java 66 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/PasswordGeneratorConfigManager.java 20 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/PasswordPolicy.java 85 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/PasswordStorageSchemeConfigManager.java 30 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/PasswordValidatorConfigManager.java 32 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/PersistentSearch.java 26 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/PluginConfigManager.java 171 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/RootDNConfigManager.java 24 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/RootPrivilegeChangeListener.java 4 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/SASLConfigManager.java 33 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/SchemaConfigManager.java 28 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/SearchOperation.java 2 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/SearchOperationWrapper.java 47 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/SubentryPasswordPolicy.java 43 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/SynchronizationProviderConfigManager.java 18 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/TrustManagerProviderConfigManager.java 38 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/UnbindOperationBasis.java 12 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/VirtualAttributeConfigManager.java 17 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/core/WorkQueueConfigManager.java 13 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/AESPasswordStorageScheme.java 21 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/AttributeValuePasswordValidator.java 30 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/Base64PasswordStorageScheme.java 43 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/BlindTrustManagerProvider.java 26 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/BlowfishPasswordStorageScheme.java 45 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/CRAMMD5SASLMechanismHandler.java 53 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/CancelExtendedOperation.java 6 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/CertificateValidationPolicy.java 3 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/CharacterSetPasswordValidator.java 33 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/ClearPasswordStorageScheme.java 41 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/CollectiveAttributeSubentriesVirtualAttributeProvider.java 10 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/CryptPasswordStorageScheme.java 52 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/DefaultEntryCache.java 32 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/DictionaryPasswordValidator.java 28 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/DigestMD5SASLMechanismHandler.java 22 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/DiskSpaceMonitor.java 13 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/DynamicGroup.java 71 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/DynamicGroupMemberList.java 26 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/DynamicGroupSearchThread.java 17 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/EntryDNVirtualAttributeProvider.java 20 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/ErrorLogAccountStatusNotificationHandler.java 27 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/ExactMatchIdentityMapper.java 25 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/FIFOEntryCache.java 49 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/FileBasedKeyManagerProvider.java 1 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/FileBasedTrustManagerProvider.java 36 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/FilteredStaticGroupMemberList.java 10 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/FingerprintCertificateMapper.java 29 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/GSSAPISASLMechanismHandler.java 47 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/GetConnectionIDExtendedOperation.java 8 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/GoverningStructureRuleVirtualAttributeProvider.java 15 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/HasSubordinatesVirtualAttributeProvider.java 15 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/IsMemberOfVirtualAttributeProvider.java 22 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/JMXAlertHandler.java 61 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/LDAPPassThroughAuthenticationPolicyFactory.java 263 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/LengthBasedPasswordValidator.java 26 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/MD5PasswordStorageScheme.java 51 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/MemberVirtualAttributeProvider.java 46 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/NotificationMessageNotificationMessageTemplateElement.java 11 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/NotificationPropertyNotificationMessageTemplateElement.java 9 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/NotificationTypeNotificationMessageTemplateElement.java 11 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/NullKeyManagerProvider.java 17 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/NullTrustManagerProvider.java 15 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/NumSubordinatesVirtualAttributeProvider.java 13 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/PBKDF2PasswordStorageScheme.java 17 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/PKCS11KeyManagerProvider.java 64 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/PKCS5S2PasswordStorageScheme.java 16 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/ParallelWorkQueue.java 44 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/PasswordExpirationTimeVirtualAttributeProvider.java 19 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/PasswordPolicyStateExtendedOperation.java 60 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/PasswordPolicySubentryVirtualAttributeProvider.java 9 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/PlainSASLMechanismHandler.java 37 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/RC4PasswordStorageScheme.java 44 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/RandomPasswordGenerator.java 29 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/RedirectingByteChannel.java 35 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/RegularExpressionIdentityMapper.java 29 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/RepeatedCharactersPasswordValidator.java 26 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/SASLByteChannel.java 38 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/SHA1PasswordStorageScheme.java 49 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/SMTPAccountStatusNotificationHandler.java 41 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/SMTPAlertHandler.java 40 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/SaltedMD5PasswordStorageScheme.java 62 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/SaltedSHA1PasswordStorageScheme.java 64 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/SaltedSHA256PasswordStorageScheme.java 66 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/SaltedSHA384PasswordStorageScheme.java 67 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/SaltedSHA512PasswordStorageScheme.java 69 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/SimilarityBasedPasswordValidator.java 17 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/SimpleStaticGroupMemberList.java 10 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/SoftReferenceEntryCache.java 27 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/StartTLSExtendedOperation.java 6 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/StaticGroup.java 20 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/StructuralObjectClassVirtualAttributeProvider.java 15 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/SubjectDNToUserAttributeCertificateMapper.java 28 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/SubjectEqualsDNCertificateMapper.java 10 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/SubschemaSubentryVirtualAttributeProvider.java 14 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/TLSByteChannel.java 56 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/TextNotificationMessageTemplateElement.java 13 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/TraditionalWorkQueue.java 49 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/TripleDESPasswordStorageScheme.java 45 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/UniqueCharactersPasswordValidator.java 26 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/UserDNNotificationMessageTemplateElement.java 15 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/UserDefinedVirtualAttributeProvider.java 31 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/VirtualStaticGroup.java 62 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/extensions/WhoAmIExtendedOperation.java 5 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/AbstractTextAccessLogPublisher.java 50 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/AccessLogPublisher.java 1 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/AccessLogger.java 8 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/ActionType.java 40 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/AsynchronousTextWriter.java 16 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/ConsoleDebugLogPublisher.java 13 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/DebugLogPublisher.java 6 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/DebugLogger.java 11 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/DebugStackTraceFormatter.java 20 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/EncryptAction.java 11 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/ErrorLogPublisher.java 6 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/ErrorLogger.java 6 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/FileComparator.java 3 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/FileNumberRetentionPolicy.java 10 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/FixedTimeRotationPolicy.java 12 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/FreeDiskSpaceRetentionPolicy.java 5 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/GZIPAction.java 3 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/HTTPAccessLogPublisher.java 1 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/HTTPAccessLogger.java 8 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/JDKLogging.java 12 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/JDKLoggingFormater.java 3 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/LogFileFilter.java 7 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/MeteredStream.java 31 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/MultifileTextWriter.java 21 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/RotationActionThread.java 4 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/SizeBasedRetentionPolicy.java 5 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/SizeBasedRotationPolicy.java 11 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/TextWriter.java 46 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/ThreadFilterTextErrorLogPublisher.java 5 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/TimeLimitRotationPolicy.java 7 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/TimeStampNaming.java 15 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/ZIPAction.java 8 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/loggers/slf4j/OpenDJLoggerFactory.java 9 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/plugins/AttributeCleanupPlugin.java 45 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/plugins/ChangeNumberControlPlugin.java 26 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/plugins/LDAPADListPlugin.java 8 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/plugins/LastModPlugin.java 8 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/plugins/ReferentialIntegrityPlugin.java 52 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/plugins/SambaPasswordPlugin.java 38 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/plugins/UniqueAttributePlugin.java 20 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/plugins/profiler/ProfileStack.java 4 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/plugins/profiler/ProfilerThread.java 3 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/LDIFConnectionHandler.java 18 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/jmx/DirectoryRMIServerSocketFactory.java 15 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/jmx/OpendsJmxPrincipal.java 13 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/ASN1ByteChannelReader.java 37 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/AbandonRequestProtocolOp.java 7 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/BindRequestProtocolOp.java 7 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/CompareRequestProtocolOp.java 7 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/DeleteRequestProtocolOp.java 7 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/DeleteResponseProtocolOp.java 15 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/ExtendedRequestProtocolOp.java 7 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/IntermediateResponseProtocolOp.java 7 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPClientConnection.java 170 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPConnectionHandler.java 123 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPConstants.java 441 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPControl.java 21 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPMessage.java 5 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPModification.java 10 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPRequestHandler.java 4 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPResultCode.java 421 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPStatistics.java 94 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/ModifyDNRequestProtocolOp.java 7 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/ProtocolOp.java 3 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/SearchResultReferenceProtocolOp.java 7 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/UnbindRequestProtocolOp.java 7 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/replication/common/ServerStatus.java 3 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/replication/plugin/GenerationIdChecksum.java 10 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/replication/plugin/ReplLDIFOutputStream.java 6 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/replication/plugin/ReplicationRepairRequestControl.java 45 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/replication/protocol/NotSupportedOldVersionPDUException.java 5 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/replication/protocol/RoutableMsg.java 31 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tasks/EnterLockdownModeTask.java 24 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tasks/LeaveLockdownModeTask.java 23 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tasks/RestartTaskThread.java 3 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tasks/ShutdownTask.java 24 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tasks/ShutdownTaskThread.java 25 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/PromptTrustManager.java 46 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/dsreplication/PurgeHistoricalScheduleInformation.java 24 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/AttributeValueTag.java 71 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/FileTag.java 96 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/FirstNameTag.java 68 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/GUIDTag.java 84 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/IfAbsentTag.java 71 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/IfPresentTag.java 9 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/LastNameTag.java 15 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/ListTag.java 11 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/MakeLDIFInputStream.java 18 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/MakeLDIFInputStreamThread.java 3 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/ParentDNTag.java 8 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/PresenceTag.java 11 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/RDNTag.java 9 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/RandomTag.java 52 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/SequentialTag.java 12 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/StaticTextTag.java 11 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/tools/upgrade/FileManager.java 113 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/types/AcceptRejectWarn.java 30 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/types/AccountStatusNotificationProperty.java 87 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/types/AccountStatusNotificationType.java 111 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/types/AuthenticationType.java 29 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/types/BackupInfo.java 139 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/types/DisconnectReason.java 3 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/types/EntryEncodeConfig.java 30 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/types/ExistingFileBehavior.java 8 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/types/FilterType.java 81 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/types/IndexType.java 3 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/types/IntermediateResponse.java 3 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/types/LDIFImportResult.java 3 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/types/LockType.java 18 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/types/OperationType.java 81 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/types/SSLClientAuthPolicy.java 25 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/util/ChangeRecordEntry.java 15 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/util/DeleteChangeRecordEntry.java 2 ●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/util/ExpirationCheckTrustManager.java 5 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/util/ModifyDNChangeRecordEntry.java 5 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/util/MultiOutputStream.java 15 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/util/SizeLimitInputStream.java 22 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/TestTextWriter.java 16 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/api/AlertHandlerTestCase.java 77 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/api/AuthenticationPolicyTestCase.java 76 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/extensions/AESPasswordStorageSchemeTestCase.java 1 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/extensions/Base64PasswordStorageSchemeTestCase.java 12 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/extensions/BlowfishPasswordStorageSchemeTestCase.java 11 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/extensions/ClearPasswordStorageSchemeTestCase.java 1 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/extensions/MD5PasswordStorageSchemeTestCase.java 1 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/extensions/RC4PasswordStorageSchemeTestCase.java 1 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/extensions/SASLOverTLSTestCase.java 18 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/extensions/SHA1PasswordStorageSchemeTestCase.java 1 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/extensions/SaltedMD5PasswordStorageSchemeTestCase.java 7 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/extensions/TestAccountStatusNotificationHandler.java 19 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/extensions/TestAlertGenerator.java 32 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/extensions/TripleDESPasswordStorageSchemeTestCase.java 1 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/monitors/StackTraceMonitorTestCase.java 19 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/monitors/SystemInfoMonitorTestCase.java 19 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/monitors/TraditionalWorkQueueMonitorTestCase.java 19 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/monitors/VersionMonitorTestCase.java 19 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/protocols/internal/TestInternalSearchListener.java 26 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/protocols/jmx/PostConnectedDisconnectTest.java 17 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/replication/plugin/ExternalChangelogDomainFakeCfg.java 12 ●●●● patch | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/tasks/LdifFileWriter.java 28 ●●●●● patch | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/api/Group.java
@@ -16,23 +16,22 @@
 */
package org.opends.server.api;
import org.forgerock.i18n.LocalizableMessage;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.opendj.config.server.ConfigException;
import org.forgerock.opendj.ldap.DN;
import org.forgerock.opendj.ldap.SearchScope;
import org.forgerock.opendj.server.config.server.GroupImplementationCfg;
import org.opends.server.core.ServerContext;
import org.forgerock.opendj.config.server.ConfigException;
import org.opends.server.types.DirectoryException;
import org.forgerock.opendj.ldap.DN;
import org.opends.server.types.Entry;
import org.opends.server.types.InitializationException;
import org.opends.server.types.MemberList;
import org.opends.server.types.Modification;
import org.opends.server.types.SearchFilter;
import org.forgerock.opendj.ldap.SearchScope;
/**
 * This class defines the set of methods that must be implemented by a
@@ -82,8 +81,6 @@
  public abstract void initializeGroupImplementation(T configuration)
         throws ConfigException, InitializationException;
  /**
   * Indicates whether the provided configuration is acceptable for
   * this group implementation.  It should be possible to call this
@@ -115,8 +112,6 @@
    return true;
  }
  /**
   * Performs any necessary finalization that may be needed whenever
   * this group implementation is taken out of service within the
@@ -128,8 +123,6 @@
    // No implementation is required by default.
  }
  /**
   * Creates a new group of this type based on the definition
   * contained in the provided entry.  This method must be designed so
@@ -151,8 +144,6 @@
  public abstract Group<T> newInstance(ServerContext serverContext, Entry groupEntry)
         throws DirectoryException;
  /**
   * Retrieves a search filter that may be used to identify entries
   * containing definitions for groups of this type in the Directory
@@ -172,8 +163,6 @@
  public abstract SearchFilter getGroupDefinitionFilter()
         throws DirectoryException;
  /**
   * Indicates whether the provided entry contains a valid definition
   * for this type of group.
@@ -186,8 +175,6 @@
   */
  public abstract boolean isGroupDefinition(Entry entry);
  /**
   * Retrieves the DN of the entry that contains the definition for
   * this group.
@@ -197,8 +184,6 @@
   */
  public abstract DN getGroupDN();
  /**
   * Sets the DN of the entry that contains the definition for
   * this group.
@@ -208,8 +193,6 @@
   */
  public abstract void setGroupDN(DN groupDN);
  /**
   * Indicates whether this group supports nesting other groups, such
   * that the members of the nested groups will also be considered
@@ -220,8 +203,6 @@
   */
  public abstract boolean supportsNestedGroups();
  /**
   * Retrieves a list of the DNs of any nested groups whose members
   * should be considered members of this group.
@@ -231,8 +212,6 @@
   */
  public abstract List<DN> getNestedGroupDNs();
  /**
   * Attempts to add the provided group DN as a nested group within
   * this group.  The change should be committed to persistent storage
@@ -251,8 +230,6 @@
  public abstract void addNestedGroup(DN nestedGroupDN)
         throws UnsupportedOperationException, DirectoryException;
  /**
   * Attempts to remove the provided group as a nested group within
   * this group.  The change should be committed to persistent storage
@@ -271,8 +248,6 @@
  public abstract void removeNestedGroup(DN nestedGroupDN)
         throws UnsupportedOperationException, DirectoryException;
  /**
   * Indicates whether the user with the specified DN is a member of
   * this group.  Note that this is a point-in-time determination and
@@ -292,8 +267,6 @@
    return userDN != null && isMember(userDN, new HashSet<DN>());
  }
  /**
   * Indicates whether the user with the specified DN is a member of
   * this group.  Note that this is a point-in-time determination and
@@ -325,8 +298,6 @@
  public abstract boolean isMember(DN userDN, Set<DN> examinedGroups)
         throws DirectoryException;
  /**
   * Indicates whether the user described by the provided user entry
   * is a member of this group.  Note that this is a point-in-time
@@ -347,8 +318,6 @@
    return isMember(userEntry, new HashSet<DN>());
  }
  /**
   * Indicates whether the user described by the provided user entry
   * is a member of this group.  Note that this is a point-in-time
@@ -381,8 +350,6 @@
                                   Set<DN> examinedGroups)
         throws DirectoryException;
  /**
   * Retrieves an iterator that may be used to cursor through the
   * entries of the members contained in this group.  Note that this
@@ -402,8 +369,6 @@
    return getMembers(null, null, null);
  }
  /**
   * Retrieves an iterator that may be used to cursor through the
   * entries of the members contained in this group.  It may
@@ -435,8 +400,6 @@
                                        SearchFilter filter)
         throws DirectoryException;
  /**
   * Indicates whether it is possible to alter the member list for
   * this group (e.g., in order to add members to the group or remove
@@ -447,8 +410,6 @@
   */
  public abstract boolean mayAlterMemberList();
  /**
   * Attempt to make multiple changes to the group's member list.
   *
@@ -462,8 +423,6 @@
  public abstract void updateMembers(List<Modification> modifications)
         throws UnsupportedOperationException, DirectoryException;
  /**
   * Attempts to add the provided user as a member of this group.  The
   * change should be committed to persistent storage through an
@@ -483,8 +442,6 @@
  public abstract void addMember(Entry userEntry)
         throws UnsupportedOperationException, DirectoryException;
  /**
   * Attempts to remove the specified user as a member of this group.
   * The change should be committed to persistent storage through an
@@ -504,13 +461,12 @@
  public abstract void removeMember(DN userDN)
         throws UnsupportedOperationException, DirectoryException;
  /**
   * Retrieves a string representation of this group.
   *
   * @return  A string representation of this group.
   */
  @Override
  public String toString()
  {
    StringBuilder buffer = new StringBuilder();
@@ -518,8 +474,6 @@
    return buffer.toString();
  }
  /**
   * Appends a string representation of this group to the provided
   * buffer.
@@ -529,4 +483,3 @@
   */
  public abstract void toString(StringBuilder buffer);
}
opendj-server-legacy/src/main/java/org/opends/server/api/ProtocolElement.java
@@ -12,12 +12,10 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2006-2008 Sun Microsystems, Inc.
 * Portions Copyright 2015 ForgeRock AS.
 * Portions Copyright 2015-2016 ForgeRock AS.
 */
package org.opends.server.api;
/**
 * This interface defines a set of methods that must be implemented by
 * any class that forms the basis for a protocol element (e.g., an
@@ -25,31 +23,17 @@
 */
@org.opends.server.types.PublicAPI(
     stability=org.opends.server.types.StabilityLevel.VOLATILE,
     mayInstantiate=false,
     mayExtend=true,
     mayInvoke=true)
public interface ProtocolElement
{
  /**
   * Retrieves the name of the protocol associated with this protocol
   * element.
   * Retrieves the name of the protocol associated with this protocol element.
   *
   * @return  The name of the protocol associated with this protocol
   *          element.
   * @return  The name of the protocol associated with this protocol element.
   */
  String getProtocolElementName();
  /**
   * Retrieves a string representation of this protocol element.
   *
   * @return  A string representation of this protocol element.
   */
  String toString();
  /**
   * Appends a string representation of this protocol element to the
   * provided buffer.
@@ -59,8 +43,6 @@
   */
  void toString(StringBuilder buffer);
  /**
   * Appends a string representation of this protocol element to the
   * provided buffer.
@@ -72,4 +54,3 @@
   */
  void toString(StringBuilder buffer, int indent);
}
opendj-server-legacy/src/main/java/org/opends/server/api/plugin/InternalDirectoryServerPlugin.java
@@ -20,9 +20,9 @@
import java.util.Set;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.opendj.server.config.server.PluginCfg;
import org.forgerock.opendj.config.server.ConfigException;
import org.forgerock.opendj.ldap.DN;
import org.forgerock.opendj.server.config.server.PluginCfg;
import org.opends.server.core.DirectoryServer;
import org.opends.server.types.InitializationException;
@@ -33,7 +33,6 @@
public abstract class InternalDirectoryServerPlugin extends
    DirectoryServerPlugin<PluginCfg>
{
  /**
   * Creates a new internal directory server plugin using the provided
   * component name and plugin types.
@@ -56,9 +55,7 @@
        invokeForInternalOps);
  }
  /** {@inheritDoc} */
  @Override
  public final void initializePlugin(Set<PluginType> pluginTypes,
      PluginCfg configuration) throws ConfigException,
      InitializationException
@@ -66,14 +63,11 @@
    // Unused.
  }
  /** {@inheritDoc} */
  @Override
  public final boolean isConfigurationAcceptable(
      PluginCfg configuration, List<LocalizableMessage> unacceptableReasons)
  {
    // Unused.
    return true;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/authorization/dseecompat/IP.java
@@ -12,15 +12,17 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2008 Sun Microsystems, Inc.
 * Portions Copyright 2013-2015 ForgeRock AS.
 * Portions Copyright 2013-2016 ForgeRock AS.
 */
package org.opends.server.authorization.dseecompat;
import org.forgerock.i18n.LocalizableMessage;
import static org.opends.messages.AccessControlMessages.*;
import java.util.regex.Pattern;
import java.util.*;
import java.net.InetAddress;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.regex.Pattern;
/**
 * This class represents a single ACI's IP bind rule expression. It is possible
@@ -29,21 +31,16 @@
 * address for each IP address parsed from the bind rule.
 */
public class IP implements KeywordBindRule {
    /**
     * Regular expression used to do a quick check on the characters in a
     * bind rule address. These are all of the valid characters that may
     * appear in an bind rule address part.
     */
    private  static final String ipRegEx =
            "((?i)[\\.{1}[a-f]\\d:\\+{1}\\*/{1}\\t\\[{1}\\]{1}]+(?-i))";
    private  static final Pattern ipRegEx =
        Pattern.compile("((?i)[\\.{1}[a-f]\\d:\\+{1}\\*/{1}\\t\\[{1}\\]{1}]+(?-i))");
    /**
     * List of the pattern classes, one for each address decoded from the bind
     * rule.
     */
    /** List of the pattern classes, one for each address decoded from the bind rule. */
    private List<PatternIP> patternIPList;
    /** The type of the bind rule (!= or =). */
    private EnumBindRuleType type;
@@ -74,13 +71,10 @@
        String[] ipStrs=expr.split("\\,", -1);
        List<PatternIP> patternIPList= new LinkedList<>();
        for (String ipStr : ipStrs) {
            if (!Pattern.matches(ipRegEx, ipStr)) {
                LocalizableMessage message =
                    WARN_ACI_SYNTAX_INVALID_IP_EXPRESSION.get(expr);
                throw new AciException(message);
            if (!ipRegEx.matcher(ipStr).matches()) {
                throw new AciException(WARN_ACI_SYNTAX_INVALID_IP_EXPRESSION.get(expr));
            }
            PatternIP ipPattern = PatternIP.decode(ipStr);
            patternIPList.add(ipPattern);
            patternIPList.add(PatternIP.decode(ipStr));
        }
        return new IP(patternIPList, type);
    }
@@ -94,9 +88,9 @@
     *
     * @return An enumeration representing if the address matched.
     */
    @Override
    public EnumEvalResult evaluate(AciEvalContext evalCtx) {
        InetAddress remoteAddr=evalCtx.getRemoteAddress();
        return evaluate(remoteAddr);
        return evaluate(evalCtx.getRemoteAddress());
    }
    /**
@@ -117,7 +111,6 @@
        return matched.getRet(type, false);
    }
    /** {@inheritDoc} */
    @Override
    public String toString() {
        final StringBuilder sb = new StringBuilder();
@@ -125,10 +118,8 @@
        return sb.toString();
    }
    /** {@inheritDoc} */
    @Override
    public final void toString(StringBuilder buffer) {
        buffer.append(super.toString());
    }
}
opendj-server-legacy/src/main/java/org/opends/server/authorization/dseecompat/SSF.java
@@ -12,19 +12,16 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2008 Sun Microsystems, Inc.
 * Portions Copyright 2013-2015 ForgeRock AS.
 * Portions Copyright 2013-2016 ForgeRock AS.
 */
package org.opends.server.authorization.dseecompat;
import org.forgerock.i18n.LocalizableMessage;
import static org.opends.messages.AccessControlMessages.*;
/**
 * The class represents the ssf keyword in a bind rule.SSF stands for
 * security strength factor.
 */
public class SSF implements KeywordBindRule {
import org.forgerock.i18n.LocalizableMessage;
/** The class represents the ssf keyword in a bind rule.SSF stands for security strength factor. */
public class SSF implements KeywordBindRule {
    /** Enumeration representing the bind rule operation type. */
    private EnumBindRuleType type;
@@ -67,6 +64,7 @@
     * @return An evaluation result enumeration containing the result of the
     *         context evaluation.
     */
    @Override
    public EnumEvalResult evaluate(AciEvalContext evalCtx) {
        int currentSSF = evalCtx.getCurrentSSF();
        EnumEvalResult matched = getMatched(currentSSF);
@@ -108,7 +106,6 @@
      return EnumEvalResult.FALSE;
    }
    /** {@inheritDoc} */
    @Override
    public String toString()
    {
@@ -117,11 +114,9 @@
        return sb.toString();
    }
    /** {@inheritDoc} */
    @Override
    public final void toString(StringBuilder buffer)
    {
        buffer.append(super.toString());
    }
}
opendj-server-legacy/src/main/java/org/opends/server/authorization/dseecompat/TimeOfDay.java
@@ -12,24 +12,20 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2008 Sun Microsystems, Inc.
 * Portions Copyright 2013-2015 ForgeRock AS.
 * Portions Copyright 2013-2016 ForgeRock AS.
 */
package org.opends.server.authorization.dseecompat;
import org.forgerock.i18n.LocalizableMessage;
import static org.opends.messages.AccessControlMessages.*;
import org.opends.server.util.TimeThread;
import java.util.regex.Pattern;
/**
 * This class represents the timeofday keyword in a bind rule.
 */
public class TimeOfDay implements KeywordBindRule {
import org.forgerock.i18n.LocalizableMessage;
import org.opends.server.util.TimeThread;
    /**
     * Regular expression matching a valid timeofday rule value (0-2359).
     */
    private static final String timeofdayRegex = "[0-2]\\d[0-5]\\d";
/** This class represents the timeofday keyword in a bind rule. */
public class TimeOfDay implements KeywordBindRule {
    /** Regular expression matching a valid timeofday rule value (0-2359). */
    private static final Pattern timeofdayRegex = Pattern.compile("[0-2]\\d[0-5]\\d");
    /** Enumeration representing the bind rule operation type. */
    private EnumBindRuleType type;
@@ -57,7 +53,7 @@
    public static TimeOfDay decode(String expr,  EnumBindRuleType type)
    throws AciException  {
        int valueAsInt = 0;
        if (!Pattern.matches(timeofdayRegex, expr))
        if (!timeofdayRegex.matcher(expr).matches())
        {
            LocalizableMessage message = WARN_ACI_SYNTAX_INVALID_TIMEOFDAY.get(expr);
            throw new AciException(message);
@@ -85,6 +81,7 @@
     * @return  An enumeration result representing the result of the
     * evaluation.
     */
    @Override
    public EnumEvalResult evaluate(AciEvalContext evalCtx) {
        EnumEvalResult matched=EnumEvalResult.FALSE;
@@ -129,7 +126,6 @@
        return matched.getRet(type, false);
    }
    /** {@inheritDoc} */
    @Override
    public String toString()
    {
@@ -138,11 +134,9 @@
        return sb.toString();
    }
    /** {@inheritDoc} */
    @Override
    public final void toString(StringBuilder buffer)
    {
        buffer.append(super.toString());
    }
}
opendj-server-legacy/src/main/java/org/opends/server/controls/AccountUsableRequestControl.java
@@ -12,24 +12,21 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2006-2008 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.controls;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.opendj.io.ASN1Writer;
import org.forgerock.opendj.ldap.ByteString;
import org.opends.server.types.Control;
import org.opends.server.types.DirectoryException;
import org.forgerock.opendj.ldap.ResultCode;
import static org.opends.messages.ProtocolMessages.*;
import static org.opends.server.util.ServerConstants.*;
import java.io.IOException;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.opendj.io.ASN1Writer;
import org.forgerock.opendj.ldap.ByteString;
import org.forgerock.opendj.ldap.ResultCode;
import org.opends.server.types.Control;
import org.opends.server.types.DirectoryException;
/**
 * This class implements the Sun-defined account usable request control.  The
@@ -39,13 +36,11 @@
public class AccountUsableRequestControl
       extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<AccountUsableRequestControl>
  {
    /** {@inheritDoc} */
    @Override
    public AccountUsableRequestControl decode(boolean isCritical,
                                              ByteString value)
           throws DirectoryException
@@ -60,6 +55,7 @@
      return new AccountUsableRequestControl(isCritical);
    }
    @Override
    public String getOID()
    {
      return OID_ACCOUNT_USABLE_CONTROL;
@@ -67,16 +63,11 @@
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<AccountUsableRequestControl> DECODER =
    new Decoder();
  /**
   * Creates a new instance of the account usable request control with the
   * default settings.
   */
  /** Creates a new instance of the account usable request control with the default settings. */
  public AccountUsableRequestControl()
  {
    this(false);
@@ -93,28 +84,14 @@
  public AccountUsableRequestControl(boolean isCritical)
  {
    super(OID_ACCOUNT_USABLE_CONTROL, isCritical);
  }
  /**
   * Writes this control's value to an ASN.1 writer. The value (if any) must be
   * written as an ASN1OctetString.
   *
   * @param writer The ASN.1 output stream to write to.
   * @throws IOException If a problem occurs while writing to the stream.
   */
  @Override
  protected void writeValue(ASN1Writer writer) throws IOException {
    // No value element.
  }
  /**
   * Appends a string representation of this account usable request control to
   * the provided buffer.
   *
   * @param  buffer  The buffer to which the information should be appended.
   */
  @Override
  public void toString(StringBuilder buffer)
  {
    buffer.append("AccountUsableRequestControl()");
opendj-server-legacy/src/main/java/org/opends/server/controls/AccountUsableResponseControl.java
@@ -12,24 +12,25 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2006-2009 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.controls;
import org.forgerock.i18n.LocalizableMessage;
import java.io.IOException;
import org.forgerock.opendj.io.*;
import org.opends.server.types.*;
import org.forgerock.opendj.ldap.ResultCode;
import org.forgerock.opendj.ldap.ByteString;
import org.forgerock.i18n.slf4j.LocalizedLogger;
import static org.opends.messages.ProtocolMessages.*;
import static org.opends.server.util.ServerConstants.*;
import static org.opends.server.util.StaticUtils.*;
import java.io.IOException;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.i18n.slf4j.LocalizedLogger;
import org.forgerock.opendj.io.ASN1;
import org.forgerock.opendj.io.ASN1Reader;
import org.forgerock.opendj.io.ASN1Writer;
import org.forgerock.opendj.ldap.ByteString;
import org.forgerock.opendj.ldap.ResultCode;
import org.opends.server.types.Control;
import org.opends.server.types.DirectoryException;
/**
 * This class implements the account usable response control.  This is a
@@ -52,13 +53,11 @@
public class AccountUsableResponseControl
    extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<AccountUsableResponseControl>
  {
    /** {@inheritDoc} */
    @Override
    public AccountUsableResponseControl decode(boolean isCritical,
                                               ByteString value)
        throws DirectoryException
@@ -144,71 +143,41 @@
      }
    }
    @Override
    public String getOID()
    {
      return OID_ACCOUNT_USABLE_CONTROL;
    }
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  public static final ControlDecoder<AccountUsableResponseControl> DECODER =
    new Decoder();
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<AccountUsableResponseControl> DECODER = new Decoder();
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * The BER type to use for the seconds before expiration when the account is
   * available.
   */
  /** The BER type to use for the seconds before expiration when the account is available. */
  public static final byte TYPE_SECONDS_BEFORE_EXPIRATION = (byte) 0x80;
  /**
   * The BER type to use for the MORE_INFO sequence when the account is not
   * available.
   */
  /** The BER type to use for the MORE_INFO sequence when the account is not available. */
  public static final byte TYPE_MORE_INFO = (byte) 0xA1;
  /**
   * The BER type to use for the MORE_INFO element that indicates that the
   * account has been inactivated.
   */
  public static final byte TYPE_INACTIVE = (byte) 0x80;
  /**
   * The BER type to use for the MORE_INFO element that indicates that the
   * password has been administratively reset.
   */
  public static final byte TYPE_RESET = (byte) 0x81;
  /**
   * The BER type to use for the MORE_INFO element that indicates that the
   * user's password is expired.
   */
  public static final byte TYPE_EXPIRED = (byte) 0x82;
  /**
   * The BER type to use for the MORE_INFO element that provides the number of
   * remaining grace logins.
   */
  public static final byte TYPE_REMAINING_GRACE_LOGINS = (byte) 0x83;
  /**
   * The BER type to use for the MORE_INFO element that indicates that the
   * password has been administratively reset.
@@ -216,19 +185,14 @@
  public static final byte TYPE_SECONDS_BEFORE_UNLOCK = (byte) 0x84;
  /** Indicates whether the user's account is usable. */
  private boolean isUsable;
  /** Indicates whether the user's password is expired. */
  private boolean isExpired;
  /** Indicates whether the user's account is inactive. */
  private boolean isInactive;
  /** Indicates whether the user's account is currently locked. */
  private boolean isLocked;
  /**
   * Indicates whether the user's password has been reset and must be changed
   * before anything else can be done.
@@ -237,13 +201,8 @@
  /** The number of remaining grace logins, if available. */
  private int remainingGraceLogins;
  /**
   * The length of time in seconds before the user's password expires, if
   * available.
   */
  /** The length of time in seconds before the user's password expires, if available. */
  private int secondsBeforeExpiration;
  /** The length of time before the user's account is unlocked, if available. */
  private int secondsBeforeUnlock;
@@ -374,13 +333,7 @@
        isLocked, secondsBeforeUnlock);
  }
  /**
   * Writes this control's value to an ASN.1 writer. The value (if any) must be
   * written as an ASN1OctetString.
   *
   * @param writer The ASN.1 output stream to write to.
   * @throws IOException If a problem occurs while writing to the stream.
   */
  @Override
  public void writeValue(ASN1Writer writer) throws IOException {
    writer.writeStartSequence(ASN1.UNIVERSAL_OCTET_STRING_TYPE);
@@ -538,14 +491,7 @@
    return secondsBeforeUnlock;
  }
  /**
   * Appends a string representation of this password policy response control to
   * the provided buffer.
   *
   * @param  buffer  The buffer to which the information should be appended.
   */
  @Override
  public void toString(StringBuilder buffer)
  {
    buffer.append("AccountUsableResponseControl(isUsable=");
opendj-server-legacy/src/main/java/org/opends/server/controls/AuthorizationIdentityResponseControl.java
@@ -39,13 +39,11 @@
public class AuthorizationIdentityResponseControl
       extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<AuthorizationIdentityResponseControl>
  {
    /** {@inheritDoc} */
    @Override
    public AuthorizationIdentityResponseControl decode(boolean isCritical,
                                                       ByteString value)
        throws DirectoryException
@@ -69,6 +67,7 @@
      }
    }
    @Override
    public String getOID()
    {
      return OID_AUTHZID_RESPONSE;
@@ -76,9 +75,7 @@
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<AuthorizationIdentityResponseControl>
      DECODER = new Decoder();
@@ -166,15 +163,7 @@
    }
  }
  /**
   * Writes this control's value to an ASN.1 writer. The value (if any) must be
   * written as an ASN1OctetString.
   *
   * @param writer The ASN.1 output stream to write to.
   * @throws IOException If a problem occurs while writing to the stream.
   */
  @Override
  public void writeValue(ASN1Writer writer) throws IOException {
    writer.writeOctetString(authorizationID);
  }
@@ -193,14 +182,7 @@
    return authorizationID;
  }
  /**
   * Appends a string representation of this authorization identity response
   * control to the provided buffer.
   *
   * @param  buffer  The buffer to which the information should be appended.
   */
  @Override
  public void toString(StringBuilder buffer)
  {
    buffer.append("AuthorizationIdentityResponseControl(authzID=\"");
opendj-server-legacy/src/main/java/org/opends/server/controls/EntryChangeNotificationControl.java
@@ -15,22 +15,23 @@
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.controls;
import org.forgerock.i18n.LocalizableMessage;
import java.io.IOException;
import org.forgerock.opendj.io.*;
import org.opends.server.types.*;
import org.forgerock.opendj.ldap.DN;
import org.forgerock.opendj.ldap.ResultCode;
import org.forgerock.opendj.ldap.ByteString;
import org.forgerock.i18n.slf4j.LocalizedLogger;
import static org.opends.messages.ProtocolMessages.*;
import static org.opends.server.util.ServerConstants.*;
import static org.opends.server.util.StaticUtils.*;
import java.io.IOException;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.i18n.slf4j.LocalizedLogger;
import org.forgerock.opendj.io.ASN1;
import org.forgerock.opendj.io.ASN1Reader;
import org.forgerock.opendj.io.ASN1Writer;
import org.forgerock.opendj.ldap.ByteString;
import org.forgerock.opendj.ldap.DN;
import org.forgerock.opendj.ldap.ResultCode;
import org.opends.server.types.Control;
import org.opends.server.types.DirectoryException;
/**
 * This class implements the entry change notification control defined in
@@ -40,13 +41,11 @@
public class EntryChangeNotificationControl
       extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<EntryChangeNotificationControl>
  {
    /** {@inheritDoc} */
    @Override
    public EntryChangeNotificationControl decode(
        boolean isCritical, ByteString value) throws DirectoryException
    {
@@ -103,6 +102,7 @@
          previousDN, changeNumber);
    }
    @Override
    public String getOID()
    {
      return OID_ENTRY_CHANGE_NOTIFICATION;
@@ -110,9 +110,7 @@
  }
  /**
   * The ControlDecoder that can be used to decode this control.
   */
  /** The ControlDecoder that can be used to decode this control. */
  public static final ControlDecoder<EntryChangeNotificationControl> DECODER =
    new Decoder();
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
@@ -216,15 +214,7 @@
    this(false, changeType, previousDN, changeNumber);
  }
  /**
   * Writes this control value to an ASN.1 writer. The value (if any) must be
   * written as an ASN1OctetString.
   *
   * @param writer The ASN.1 output stream to write to.
   * @throws IOException If a problem occurs while writing to the stream.
   */
  @Override
  public void writeValue(ASN1Writer writer) throws IOException {
    writer.writeStartSequence(ASN1.UNIVERSAL_OCTET_STRING_TYPE);
@@ -282,14 +272,7 @@
    return changeNumber;
  }
  /**
   * Appends a string representation of this entry change notification control
   * to the provided buffer.
   *
   * @param  buffer  The buffer to which the information should be appended.
   */
  @Override
  public void toString(StringBuilder buffer)
  {
    buffer.append("EntryChangeNotificationControl(changeType=");
@@ -309,4 +292,3 @@
    buffer.append(")");
  }
}
opendj-server-legacy/src/main/java/org/opends/server/controls/EntryChangelogNotificationControl.java
@@ -12,9 +12,10 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2009 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.controls;
import static org.opends.messages.ProtocolMessages.ERR_ECLN_CANNOT_DECODE_VALUE;
import static org.opends.messages.ProtocolMessages.ERR_ECLN_NO_CONTROL_VALUE;
import static org.opends.server.util.ServerConstants.*;
@@ -32,8 +33,6 @@
import org.opends.server.types.DirectoryException;
import org.forgerock.opendj.ldap.ResultCode;
/**
 * This class implements the ECL cookie control.
 * It may be included in entries returned in response to a search or
@@ -47,13 +46,11 @@
  /** The cookie value - payload of this control. */
  private String cookie;
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
  implements ControlDecoder<EntryChangelogNotificationControl>
  {
    /** {@inheritDoc} */
    @Override
    public EntryChangelogNotificationControl decode(
        boolean isCritical, ByteString value)
    throws DirectoryException
@@ -83,6 +80,7 @@
      return new EntryChangelogNotificationControl(isCritical, cookie);
    }
    @Override
    public String getOID()
    {
      return OID_ECL_COOKIE_EXCHANGE_CONTROL;
@@ -90,9 +88,7 @@
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<EntryChangelogNotificationControl>
  DECODER = new Decoder();
@@ -112,13 +108,7 @@
    this.cookie = cookie;
  }
  /**
   * Writes this control's value to an ASN.1 writer. The value (if any)
   * must be written as an ASN1OctetString.
   *
   * @param writer The ASN.1 output stream to write to.
   * @throws IOException If a problem occurs while writing to the stream.
   */
  @Override
  public void writeValue(ASN1Writer writer) throws IOException {
    writer.writeStartSequence(ASN1.UNIVERSAL_OCTET_STRING_TYPE);
    writer.writeStartSequence();
@@ -139,12 +129,7 @@
    return cookie;
  }
  /**
   * Appends a string representation of this entry change notification control
   * to the provided buffer.
   *
   * @param  buffer  The buffer to which the information should be appended.
   */
  @Override
  public void toString(StringBuilder buffer)
  {
    buffer.append("EntryChangelogNotificationControl(cookie=");
opendj-server-legacy/src/main/java/org/opends/server/controls/LDAPAssertionRequestControl.java
@@ -12,22 +12,26 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2006-2008 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.controls;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.opendj.io.*;
import org.opends.server.protocols.ldap.LDAPFilter;
import org.opends.server.types.*;
import org.forgerock.opendj.ldap.ResultCode;
import org.forgerock.opendj.ldap.ByteString;
import static org.opends.messages.ProtocolMessages.*;
import static org.opends.server.util.ServerConstants.*;
import java.io.IOException;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.opendj.io.ASN1;
import org.forgerock.opendj.io.ASN1Reader;
import org.forgerock.opendj.io.ASN1Writer;
import org.forgerock.opendj.ldap.ByteString;
import org.forgerock.opendj.ldap.ResultCode;
import org.opends.server.protocols.ldap.LDAPFilter;
import org.opends.server.types.Control;
import org.opends.server.types.DirectoryException;
import org.opends.server.types.LDAPException;
import org.opends.server.types.SearchFilter;
/**
 * This class implements the LDAP assertion request control as defined in RFC
@@ -39,13 +43,11 @@
public class LDAPAssertionRequestControl
    extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<LDAPAssertionRequestControl>
  {
    /** {@inheritDoc} */
    @Override
    public LDAPAssertionRequestControl decode(boolean isCritical,
                                              ByteString value)
        throws DirectoryException
@@ -71,6 +73,7 @@
      return new LDAPAssertionRequestControl(isCritical, filter);
    }
    @Override
    public String getOID()
    {
      return OID_LDAP_ASSERTION;
@@ -78,9 +81,7 @@
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<LDAPAssertionRequestControl> DECODER =
    new Decoder();
@@ -113,15 +114,6 @@
    filter = null;
  }
  /**
   * Writes this control's value to an ASN.1 writer. The value (if any) must be
   * written as an ASN1OctetString.
   *
   * @param writer The ASN.1 output stream to write to.
   * @throws IOException If a problem occurs while writing to the stream.
   */
  @Override
  public void writeValue(ASN1Writer writer) throws IOException {
    writer.writeStartSequence(ASN1.UNIVERSAL_OCTET_STRING_TYPE);
@@ -157,18 +149,9 @@
    {
      filter = rawFilter.toSearchFilter();
    }
    return filter;
  }
  /**
   * Appends a string representation of this LDAP assertion request control to
   * the provided buffer.
   *
   * @param  buffer  The buffer to which the information should be appended.
   */
  @Override
  public void toString(StringBuilder buffer)
  {
@@ -179,4 +162,3 @@
    buffer.append("\")");
  }
}
opendj-server-legacy/src/main/java/org/opends/server/controls/LDAPPostReadRequestControl.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2006-2008 Sun Microsystems, Inc.
 * Portions Copyright 2013-2015 ForgeRock AS.
 * Portions Copyright 2013-2016 ForgeRock AS.
 */
package org.opends.server.controls;
@@ -46,13 +46,11 @@
 */
public class LDAPPostReadRequestControl extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder implements
      ControlDecoder<LDAPPostReadRequestControl>
  {
    /** {@inheritDoc} */
    @Override
    public LDAPPostReadRequestControl decode(boolean isCritical,
        ByteString value) throws DirectoryException
    {
@@ -87,6 +85,7 @@
    @Override
    public String getOID()
    {
      return OID_LDAP_READENTRY_POSTREAD;
@@ -96,9 +95,7 @@
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<LDAPPostReadRequestControl> DECODER =
      new Decoder();
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
opendj-server-legacy/src/main/java/org/opends/server/controls/LDAPPostReadResponseControl.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2006-2008 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.controls;
import org.forgerock.i18n.LocalizableMessage;
@@ -39,13 +39,11 @@
public class LDAPPostReadResponseControl
    extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<LDAPPostReadResponseControl>
  {
    /** {@inheritDoc} */
    @Override
    public LDAPPostReadResponseControl decode(boolean isCritical,
                                              ByteString value)
        throws DirectoryException
@@ -78,6 +76,7 @@
      return new LDAPPostReadResponseControl(isCritical, searchEntry);
    }
    @Override
    public String getOID()
    {
      return OID_LDAP_READENTRY_POSTREAD;
@@ -85,9 +84,7 @@
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<LDAPPostReadResponseControl> DECODER =
    new Decoder();
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
@@ -132,13 +129,6 @@
    this.searchEntry = searchEntry;
  }
  /**
   * Writes this control's value to an ASN.1 writer. The value (if any) must be
   * written as an ASN1OctetString.
   *
   * @param writer The ASN.1 output stream to write to.
   * @throws IOException If a problem occurs while writing to the stream.
   */
  @Override
  public void writeValue(ASN1Writer writer) throws IOException {
    writer.writeStartSequence(ASN1.UNIVERSAL_OCTET_STRING_TYPE);
opendj-server-legacy/src/main/java/org/opends/server/controls/LDAPPreReadRequestControl.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2006-2008 Sun Microsystems, Inc.
 * Portions Copyright 2013-2015 ForgeRock AS.
 * Portions Copyright 2013-2016 ForgeRock AS.
 */
package org.opends.server.controls;
@@ -46,13 +46,11 @@
 */
public class LDAPPreReadRequestControl extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder implements
      ControlDecoder<LDAPPreReadRequestControl>
  {
    /** {@inheritDoc} */
    @Override
    public LDAPPreReadRequestControl decode(boolean isCritical,
        ByteString value) throws DirectoryException
    {
@@ -87,6 +85,7 @@
    @Override
    public String getOID()
    {
      return OID_LDAP_READENTRY_PREREAD;
@@ -96,9 +95,7 @@
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<LDAPPreReadRequestControl> DECODER =
      new Decoder();
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
opendj-server-legacy/src/main/java/org/opends/server/controls/LDAPPreReadResponseControl.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2006-2008 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.controls;
import org.forgerock.i18n.LocalizableMessage;
@@ -39,13 +39,11 @@
public class LDAPPreReadResponseControl
       extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<LDAPPreReadResponseControl>
  {
    /** {@inheritDoc} */
    @Override
    public LDAPPreReadResponseControl decode(boolean isCritical,
                                             ByteString value)
        throws DirectoryException
@@ -78,6 +76,7 @@
      return new LDAPPreReadResponseControl(isCritical, searchEntry);
    }
    @Override
    public String getOID()
    {
      return OID_LDAP_READENTRY_PREREAD;
@@ -85,9 +84,7 @@
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<LDAPPreReadResponseControl> DECODER =
    new Decoder();
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
@@ -132,15 +129,6 @@
    this.searchEntry = searchEntry;
  }
  /**
   * Writes this control's value to an ASN.1 writer. The value (if any) must be
   * written as an ASN1OctetString.
   *
   * @param writer The ASN.1 output stream to write to.
   * @throws IOException If a problem occurs while writing to the stream.
   */
  @Override
  public void writeValue(ASN1Writer writer) throws IOException {
    writer.writeStartSequence(ASN1.UNIVERSAL_OCTET_STRING_TYPE);
opendj-server-legacy/src/main/java/org/opends/server/controls/MatchedValuesControl.java
@@ -44,13 +44,11 @@
public class MatchedValuesControl
       extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<MatchedValuesControl>
  {
    /** {@inheritDoc} */
    @Override
    public MatchedValuesControl decode(boolean isCritical, ByteString value)
        throws DirectoryException
    {
@@ -95,6 +93,7 @@
    }
    @Override
    public String getOID()
    {
      return OID_MATCHED_VALUES;
@@ -102,9 +101,7 @@
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<MatchedValuesControl> DECODER =
    new Decoder();
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
@@ -135,15 +132,6 @@
    this.filters = filters;
  }
  /**
   * Writes this control's value to an ASN.1 writer. The value (if any) must be
   * written as an ASN1OctetString.
   *
   * @param writer The ASN.1 output stream to write to.
   * @throws IOException If a problem occurs while writing to the stream.
   */
  @Override
  public void writeValue(ASN1Writer writer) throws IOException {
    writer.writeStartSequence(ASN1.UNIVERSAL_OCTET_STRING_TYPE);
@@ -202,14 +190,6 @@
    return false;
  }
  /**
   * Appends a string representation of this authorization identity response
   * control to the provided buffer.
   *
   * @param  buffer  The buffer to which the information should be appended.
   */
  @Override
  public void toString(StringBuilder buffer)
  {
opendj-server-legacy/src/main/java/org/opends/server/controls/PagedResultsControl.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2006-2008 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.controls;
@@ -46,13 +46,11 @@
 */
public class PagedResultsControl extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<PagedResultsControl>
  {
    /** {@inheritDoc} */
    @Override
    public PagedResultsControl decode(boolean isCritical, ByteString value)
        throws DirectoryException
    {
@@ -116,6 +114,7 @@
      return new PagedResultsControl(isCritical, size, cookie);
    }
    @Override
    public String getOID()
    {
      return OID_PAGED_RESULTS_CONTROL;
@@ -123,9 +122,7 @@
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final  ControlDecoder<PagedResultsControl> DECODER =
    new Decoder();
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
@@ -139,9 +136,7 @@
  private int size;
  /**
   * The control value cookie element.
   */
  /** The control value cookie element. */
  private ByteString cookie;
@@ -170,14 +165,6 @@
    }
  }
  /**
   * Writes this control's value to an ASN.1 writer. The value (if any) must be
   * written as an ASN1OctetString.
   *
   * @param writer The ASN.1 output stream to write to.
   * @throws IOException If a problem occurs while writing to the stream.
   */
  @Override
  public void writeValue(ASN1Writer writer) throws IOException {
    writer.writeStartSequence(ASN1.UNIVERSAL_OCTET_STRING_TYPE);
opendj-server-legacy/src/main/java/org/opends/server/controls/PasswordExpiredControl.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2006-2008 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.controls;
import org.forgerock.i18n.LocalizableMessage;
@@ -39,13 +39,11 @@
public class PasswordExpiredControl
       extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<PasswordExpiredControl>
  {
    /** {@inheritDoc} */
    @Override
    public PasswordExpiredControl decode(boolean isCritical, ByteString value)
        throws DirectoryException
    {
@@ -65,6 +63,7 @@
      return new PasswordExpiredControl(isCritical);
    }
    @Override
    public String getOID()
    {
      return OID_NS_PASSWORD_EXPIRED;
@@ -72,16 +71,11 @@
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<PasswordExpiredControl> DECODER =
    new Decoder();
  /**
   * Creates a new instance of the password expired control with the default
   * settings.
   */
  /** Creates a new instance of the password expired control with the default settings. */
  public PasswordExpiredControl()
  {
    this(false);
@@ -99,13 +93,6 @@
    super(OID_NS_PASSWORD_EXPIRED, isCritical);
  }
  /**
   * Writes this control's value to an ASN.1 writer. The value (if any) must be
   * written as an ASN1OctetString.
   *
   * @param writer The ASN.1 output stream to write to.
   * @throws IOException If a problem occurs while writing to the stream.
   */
  @Override
  public void writeValue(ASN1Writer writer) throws IOException {
    writer.writeOctetString("0");
opendj-server-legacy/src/main/java/org/opends/server/controls/PasswordExpiringControl.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2006-2008 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.controls;
import org.forgerock.i18n.LocalizableMessage;
@@ -40,13 +40,11 @@
public class PasswordExpiringControl
       extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<PasswordExpiringControl>
  {
    /** {@inheritDoc} */
    @Override
    public PasswordExpiringControl decode(boolean isCritical, ByteString value)
        throws DirectoryException
    {
@@ -76,6 +74,7 @@
          secondsUntilExpiration);
    }
    @Override
    public String getOID()
    {
      return OID_NS_PASSWORD_EXPIRING;
@@ -83,9 +82,7 @@
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<PasswordExpiringControl> DECODER =
    new Decoder();
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
@@ -130,14 +127,6 @@
    this.secondsUntilExpiration = secondsUntilExpiration;
  }
  /**
   * Writes this control's value to an ASN.1 writer. The value (if any) must be
   * written as an ASN1OctetString.
   *
   * @param writer The ASN.1 output stream to write to.
   * @throws IOException If a problem occurs while writing to the stream.
   */
  @Override
  public void writeValue(ASN1Writer writer) throws IOException {
    writer.writeOctetString(String.valueOf(secondsUntilExpiration));
opendj-server-legacy/src/main/java/org/opends/server/controls/PasswordPolicyRequestControl.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2006-2008 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.controls;
import org.forgerock.i18n.LocalizableMessage;
@@ -38,13 +38,11 @@
public class PasswordPolicyRequestControl
       extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<PasswordPolicyRequestControl>
  {
    /** {@inheritDoc} */
    @Override
    public PasswordPolicyRequestControl decode(boolean isCritical,
                                               ByteString value)
        throws DirectoryException
@@ -59,6 +57,7 @@
      return new PasswordPolicyRequestControl(isCritical);
    }
    @Override
    public String getOID()
    {
      return OID_PASSWORD_POLICY_CONTROL;
@@ -66,17 +65,12 @@
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<PasswordPolicyRequestControl> DECODER =
    new Decoder();
  /**
   * Creates a new instance of the password policy request control with the
   * default settings.
   */
  /** Creates a new instance of the password policy request control with the default settings. */
  public PasswordPolicyRequestControl()
  {
    this(false);
@@ -98,28 +92,11 @@
  }
  /**
   * Writes this control's value to an ASN.1 writer. The value (if any) must be
   * written as an ASN1OctetString.
   *
   * @param writer The ASN.1 output stream to write to.
   * @throws IOException If a problem occurs while writing to the stream.
   */
  @Override
  public void writeValue(ASN1Writer writer) throws IOException {
    // No value element.
  }
  /**
   * Appends a string representation of this password policy request control to
   * the provided buffer.
   *
   * @param  buffer  The buffer to which the information should be appended.
   */
  @Override
  public void toString(StringBuilder buffer)
  {
opendj-server-legacy/src/main/java/org/opends/server/controls/PasswordPolicyResponseControl.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2006-2009 Sun Microsystems, Inc.
 * Portions Copyright 2011-2015 ForgeRock AS.
 * Portions Copyright 2011-2016 ForgeRock AS.
 */
package org.opends.server.controls;
import org.forgerock.i18n.LocalizableMessage;
@@ -40,13 +40,11 @@
public class PasswordPolicyResponseControl
       extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<PasswordPolicyResponseControl>
  {
    /** {@inheritDoc} */
    @Override
    public PasswordPolicyResponseControl decode(boolean isCritical,
                                                ByteString value)
        throws DirectoryException
@@ -120,6 +118,7 @@
    }
    @Override
    public String getOID()
    {
      return OID_ACCOUNT_USABLE_CONTROL;
@@ -127,9 +126,7 @@
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<PasswordPolicyResponseControl> DECODER =
    new Decoder();
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
@@ -137,16 +134,12 @@
  /**
   * The BER type value for the warning element of the control value.
   */
  /** The BER type value for the warning element of the control value. */
  public static final byte TYPE_WARNING_ELEMENT = (byte) 0xA0;
  /**
   * The BER type value for the error element of the control value.
   */
  /** The BER type value for the error element of the control value. */
  public static final byte TYPE_ERROR_ELEMENT = (byte) 0x81;
@@ -292,14 +285,6 @@
    return errorType;
  }
  /**
   * Appends a string representation of this password policy response control to
   * the provided buffer.
   *
   * @param  buffer  The buffer to which the information should be appended.
   */
  @Override
  public void toString(StringBuilder buffer)
  {
opendj-server-legacy/src/main/java/org/opends/server/controls/PersistentSearchControl.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2006-2008 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.controls;
import org.forgerock.i18n.LocalizableMessage;
@@ -40,13 +40,11 @@
public class PersistentSearchControl
       extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<PersistentSearchControl>
  {
    /** {@inheritDoc} */
    @Override
    public PersistentSearchControl decode(boolean isCritical, ByteString value)
        throws DirectoryException
    {
@@ -90,6 +88,7 @@
          changeTypes, changesOnly, returnECs);
    }
    @Override
    public String getOID()
    {
      return OID_PERSISTENT_SEARCH;
@@ -97,9 +96,7 @@
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<PersistentSearchControl> DECODER =
    new Decoder();
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
opendj-server-legacy/src/main/java/org/opends/server/controls/ProxiedAuthV1Control.java
@@ -45,13 +45,10 @@
public class ProxiedAuthV1Control
       extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<ProxiedAuthV1Control>
  {
    /** {@inheritDoc} */
    @Override
    public ProxiedAuthV1Control decode(boolean isCritical, ByteString value)
        throws DirectoryException
@@ -96,9 +93,7 @@
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<ProxiedAuthV1Control> DECODER =
    new Decoder();
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
opendj-server-legacy/src/main/java/org/opends/server/controls/ProxiedAuthV2Control.java
@@ -46,13 +46,10 @@
public class ProxiedAuthV2Control
       extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<ProxiedAuthV2Control>
  {
    /** {@inheritDoc} */
    @Override
    public ProxiedAuthV2Control decode(boolean isCritical, ByteString value)
        throws DirectoryException
@@ -105,9 +102,7 @@
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<ProxiedAuthV2Control> DECODER =
    new Decoder();
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
@@ -317,14 +312,6 @@
    }
  }
  /**
   * Appends a string representation of this proxied authorization v2 control
   * to the provided buffer.
   *
   * @param  buffer  The buffer to which the information should be appended.
   */
  @Override
  public void toString(StringBuilder buffer)
  {
opendj-server-legacy/src/main/java/org/opends/server/controls/ServerSideSortRequestControl.java
@@ -58,26 +58,19 @@
public class ServerSideSortRequestControl
    extends Control
{
  /**
   * The BER type to use when encoding the orderingRule element.
   */
  /** The BER type to use when encoding the orderingRule element. */
  private static final byte TYPE_ORDERING_RULE_ID = (byte) 0x80;
  /**
   * The BER type to use when encoding the reverseOrder element.
   */
  /** The BER type to use when encoding the reverseOrder element. */
  private static final byte TYPE_REVERSE_ORDER = (byte) 0x81;
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<ServerSideSortRequestControl>
  {
    /** {@inheritDoc} */
    @Override
    public ServerSideSortRequestControl decode(boolean isCritical,
                                               ByteString value)
@@ -171,9 +164,7 @@
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<ServerSideSortRequestControl> DECODER =
      new Decoder();
opendj-server-legacy/src/main/java/org/opends/server/controls/ServerSideSortResponseControl.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2008-2009 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.controls;
import org.forgerock.i18n.LocalizableMessage;
@@ -65,13 +65,11 @@
public class ServerSideSortResponseControl
       extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<ServerSideSortResponseControl>
  {
    /** {@inheritDoc} */
    @Override
    public ServerSideSortResponseControl decode(boolean isCritical,
                                                ByteString value)
        throws DirectoryException
@@ -107,6 +105,7 @@
      }
    }
    @Override
    public String getOID()
    {
      return OID_SERVER_SIDE_SORT_RESPONSE_CONTROL;
@@ -114,15 +113,11 @@
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<ServerSideSortResponseControl> DECODER =
    new Decoder();
  /**
   * The BER type to use when encoding the attribute type element.
   */
  /** The BER type to use when encoding the attribute type element. */
  private static final byte TYPE_ATTRIBUTE_TYPE = (byte) 0x80;
opendj-server-legacy/src/main/java/org/opends/server/controls/SubentriesControl.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2009 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.controls;
import org.forgerock.i18n.LocalizableMessage;
@@ -36,13 +36,11 @@
public class SubentriesControl
       extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<SubentriesControl>
  {
    /** {@inheritDoc} */
    @Override
    public SubentriesControl decode(boolean isCritical, ByteString value)
        throws DirectoryException
    {
@@ -70,6 +68,7 @@
      return new SubentriesControl(isCritical, visibility);
    }
    @Override
    public String getOID()
    {
      return OID_LDAP_SUBENTRIES;
@@ -77,9 +76,7 @@
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<SubentriesControl> DECODER =
    new Decoder();
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
opendj-server-legacy/src/main/java/org/opends/server/controls/SubtreeDeleteControl.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2009 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.controls;
@@ -39,14 +39,11 @@
 */
public class SubtreeDeleteControl extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a
   * ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder implements
      ControlDecoder<SubtreeDeleteControl>
  {
    /** {@inheritDoc} */
    @Override
    public SubtreeDeleteControl decode(boolean isCritical,
        ByteString value) throws DirectoryException
    {
@@ -62,6 +59,7 @@
    @Override
    public String getOID()
    {
      return OID_SUBTREE_DELETE_CONTROL;
@@ -71,9 +69,7 @@
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<SubtreeDeleteControl> DECODER =
      new Decoder();
@@ -93,7 +89,6 @@
  /** {@inheritDoc} */
  @Override
  protected void writeValue(ASN1Writer writer) throws IOException
  {
@@ -102,7 +97,6 @@
  /** {@inheritDoc} */
  @Override
  public void toString(StringBuilder buffer)
  {
opendj-server-legacy/src/main/java/org/opends/server/controls/VLVRequestControl.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2008 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.controls;
import org.forgerock.i18n.LocalizableMessage;
@@ -52,13 +52,11 @@
public class VLVRequestControl
       extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<VLVRequestControl>
  {
    /** {@inheritDoc} */
    @Override
    public VLVRequestControl decode(boolean isCritical, ByteString value)
        throws DirectoryException
    {
@@ -126,6 +124,7 @@
      }
    }
    @Override
    public String getOID()
    {
      return OID_VLV_REQUEST_CONTROL;
@@ -133,22 +132,16 @@
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<VLVRequestControl> DECODER =
    new Decoder();
  /**
   * The BER type to use when encoding the byOffset target element.
   */
  /** The BER type to use when encoding the byOffset target element. */
  public static final byte TYPE_TARGET_BYOFFSET = (byte) 0xA0;
  /**
   * The BER type to use when encoding the greaterThanOrEqual target element.
   */
  /** The BER type to use when encoding the greaterThanOrEqual target element. */
  public static final byte TYPE_TARGET_GREATERTHANOREQUAL = (byte) 0x81;
opendj-server-legacy/src/main/java/org/opends/server/controls/VLVResponseControl.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2008-2009 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.controls;
import org.forgerock.i18n.LocalizableMessage;
@@ -58,13 +58,11 @@
public class VLVResponseControl
       extends Control
{
  /**
   * ControlDecoder implementation to decode this control from a ByteString.
   */
  /** ControlDecoder implementation to decode this control from a ByteString. */
  private static final class Decoder
      implements ControlDecoder<VLVResponseControl>
  {
    /** {@inheritDoc} */
    @Override
    public VLVResponseControl decode(boolean isCritical, ByteString value)
        throws DirectoryException
    {
@@ -100,16 +98,14 @@
      }
    }
    /** {@inheritDoc} */
    @Override
    public String getOID()
    {
      return OID_VLV_RESPONSE_CONTROL;
    }
  }
  /**
   * The Control Decoder that can be used to decode this control.
   */
  /** The Control Decoder that can be used to decode this control. */
  public static final ControlDecoder<VLVResponseControl> DECODER =
    new Decoder();
opendj-server-legacy/src/main/java/org/opends/server/core/AbandonOperationBasis.java
@@ -39,11 +39,9 @@
               PreParseAbandonOperation,
               PostOperationAbandonOperation
{
  /** The message ID of the operation that should be abandoned. */
  private final int idToAbandon;
  /**
   * Creates a new abandon operation with the provided information.
   *
@@ -65,14 +63,11 @@
  {
    super(clientConnection, operationID, messageID, requestControls);
    this.idToAbandon = idToAbandon;
    this.cancelResult = new CancelResult(ResultCode.CANNOT_CANCEL,
        ERR_CANNOT_CANCEL_ABANDON.get());
  }
  /**
   * Retrieves the message ID of the operation that should be abandoned.
   *
@@ -84,26 +79,17 @@
    return idToAbandon;
  }
  /** {@inheritDoc} */
  @Override
  public DN getProxiedAuthorizationDN()
  {
    return null;
  }
  /** {@inheritDoc} */
  @Override
  public void setProxiedAuthorizationDN(DN proxiedAuthorizationDN)
  {
  }
  /** {@inheritDoc} */
  @Override
  public final OperationType getOperationType()
  {
@@ -113,9 +99,6 @@
    return OperationType.ABANDON;
  }
  /** {@inheritDoc} */
  @Override
  public final List<Control> getResponseControls()
  {
@@ -124,26 +107,18 @@
    return NO_RESPONSE_CONTROLS;
  }
  /** {@inheritDoc} */
  @Override
  public final void addResponseControl(Control control)
  {
    // An abandon operation can never have a response, so just ignore this.
  }
  /** {@inheritDoc} */
  @Override
  public final void removeResponseControl(Control control)
  {
    // An abandon operation can never have a response, so just ignore this.
  }
  /**
   * Performs the work of actually processing this operation.  This
   * should include all processing for the operation, including
@@ -174,7 +149,6 @@
      // code to reflect whether the abandon was successful and an error message
      // if it was not.  Even though there is no response, the result should
      // still be logged.
      //
      // Even though it is technically illegal to send a response for
      // operations that have been abandoned, it may be a good idea to do so
      // to ensure that the requestor isn't left hanging.  This will be a
@@ -198,18 +172,13 @@
      }
    }
    // Stop the processing timer.
    setProcessingStopTime();
    // Log the result of the abandon operation.
    logAbandonResult(this);
  }
  /** {@inheritDoc} */
  @Override
  public final void toString(StringBuilder buffer)
  {
opendj-server-legacy/src/main/java/org/opends/server/core/AbandonOperationWrapper.java
@@ -11,11 +11,10 @@
 * Header, with the fields enclosed by brackets [] replaced by your own identifying
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2013 ForgeRock AS.
 * Copyright 2013-2016 ForgeRock AS.
 */
package org.opends.server.core;
/**
 * This abstract class wraps/decorates a given abandon operation. This class
 * will be extended by sub-classes to enhance the functionality of the
@@ -24,7 +23,6 @@
public abstract class AbandonOperationWrapper extends
    OperationWrapper<AbandonOperation> implements AbandonOperation
{
  /**
   * Creates a new abandon operation wrapper based on the provided abandon
   * operation.
@@ -37,11 +35,9 @@
    super(abandon);
  }
  /** {@inheritDoc} */
  @Override
  public int getIDToAbandon()
  {
    return getOperation().getIDToAbandon();
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/AccountStatusNotificationHandlerConfigManager.java
@@ -51,11 +51,7 @@
          ConfigurationAddListener    <AccountStatusNotificationHandlerCfg>,
          ConfigurationDeleteListener <AccountStatusNotificationHandlerCfg>
{
  /**
   * A mapping between the DNs of the config entries and the associated
   * notification handlers.
   */
  /** A mapping between the DNs of the config entries and the associated notification handlers. */
  private final ConcurrentHashMap<DN,AccountStatusNotificationHandler> notificationHandlers;
  private final ServerContext serverContext;
@@ -72,8 +68,6 @@
    notificationHandlers = new ConcurrentHashMap<>();
  }
  /**
   * Initializes all account status notification handlers currently defined in
   * the Directory Server configuration.  This should only be called at
@@ -118,9 +112,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
      AccountStatusNotificationHandlerCfg configuration,
@@ -150,9 +141,6 @@
    return status;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
      AccountStatusNotificationHandlerCfg configuration
@@ -208,9 +196,6 @@
    return changeResult;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(
      AccountStatusNotificationHandlerCfg configuration,
@@ -249,9 +234,6 @@
    return status;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(
      AccountStatusNotificationHandlerCfg configuration
@@ -282,9 +264,6 @@
    return changeResult;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(
      AccountStatusNotificationHandlerCfg configuration,
@@ -295,9 +274,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(
      AccountStatusNotificationHandlerCfg configuration
@@ -307,7 +283,6 @@
    return new ConfigChangeResult();
  }
  /**
   * Loads the specified class, instantiates it as a notification handler,
   * and optionally initializes that instance. Any initialized notification
@@ -342,7 +317,6 @@
        );
  }
  /**
   * Loads the specified class, instantiates it as a notification handler,
   * and optionally initializes that instance.
@@ -402,7 +376,6 @@
    }
  }
  /**
   * Remove a notification handler that has been installed in the server.
   *
@@ -424,4 +397,3 @@
    }
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/AddOperation.java
@@ -177,6 +177,7 @@
   *          authorization has been requested, or {@code null} if proxied
   *          authorization has not been requested.
   */
  @Override
  DN getProxiedAuthorizationDN();
  /**
@@ -188,6 +189,7 @@
   *          authorization has been requested, or {@code null} if proxied
   *          authorization has not been requested.
   */
  @Override
  void setProxiedAuthorizationDN(DN proxiedAuthorizationDN);
}
opendj-server-legacy/src/main/java/org/opends/server/core/AddOperationWrapper.java
@@ -32,7 +32,6 @@
public abstract class AddOperationWrapper extends
    OperationWrapper<AddOperation> implements AddOperation
{
  /**
   * Creates a new add operation based on the provided add operation.
   *
@@ -43,77 +42,66 @@
    super(add);
  }
  /** {@inheritDoc} */
  @Override
  public void addObjectClass(ObjectClass objectClass, String name)
  {
    getOperation().addObjectClass(objectClass, name);
  }
  /** {@inheritDoc} */
  @Override
  public void addRawAttribute(RawAttribute rawAttribute)
  {
    getOperation().addRawAttribute(rawAttribute);
  }
  /** {@inheritDoc} */
  @Override
  public DN getEntryDN()
  {
    return getOperation().getEntryDN();
  }
  /** {@inheritDoc} */
  @Override
  public Map<ObjectClass, String> getObjectClasses()
  {
    return getOperation().getObjectClasses();
  }
  /** {@inheritDoc} */
  @Override
  public Map<AttributeType, List<Attribute>> getOperationalAttributes()
  {
    return getOperation().getOperationalAttributes();
  }
  /** {@inheritDoc} */
  @Override
  public List<RawAttribute> getRawAttributes()
  {
    return getOperation().getRawAttributes();
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getRawEntryDN()
  {
    return getOperation().getRawEntryDN();
  }
  /** {@inheritDoc} */
  @Override
  public Map<AttributeType, List<Attribute>> getUserAttributes()
  {
    return getOperation().getUserAttributes();
  }
  /** {@inheritDoc} */
  @Override
  public void removeAttribute(AttributeType attributeType)
  {
    getOperation().removeAttribute(attributeType);
  }
  /** {@inheritDoc} */
  @Override
  public void removeObjectClass(ObjectClass objectClass)
  {
    getOperation().removeObjectClass(objectClass);
  }
  /** {@inheritDoc} */
  @Override
  public void setAttribute(AttributeType attributeType,
      List<Attribute> attributeList)
@@ -121,25 +109,21 @@
    getOperation().setAttribute(attributeType, attributeList);
  }
  /** {@inheritDoc} */
  @Override
  public void setRawAttributes(List<RawAttribute> rawAttributes)
  {
    getOperation().setRawAttributes(rawAttributes);
  }
  /** {@inheritDoc} */
  @Override
  public void setRawEntryDN(ByteString rawEntryDN)
  {
    getOperation().setRawEntryDN(rawEntryDN);
  }
  /** {@inheritDoc} */
  @Override
  public String toString()
  {
    return getOperation().toString();
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/AlertHandlerConfigManager.java
@@ -50,9 +50,7 @@
       implements ConfigurationChangeListener<AlertHandlerCfg>,
                  ConfigurationAddListener<AlertHandlerCfg>,
                  ConfigurationDeleteListener<AlertHandlerCfg>
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /** A mapping between the DNs of the config entries and the associated alert handlers. */
@@ -90,7 +88,6 @@
    rootConfiguration.addAlertHandlerAddListener(this);
    rootConfiguration.addAlertHandlerDeleteListener(this);
    //Initialize the existing alert handlers.
    for (String name : rootConfiguration.listAlertHandlers())
    {
@@ -115,9 +112,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(AlertHandlerCfg configuration,
                                              List<LocalizableMessage> unacceptableReasons)
@@ -142,9 +136,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(AlertHandlerCfg configuration)
  {
@@ -180,9 +171,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(
                      AlertHandlerCfg configuration,
@@ -193,9 +181,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(
                                 AlertHandlerCfg configuration)
@@ -212,9 +197,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(AlertHandlerCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -239,20 +221,15 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                                 AlertHandlerCfg configuration)
  {
    final ConfigChangeResult ccr = new ConfigChangeResult();
    // Get the existing alert handler if it's already enabled.
    AlertHandler<?> existingHandler = alertHandlers.get(configuration.dn());
    // If the new configuration has the handler disabled, then disable it if it
    // is enabled, or do nothing if it's already disabled.
    if (! configuration.isEnabled())
@@ -271,7 +248,6 @@
      return ccr;
    }
    // Get the class for the alert handler.  If the handler is already enabled,
    // then we shouldn't do anything with it although if the class has changed
    // then we'll at least need to indicate that administrative action is
@@ -308,8 +284,6 @@
    return ccr;
  }
  /**
   * Loads the specified class, instantiates it as an alert handler, and
   * optionally initializes that instance.
opendj-server-legacy/src/main/java/org/opends/server/core/AttributeSyntaxConfigManager.java
@@ -53,15 +53,10 @@
       implements ConfigurationChangeListener<AttributeSyntaxCfg>,
                  ConfigurationAddListener<AttributeSyntaxCfg>,
                  ConfigurationDeleteListener<AttributeSyntaxCfg>
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * A mapping between the DNs of the config entries and the associated
   * attribute syntaxes.
   */
  /** A mapping between the DNs of the config entries and the associated attribute syntaxes. */
  private ConcurrentHashMap<DN,AttributeSyntax> syntaxes;
  private final ServerContext serverContext;
@@ -78,8 +73,6 @@
    syntaxes = new ConcurrentHashMap<>();
  }
  /**
   * Initializes all attribute syntaxes currently defined in the Directory
   * Server configuration.  This should only be called at Directory Server
@@ -99,7 +92,6 @@
    rootConfiguration.addAttributeSyntaxAddListener(this);
    rootConfiguration.addAttributeSyntaxDeleteListener(this);
    //Initialize the existing attribute syntaxes.
    for (String name : rootConfiguration.listAttributeSyntaxes())
    {
@@ -142,9 +134,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(
                      AttributeSyntaxCfg configuration,
@@ -170,9 +159,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(
                                 AttributeSyntaxCfg configuration)
@@ -216,9 +202,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(
                      AttributeSyntaxCfg configuration,
@@ -248,9 +231,6 @@
    return configAcceptable;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(
                                 AttributeSyntaxCfg configuration)
@@ -276,9 +256,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      AttributeSyntaxCfg configuration,
@@ -324,19 +301,14 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(AttributeSyntaxCfg configuration)
  {
    final ConfigChangeResult ccr = new ConfigChangeResult();
    // Get the existing syntax if it's already enabled.
    AttributeSyntax<?> existingSyntax = syntaxes.get(configuration.dn());
    // If the new configuration has the syntax disabled, then disable it if it
    // is enabled, or do nothing if it's already disabled.
    if (! configuration.isEnabled())
@@ -363,7 +335,6 @@
      return ccr;
    }
    // Get the class for the attribute syntax.  If the syntax is already
    // enabled, then we shouldn't do anything with it although if the class has
    // changed then we'll at least need to indicate that administrative action
@@ -406,8 +377,6 @@
    return ccr;
  }
  /**
   * Loads the specified class, instantiates it as an attribute syntax, and
   * optionally initializes that instance.
@@ -464,4 +433,3 @@
    }
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/BindOperationBasis.java
@@ -92,9 +92,7 @@
  /** The SASL mechanism used for SASL authentication. */
  private String saslMechanism;
  /**
   * A string representation of the protocol version for this bind operation.
   */
  /** A string representation of the protocol version for this bind operation. */
  private String protocolVersion;
  /**
@@ -128,8 +126,6 @@
    cancelResult = getBindCancelResult();
  }
  /**
   * Creates a new SASL bind operation with the provided information.
   *
@@ -196,8 +192,6 @@
    cancelResult = getBindCancelResult();
  }
  /**
   * Creates a new SASL bind operation with the provided information.
   *
@@ -246,34 +240,29 @@
    return new CancelResult(CANNOT_CANCEL, ERR_CANNOT_CANCEL_BIND.get());
  }
  /** {@inheritDoc} */
  @Override
  public DN getProxiedAuthorizationDN()
  {
    return null;
  }
  /** {@inheritDoc} */
  @Override
  public void setProxiedAuthorizationDN(DN proxiedAuthorizationDN)
  {
  }
  /** {@inheritDoc} */
  @Override
  public final AuthenticationType getAuthenticationType()
  {
    return authType;
  }
  /** {@inheritDoc} */
  @Override
  public final ByteString getRawBindDN()
  {
    return rawBindDN;
  }
  /** {@inheritDoc} */
  @Override
  public final void setRawBindDN(ByteString rawBindDN)
  {
@@ -315,7 +304,6 @@
    return simplePassword;
  }
  /** {@inheritDoc} */
  @Override
  public final void setSimplePassword(ByteString simplePassword)
  {
@@ -333,21 +321,18 @@
    saslCredentials = null;
  }
  /** {@inheritDoc} */
  @Override
  public final String getSASLMechanism()
  {
    return saslMechanism;
  }
  /** {@inheritDoc} */
  @Override
  public final ByteString getSASLCredentials()
  {
    return saslCredentials;
  }
  /** {@inheritDoc} */
  @Override
  public final void setSASLCredentials(String saslMechanism,
                                       ByteString saslCredentials)
@@ -359,42 +344,36 @@
    simplePassword = null;
  }
  /** {@inheritDoc} */
  @Override
  public final ByteString getServerSASLCredentials()
  {
    return serverSASLCredentials;
  }
  /** {@inheritDoc} */
  @Override
  public final void setServerSASLCredentials(ByteString serverSASLCredentials)
  {
    this.serverSASLCredentials = serverSASLCredentials;
  }
  /** {@inheritDoc} */
  @Override
  public final Entry getSASLAuthUserEntry()
  {
    return saslAuthUserEntry;
  }
  /** {@inheritDoc} */
  @Override
  public final void setSASLAuthUserEntry(Entry saslAuthUserEntry)
  {
    this.saslAuthUserEntry = saslAuthUserEntry;
  }
  /** {@inheritDoc} */
  @Override
  public final LocalizableMessage getAuthFailureReason()
  {
    return authFailureReason;
  }
  /** {@inheritDoc} */
  @Override
  public final void setAuthFailureReason(LocalizableMessage message)
  {
@@ -408,28 +387,24 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public final DN getUserEntryDN()
  {
    return userEntryDN;
  }
  /** {@inheritDoc} */
  @Override
  public final AuthenticationInfo getAuthenticationInfo()
  {
    return authInfo;
  }
  /** {@inheritDoc} */
  @Override
  public final void setAuthenticationInfo(AuthenticationInfo authInfo)
  {
    this.authInfo = authInfo;
  }
  /** {@inheritDoc} */
  @Override
  public final OperationType getOperationType()
  {
@@ -438,28 +413,24 @@
    return OperationType.BIND;
  }
  /** {@inheritDoc} */
  @Override
  public final List<Control> getResponseControls()
  {
    return responseControls;
  }
  /** {@inheritDoc} */
  @Override
  public final void addResponseControl(Control control)
  {
    responseControls.add(control);
  }
  /** {@inheritDoc} */
  @Override
  public final void removeResponseControl(Control control)
  {
    responseControls.remove(control);
  }
  /** {@inheritDoc} */
  @Override
  public final void toString(StringBuilder buffer)
  {
@@ -478,28 +449,24 @@
    buffer.append(")");
  }
  /** {@inheritDoc} */
  @Override
  public void setUserEntryDN(DN userEntryDN)
  {
    this.userEntryDN = userEntryDN;
  }
  /** {@inheritDoc} */
  @Override
  public String getProtocolVersion()
  {
    return protocolVersion;
  }
  /** {@inheritDoc} */
  @Override
  public void setProtocolVersion(String protocolVersion)
  {
    this.protocolVersion = protocolVersion;
  }
  /** {@inheritDoc} */
  @Override
  public final void run()
  {
@@ -520,7 +487,6 @@
    CancelRequest cancelRequest = new CancelRequest(true, cancelReason);
    clientConnection.cancelAllOperationsExcept(cancelRequest, getMessageID());
    // This flag is set to true as soon as a workflow has been executed.
    boolean workflowExecuted = false;
    try
@@ -531,7 +497,6 @@
        return;
      }
      // Process the bind DN to convert it from the raw form as provided by the
      // client into the form required for the rest of the bind processing.
      DN bindDN = getBindDN();
@@ -616,7 +581,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void updateOperationErrMsgAndResCode()
  {
opendj-server-legacy/src/main/java/org/opends/server/core/BindOperationWrapper.java
@@ -39,91 +39,78 @@
    super(bind);
  }
  /** {@inheritDoc} */
  @Override
  public AuthenticationInfo getAuthenticationInfo()
  {
    return getOperation().getAuthenticationInfo();
  }
  /** {@inheritDoc} */
  @Override
  public AuthenticationType getAuthenticationType()
  {
    return getOperation().getAuthenticationType();
  }
  /** {@inheritDoc} */
  @Override
  public LocalizableMessage getAuthFailureReason()
  {
    return getOperation().getAuthFailureReason();
  }
  /** {@inheritDoc} */
  @Override
  public DN getBindDN()
  {
    return getOperation().getBindDN();
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getRawBindDN()
  {
    return getOperation().getRawBindDN();
  }
  /** {@inheritDoc} */
  @Override
  public Entry getSASLAuthUserEntry()
  {
    return getOperation().getSASLAuthUserEntry();
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getSASLCredentials()
  {
    return getOperation().getSASLCredentials();
  }
  /** {@inheritDoc} */
  @Override
  public String getSASLMechanism()
  {
    return getOperation().getSASLMechanism();
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getServerSASLCredentials()
  {
    return getOperation().getServerSASLCredentials();
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getSimplePassword()
  {
    return getOperation().getSimplePassword();
  }
  /** {@inheritDoc} */
  @Override
  public DN getUserEntryDN()
  {
    return getOperation().getUserEntryDN();
  }
  /** {@inheritDoc} */
  @Override
  public void setAuthenticationInfo(AuthenticationInfo authInfo)
  {
    getOperation().setAuthenticationInfo(authInfo);
  }
  /** {@inheritDoc} */
  @Override
  public void setAuthFailureReason(LocalizableMessage reason)
  {
@@ -137,21 +124,18 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void setRawBindDN(ByteString rawBindDN)
  {
    getOperation().setRawBindDN(rawBindDN);
  }
  /** {@inheritDoc} */
  @Override
  public void setSASLAuthUserEntry(Entry saslAuthUserEntry)
  {
    getOperation().setSASLAuthUserEntry(saslAuthUserEntry);
  }
  /** {@inheritDoc} */
  @Override
  public void setSASLCredentials(String saslMechanism,
      ByteString saslCredentials)
@@ -159,45 +143,38 @@
    getOperation().setSASLCredentials(saslMechanism, saslCredentials);
  }
  /** {@inheritDoc} */
  @Override
  public void setServerSASLCredentials(ByteString serverSASLCredentials)
  {
    getOperation().setServerSASLCredentials(serverSASLCredentials);
  }
  /** {@inheritDoc} */
  @Override
  public void setSimplePassword(ByteString simplePassword)
  {
    getOperation().setSimplePassword(simplePassword);
  }
  /** {@inheritDoc} */
  @Override
  public void setUserEntryDN(DN userEntryDN){
    getOperation().setUserEntryDN(userEntryDN);
  }
  /** {@inheritDoc} */
  @Override
  public String toString()
  {
    return getOperation().toString();
  }
  /** {@inheritDoc} */
  @Override
  public void setProtocolVersion(String protocolVersion)
  {
    getOperation().setProtocolVersion(protocolVersion);
  }
  /** {@inheritDoc} */
  @Override
  public String getProtocolVersion()
  {
    return getOperation().getProtocolVersion();
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/BoundedWorkQueueStrategy.java
@@ -11,7 +11,7 @@
 * Header, with the fields enclosed by brackets [] replaced by your own identifying
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2013-2014 ForgeRock AS.
 * Copyright 2013-2016 ForgeRock AS.
 */
package org.opends.server.core;
@@ -28,11 +28,7 @@
 */
public class BoundedWorkQueueStrategy implements QueueingStrategy
{
  /**
   * The number of concurrently running operations for this
   * BoundedWorkQueueStrategy.
   */
  /** The number of concurrently running operations for this BoundedWorkQueueStrategy. */
  private final AtomicInteger nbRunningOperations = new AtomicInteger(0);
  /** Maximum number of concurrent operations. 0 means "unlimited". */
  private final int maxNbConcurrentOperations;
@@ -70,7 +66,6 @@
    return DirectoryServer.getWorkQueue().getNumWorkerThreads();
  }
  /** {@inheritDoc} */
  @Override
  public void enqueueRequest(final Operation operation)
      throws DirectoryException
opendj-server-legacy/src/main/java/org/opends/server/core/CertificateMapperConfigManager.java
@@ -51,15 +51,10 @@
       implements ConfigurationChangeListener<CertificateMapperCfg>,
                  ConfigurationAddListener<CertificateMapperCfg>,
                  ConfigurationDeleteListener<CertificateMapperCfg>
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * A mapping between the DNs of the config entries and the associated
   * certificate mappers.
   */
  /** A mapping between the DNs of the config entries and the associated certificate mappers. */
  private ConcurrentHashMap<DN,CertificateMapper> certificateMappers;
  private final ServerContext serverContext;
@@ -95,7 +90,6 @@
    rootConfiguration.addCertificateMapperAddListener(this);
    rootConfiguration.addCertificateMapperDeleteListener(this);
    //Initialize the existing certificate mappers.
    for (String mapperName : rootConfiguration.listCertificateMappers())
    {
@@ -122,7 +116,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(
                      CertificateMapperCfg configuration,
@@ -148,7 +141,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(
                                 CertificateMapperCfg configuration)
@@ -186,7 +178,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(
                      CertificateMapperCfg configuration,
@@ -197,7 +188,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(
                                 CertificateMapperCfg configuration)
@@ -216,7 +206,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      CertificateMapperCfg configuration,
@@ -242,19 +231,16 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                                 CertificateMapperCfg configuration)
  {
    final ConfigChangeResult ccr = new ConfigChangeResult();
    // Get the existing mapper if it's already enabled.
    CertificateMapper existingMapper =
         certificateMappers.get(configuration.dn());
    // If the new configuration has the mapper disabled, then disable it if it
    // is enabled, or do nothing if it's already disabled.
    if (! configuration.isEnabled())
@@ -274,7 +260,6 @@
      return ccr;
    }
    // Get the class for the certificate mapper.  If the mapper is already
    // enabled, then we shouldn't do anything with it although if the class has
    // changed then we'll at least need to indicate that administrative action
@@ -311,8 +296,6 @@
    return ccr;
  }
  /**
   * Loads the specified class, instantiates it as a certificate mapper, and
   * optionally initializes that instance.
@@ -373,4 +356,3 @@
    }
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/ConnectionHandlerConfigManager.java
@@ -55,7 +55,6 @@
    ConfigurationChangeListener<ConnectionHandlerCfg> {
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * The mapping between configuration entry DNs and their corresponding
   * connection handler implementations.
@@ -75,7 +74,6 @@
    connectionHandlers = new ConcurrentHashMap<>();
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(
      ConnectionHandlerCfg configuration) {
@@ -117,9 +115,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
      ConnectionHandlerCfg configuration) {
@@ -176,7 +171,6 @@
            .deregisterConnectionHandler(connectionHandler);
        connectionHandlers.remove(dn);
        connectionHandler.finalizeConnectionHandler(
                INFO_CONNHANDLER_CLOSED_BY_DISABLE.get());
      }
@@ -185,9 +179,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(
      ConnectionHandlerCfg configuration) {
@@ -209,8 +200,6 @@
    return ccr;
  }
  /**
   * Initializes the configuration associated with the Directory
   * Server connection handlers. This should only be called at
@@ -231,7 +220,6 @@
    initializeAdministrationConnectorConfig();
    RootCfg root = serverContext.getRootConfig();
    root.addConnectionHandlerAddListener(this);
    root.addConnectionHandlerDeleteListener(this);
@@ -265,8 +253,6 @@
    }
  }
  private void initializeAdministrationConnectorConfig()
    throws ConfigException, InitializationException {
    AdministrationConnectorCfg administrationConnectorCfg =
@@ -284,8 +270,6 @@
    DirectoryServer.registerConnectionHandler(connectionHandler);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(
      ConnectionHandlerCfg configuration,
@@ -294,9 +278,6 @@
        || isJavaClassAcceptable(configuration, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
      ConnectionHandlerCfg configuration,
@@ -305,9 +286,6 @@
        || isJavaClassAcceptable(configuration, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(
      ConnectionHandlerCfg configuration,
@@ -316,8 +294,6 @@
    return true;
  }
  /** Load and initialize the connection handler named in the config. */
  private <T extends ConnectionHandlerCfg> ConnectionHandler<T> getConnectionHandler(
      T config) throws ConfigException
@@ -344,12 +320,7 @@
    }
  }
  /**
   * Determines whether or not the new configuration's implementation
   * class is acceptable.
   */
  /** Determines whether or not the new configuration's implementation class is acceptable. */
  private boolean isJavaClassAcceptable(
      ConnectionHandlerCfg config,
      List<LocalizableMessage> unacceptableReasons) {
opendj-server-legacy/src/main/java/org/opends/server/core/DefaultAccessControlHandler.java
@@ -34,9 +34,7 @@
class DefaultAccessControlHandler
      extends AccessControlHandler<AccessControlHandlerCfg>
{
  /**
   * Create a new default access control handler.
   */
  /** Create a new default access control handler. */
  public DefaultAccessControlHandler()
  {
    super();
@@ -44,9 +42,6 @@
    // No implementation required.
  }
  /** {@inheritDoc} */
  @Override
  public void initializeAccessControlHandler(AccessControlHandlerCfg
                                                  configuration)
@@ -55,98 +50,66 @@
    // No implementation required.
  }
  /** {@inheritDoc} */
  @Override
  public void finalizeAccessControlHandler()
  {
    // No implementation required.
  }
  /** {@inheritDoc} */
  @Override
  public boolean isAllowed(LocalBackendAddOperation addOperation)
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isAllowed(BindOperation bindOperation)
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isAllowed(LocalBackendCompareOperation compareOperation)
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isAllowed(LocalBackendDeleteOperation deleteOperation)
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isAllowed(ExtendedOperation extendedOperation)
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isAllowed(LocalBackendModifyOperation modifyOperation)
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
   public  boolean isAllowed(DN dn, Operation  op, Control control)
   {
     return true;
   }
  /** {@inheritDoc} */
  @Override
  public boolean isAllowed(ModifyDNOperation modifyDNOperation)
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isAllowed(SearchOperation searchOperation)
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isAllowed(Operation operation, Entry entry,
    SearchFilter filter) throws DirectoryException
@@ -154,18 +117,12 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public boolean maySend(Operation operation, SearchResultEntry unfilteredEntry)
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public void filterEntry(Operation operation,
      SearchResultEntry unfilteredEntry, SearchResultEntry filteredEntry)
@@ -173,9 +130,6 @@
    return;
  }
  /** {@inheritDoc} */
  @Override
  public boolean maySend(DN dn, Operation operation,
                         SearchResultReference searchReference)
@@ -183,13 +137,9 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public  boolean mayProxy(Entry proxyUser, Entry proxiedUser,
                           Operation operation) {
      return true;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/DefaultCompressedSchema.java
@@ -49,8 +49,6 @@
  /** Synchronizes calls to save. */
  private final Object saveLock = new Object();
  /**
   * Creates a new instance of this compressed schema manager.
   *
@@ -63,9 +61,6 @@
    load();
  }
  /** {@inheritDoc} */
  @Override
  protected void storeAttribute(final byte[] encodedAttribute,
      final String attributeName, final Iterable<String> attributeOptions)
@@ -74,9 +69,6 @@
    save();
  }
  /** {@inheritDoc} */
  @Override
  protected void storeObjectClasses(final byte[] encodedObjectClasses,
      final Collection<String> objectClassNames) throws DirectoryException
@@ -84,11 +76,7 @@
    save();
  }
  /**
   * Loads the compressed schema information from disk.
   */
  /** Loads the compressed schema information from disk. */
  private void load()
  {
    FileInputStream inputStream = null;
@@ -169,8 +157,6 @@
    }
  }
  /**
   * Writes the compressed schema information to disk.
   *
@@ -276,5 +262,4 @@
      }
    }
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/DeleteOperation.java
@@ -64,6 +64,7 @@
   *          authorization has been requested, or {@code null} if proxied
   *          authorization has not been requested.
   */
  @Override
  DN getProxiedAuthorizationDN();
  /**
@@ -75,6 +76,7 @@
   *          authorization has been requested, or {@code null} if proxied
   *          authorization has not been requested.
   */
  @Override
  void setProxiedAuthorizationDN(DN proxiedAuthorizationDN);
opendj-server-legacy/src/main/java/org/opends/server/core/DeleteOperationWrapper.java
@@ -27,7 +27,6 @@
public abstract class DeleteOperationWrapper extends
    OperationWrapper<DeleteOperation> implements DeleteOperation
{
  /**
   * Creates a new delete operation based on the provided delete operation.
   *
@@ -38,32 +37,27 @@
    super(delete);
  }
  /** {@inheritDoc} */
  @Override
  public DN getEntryDN()
  {
    return getOperation().getEntryDN();
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getRawEntryDN()
  {
    return getOperation().getRawEntryDN();
  }
  /** {@inheritDoc} */
  @Override
  public void setRawEntryDN(ByteString rawEntryDN)
  {
    getOperation().setRawEntryDN(rawEntryDN);
  }
  /** {@inheritDoc} */
  @Override
  public String toString()
  {
    return getOperation().toString();
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/DirectoryServerShutdownHook.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2006-2008 Sun Microsystems, Inc.
 * Portions Copyright 2014 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.core;
@@ -55,6 +55,7 @@
  /**
   * Invokes the shutdown hook to signal the Directory Server to stop running.
   */
  @Override
  public void run()
  {
    logger.trace(
opendj-server-legacy/src/main/java/org/opends/server/core/EntryCacheConfigManager.java
@@ -83,7 +83,6 @@
    this.serverContext = serverContext;
  }
  /**
   * Initializes the default entry cache.
   * This should only be called at Directory Server startup.
@@ -109,10 +108,8 @@
          stackTraceToSingleLineString(e));
      throw new InitializationException(message, e);
    }
  }
  /**
   * Initializes the configuration associated with the Directory Server entry
   * cache.  This should only be called at Directory Server startup.  If an
@@ -188,8 +185,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
      EntryCacheCfg configuration,
@@ -230,8 +225,6 @@
    return status;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
      EntryCacheCfg configuration
@@ -315,8 +308,6 @@
    return changeResult;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(
      EntryCacheCfg configuration,
@@ -353,8 +344,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(EntryCacheCfg configuration)
  {
@@ -383,8 +372,6 @@
    return changeResult;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(
      EntryCacheCfg configuration,
@@ -397,8 +384,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(
      EntryCacheCfg configuration
@@ -437,7 +422,6 @@
    return changeResult;
  }
  /**
   * Loads the specified class, instantiates it as an entry cache,
   * and optionally initializes that instance. Any initialize entry
@@ -584,5 +568,4 @@
      throw new InitializationException(message, e);
    }
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/ExtendedOperationBasis.java
@@ -43,10 +43,7 @@
import org.opends.server.types.operation.PreOperationExtendedOperation;
import org.opends.server.types.operation.PreParseExtendedOperation;
/**
 * This class defines an extended operation, which can perform virtually any
 * kind of task.
 */
/** This class defines an extended operation, which can perform virtually any kind of task. */
public class ExtendedOperationBasis
       extends AbstractOperation
       implements ExtendedOperation,
@@ -72,8 +69,6 @@
  /** The OID for the response associated with this extended operation. */
  private String responseOID;
  /**
   * Creates a new extended operation with the provided information.
   *
@@ -95,7 +90,6 @@
  {
    super(clientConnection, operationID, messageID, requestControls);
    this.requestOID   = requestOID;
    this.requestValue = requestValue;
@@ -116,17 +110,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public final String getRequestOID()
  {
    return requestOID;
  }
  /**
   * Specifies the OID for the request associated with this extended operation.
   * This should only be called by pre-parse plugins.
@@ -140,33 +129,23 @@
    this.requestOID = requestOID;
  }
  /** {@inheritDoc} */
  @Override
  public DN getProxiedAuthorizationDN()
  {
    return null;
  }
  /** {@inheritDoc} */
  @Override
  public void setProxiedAuthorizationDN(DN proxiedAuthorizationDN)
  {
  }
  /** {@inheritDoc} */
  @Override
  public final ByteString getRequestValue()
  {
    return requestValue;
  }
  /**
   * Specifies the value for the request associated with this extended
   * operation.  This should only be called by pre-parse plugins.
@@ -180,44 +159,30 @@
    this.requestValue = requestValue;
  }
  /** {@inheritDoc} */
  @Override
  public final String getResponseOID()
  {
    return responseOID;
  }
  /** {@inheritDoc} */
  @Override
  public final void setResponseOID(String responseOID)
  {
    this.responseOID = responseOID;
  }
  /** {@inheritDoc} */
  @Override
  public final ByteString getResponseValue()
  {
    return responseValue;
  }
  /** {@inheritDoc} */
  @Override
  public final void setResponseValue(ByteString responseValue)
  {
    this.responseValue = responseValue;
  }
  /** {@inheritDoc} */
  @Override
  public final OperationType getOperationType()
  {
@@ -226,35 +191,24 @@
    return OperationType.EXTENDED;
  }
  /** {@inheritDoc} */
  @Override
  public final List<Control> getResponseControls()
  {
    return responseControls;
  }
  /** {@inheritDoc} */
  @Override
  public final void addResponseControl(Control control)
  {
    responseControls.add(control);
  }
  /** {@inheritDoc} */
  @Override
  public final void removeResponseControl(Control control)
  {
    responseControls.remove(control);
  }
  /**
   * Performs the work of actually processing this operation.  This
   * should include all processing for the operation, including
@@ -285,7 +239,6 @@
      checkIfCanceled(false);
      // Get the extended operation handler for the request OID.  If there is
      // none, then fail.
      ExtendedOperationHandler<?> handler =
@@ -297,7 +250,6 @@
        return;
      }
      // Look at the controls included in the request and ensure that all
      // critical controls are supported by the handler.
      for (Iterator<Control> iter = getRequestControls().iterator(); iter.hasNext();)
@@ -341,7 +293,6 @@
        }
      }
      // Check to see if the client has permission to perform the
      // extended operation.
@@ -376,13 +327,11 @@
        // Actually perform the processing for this operation.
        handler.processExtendedOperation(this);
      }
      finally
      {
        getPluginConfigManager().invokePostOperationExtendedPlugins(this);
      }
    }
    catch(CanceledOperationException coe)
    {
opendj-server-legacy/src/main/java/org/opends/server/core/ExtendedOperationConfigManager.java
@@ -115,7 +115,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(
       ExtendedOperationHandlerCfg configuration)
@@ -131,7 +130,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
       ExtendedOperationHandlerCfg configuration,
@@ -141,7 +139,6 @@
        || isJavaClassAcceptable(configuration, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
       ExtendedOperationHandlerCfg configuration)
@@ -163,7 +160,6 @@
          // Put this handler in the hash so that we will
          // be able to find it if it is altered.
          handlers.put(dn, handler);
        } catch (ConfigException e) {
          logger.traceException(e);
@@ -200,7 +196,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(
       ExtendedOperationHandlerCfg configuration,
@@ -209,7 +204,6 @@
    return isConfigurationChangeAcceptable(configuration, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(
       ExtendedOperationHandlerCfg configuration)
@@ -232,7 +226,6 @@
        // Put this connection handler in the hash so that we will be
        // able to find it if it is altered.
        handlers.put(dn, handler);
      }
      catch (ConfigException e)
      {
@@ -254,7 +247,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(
       ExtendedOperationHandlerCfg configuration,
@@ -290,12 +282,7 @@
    }
  }
  /**
   * Determines whether or not the new configuration's implementation
   * class is acceptable.
   */
  /** Determines whether or not the new configuration's implementation class is acceptable. */
  private boolean isJavaClassAcceptable(ExtendedOperationHandlerCfg config,
                                        List<LocalizableMessage> unacceptableReasons)
  {
@@ -319,4 +306,3 @@
    }
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/ExtendedOperationWrapper.java
@@ -11,7 +11,7 @@
 * Header, with the fields enclosed by brackets [] replaced by your own identifying
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Portions Copyright 2013-2014 ForgeRock AS.
 * Portions Copyright 2013-2016 ForgeRock AS.
 */
package org.opends.server.core;
@@ -25,7 +25,6 @@
public abstract class ExtendedOperationWrapper extends
    OperationWrapper<ExtendedOperation> implements ExtendedOperation
{
  /**
   * Creates a new extended operation wrapper based on the provided extended
   * operation.
@@ -38,46 +37,39 @@
    super(extended);
  }
  /** {@inheritDoc} */
  @Override
  public String getRequestOID()
  {
    return getOperation().getRequestOID();
  }
  /** {@inheritDoc} */
  @Override
  public String getResponseOID()
  {
    return getOperation().getResponseOID();
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getRequestValue()
  {
    return getOperation().getRequestValue();
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getResponseValue()
  {
    return getOperation().getResponseValue();
  }
  /** {@inheritDoc} */
  @Override
  public void setResponseOID(String responseOID)
  {
    getOperation().setResponseOID(responseOID);
  }
  /** {@inheritDoc} */
  @Override
  public void setResponseValue(ByteString responseValue)
  {
    getOperation().setResponseValue(responseValue);
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/GroupManager.java
@@ -99,23 +99,13 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * Used by group instances to determine if new groups have been registered or
   * groups deleted.
   */
  /** Used by group instances to determine if new groups have been registered or groups deleted. */
  private volatile long refreshToken;
  /**
   * A mapping between the DNs of the config entries and the associated group
   * implementations.
   */
  /** A mapping between the DNs of the config entries and the associated group implementations. */
  private ConcurrentMap<DN, Group<?>> groupImplementations;
  /**
   * A mapping between the DNs of all group entries and the corresponding group
   * instances.
   */
  /** A mapping between the DNs of all group entries and the corresponding group instances. */
  private DITCacheMap<Group<?>> groupInstances;
  /** Lock to protect internal data structures. */
@@ -155,8 +145,6 @@
    DirectoryServer.registerBackendInitializationListener(this);
  }
  /**
   * Initializes all group implementations currently defined in the Directory
   * Server configuration.  This should only be called at Directory Server
@@ -176,7 +164,6 @@
    rootConfiguration.addGroupImplementationAddListener(this);
    rootConfiguration.addGroupImplementationDeleteListener(this);
    //Initialize the existing group implementations.
    for (String name : rootConfiguration.listGroupImplementations())
    {
@@ -200,9 +187,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(
                      GroupImplementationCfg configuration,
@@ -223,9 +207,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(
                                 GroupImplementationCfg configuration)
@@ -260,9 +241,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(
                      GroupImplementationCfg configuration,
@@ -273,9 +251,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(
                                 GroupImplementationCfg configuration)
@@ -309,9 +284,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      GroupImplementationCfg configuration,
@@ -332,9 +304,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                                 GroupImplementationCfg configuration)
@@ -377,7 +346,6 @@
      return ccr;
    }
    // Get the class for the group implementation.  If the group is already
    // enabled, then we shouldn't do anything with it although if the class has
    // changed then we'll at least need to indicate that administrative action
@@ -415,8 +383,6 @@
    return ccr;
  }
  /**
   * Loads the specified class, instantiates it as a group implementation, and
   * optionally initializes that instance.
@@ -473,12 +439,7 @@
    }
  }
  /**
   * Performs any cleanup work that may be needed when the server is shutting
   * down.
   */
  /** Performs any cleanup work that may be needed when the server is shutting down. */
  public void finalizeGroupManager()
  {
    DirectoryServer.deregisterInternalPlugin(this);
@@ -494,8 +455,6 @@
    groupImplementations.clear();
  }
  /**
   * Retrieves an {@code Iterable} object that may be used to cursor across the
   * group implementations defined in the server.
@@ -508,8 +467,6 @@
    return groupImplementations.values();
  }
  /**
   * Retrieves an {@code Iterable} object that may be used to cursor across the
   * group instances defined in the server.
@@ -531,8 +488,6 @@
    }
  }
  /**
   * Retrieves the group instance defined in the entry with the specified DN.
   *
@@ -555,8 +510,6 @@
    }
  }
  /**
   * {@inheritDoc}  In this case, the server will search the backend to find
   * all group instances that it may contain and register them with this group
@@ -586,7 +539,6 @@
        continue;
      }
      for (DN baseDN : backend.getBaseDNs())
      {
        try
@@ -602,7 +554,6 @@
          continue;
        }
        SearchRequest request = newSearchRequest(baseDN, SearchScope.WHOLE_SUBTREE, filter)
            .addControl(control);
        InternalSearchOperation internalSearch =
@@ -647,8 +598,6 @@
    }
  }
  /**
   * {@inheritDoc}  In this case, the server will de-register all group
   * instances associated with entries in the provided backend.
@@ -686,7 +635,6 @@
    // Nothing to do.
  }
  /**
   * In this case, each entry is checked to see if it contains
   * a group definition, and if so it will be instantiated and
@@ -702,8 +650,6 @@
    createAndRegisterGroup(entry);
  }
  private static boolean hasGroupMembershipUpdateControl(PluginOperation operation)
  {
    List<Control> requestControls = operation.getRequestControls();
@@ -720,8 +666,6 @@
    return false;
  }
  /**
   * In this case, if the entry is associated with a registered
   * group instance, then that group instance will be deregistered.
@@ -747,8 +691,6 @@
    }
  }
  /**
   * Scan the list of provided modifications looking for any changes to the objectClass,
   * which might change the entry to another kind of group, or even to a non-group.
@@ -769,8 +711,6 @@
    return false;
  }
  /**
   * In this case, if the entry is associated with a registered
   * group instance, then that instance will be recreated from
@@ -831,8 +771,6 @@
    }
  }
  /**
   * In this case, if the entry is associated with a registered
   * group instance, then that instance will be recreated from
@@ -873,9 +811,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public PostOperation doPostOperation(
          PostOperationAddOperation addOperation)
@@ -891,7 +826,6 @@
    return PluginResult.PostOperation.continueOperationProcessing();
  }
  /** {@inheritDoc} */
  @Override
  public PostOperation doPostOperation(
          PostOperationDeleteOperation deleteOperation)
@@ -907,7 +841,6 @@
    return PluginResult.PostOperation.continueOperationProcessing();
  }
  /** {@inheritDoc} */
  @Override
  public PostOperation doPostOperation(
          PostOperationModifyOperation modifyOperation)
@@ -926,7 +859,6 @@
    return PluginResult.PostOperation.continueOperationProcessing();
  }
  /** {@inheritDoc} */
  @Override
  public PostOperation doPostOperation(
          PostOperationModifyDNOperation modifyDNOperation)
@@ -944,7 +876,6 @@
    return PluginResult.PostOperation.continueOperationProcessing();
  }
  /** {@inheritDoc} */
  @Override
  public void doPostSynchronization(
      PostSynchronizationAddOperation addOperation)
@@ -956,7 +887,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void doPostSynchronization(
      PostSynchronizationDeleteOperation deleteOperation)
@@ -968,7 +898,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void doPostSynchronization(
      PostSynchronizationModifyOperation modifyOperation)
@@ -981,7 +910,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void doPostSynchronization(
      PostSynchronizationModifyDNOperation modifyDNOperation)
@@ -994,8 +922,6 @@
    }
  }
  /**
   * Attempts to create a group instance from the provided entry, and if that is
   * successful then register it with the server, overwriting any existing
@@ -1032,8 +958,6 @@
    }
  }
  /**
   * Removes all group instances that might happen to be registered with the
   * group manager.  This method is only intended for testing purposes and
@@ -1052,7 +976,6 @@
    }
  }
  /**
   * Compare the specified token against the current group manager
   * token value. Can be used to reload cached group instances if there has
@@ -1077,4 +1000,3 @@
    return this.refreshToken;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/IdentityMapperConfigManager.java
@@ -50,9 +50,7 @@
       implements ConfigurationChangeListener<IdentityMapperCfg>,
                  ConfigurationAddListener<IdentityMapperCfg>,
                  ConfigurationDeleteListener<IdentityMapperCfg>
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /** A mapping between the DNs of the config entries and the associated identity mappers. */
@@ -72,8 +70,6 @@
    identityMappers = new ConcurrentHashMap<>();
  }
  /**
   * Initializes all identity mappers currently defined in the Directory Server
   * configuration.  This should only be called at Directory Server startup.
@@ -92,7 +88,6 @@
    rootConfiguration.addIdentityMapperAddListener(this);
    rootConfiguration.addIdentityMapperDeleteListener(this);
    //Initialize the existing identity mappers.
    for (String mapperName : rootConfiguration.listIdentityMappers())
    {
@@ -119,7 +114,6 @@
      }
    }
    // Now that all of the identity mappers are defined, see if the Directory
    // Server's proxied auth mapper is valid.  If not, then log a warning
    // message.
@@ -134,9 +128,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(
                      IdentityMapperCfg configuration,
@@ -162,9 +153,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(
                                 IdentityMapperCfg configuration)
@@ -202,9 +190,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(
                      IdentityMapperCfg configuration,
@@ -215,9 +200,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(
                                 IdentityMapperCfg configuration)
@@ -235,9 +217,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      IdentityMapperCfg configuration,
@@ -263,20 +242,15 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                                 IdentityMapperCfg configuration)
  {
    final ConfigChangeResult ccr = new ConfigChangeResult();
    // Get the existing mapper if it's already enabled.
    IdentityMapper existingMapper = identityMappers.get(configuration.dn());
    // If the new configuration has the mapper disabled, then disable it if it
    // is enabled, or do nothing if it's already disabled.
    if (! configuration.isEnabled())
@@ -296,7 +270,6 @@
      return ccr;
    }
    // Get the class for the identity mapper.  If the mapper is already enabled,
    // then we shouldn't do anything with it although if the class has changed
    // then we'll at least need to indicate that administrative action is
@@ -333,8 +306,6 @@
    return ccr;
  }
  /**
   * Loads the specified class, instantiates it as an identity mapper, and
   * optionally initializes that instance.
@@ -391,4 +362,3 @@
    }
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/IdleTimeLimitThread.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2008 Sun Microsystems, Inc.
 * Portions Copyright 2012-2015 ForgeRock AS.
 * Portions Copyright 2012-2016 ForgeRock AS.
 */
package org.opends.server.core;
@@ -39,17 +39,11 @@
  /** The debug log tracer for this object. */
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /** Shutdown monitor state. */
  private volatile boolean shutdownRequested;
  private final Object shutdownLock = new Object();
  /**
   * Creates a new instance of this idle time limit thread.
   */
  /** Creates a new instance of this idle time limit thread. */
  public IdleTimeLimitThread()
  {
    super("Idle Time Limit Thread");
@@ -59,12 +53,8 @@
    DirectoryServer.registerShutdownListener(this);
  }
  /**
   * Operates in a loop, teriminating any client connections that have been idle
   * for too long.
   */
  /** Operates in a loop, teriminating any client connections that have been idle for too long. */
  @Override
  public void run()
  {
    LocalizableMessage disconnectMessage = INFO_IDLETIME_LIMIT_EXCEEDED.get();
@@ -154,17 +144,13 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public String getShutdownListenerName()
  {
    return "Idle Time Limit Thread";
  }
  /** {@inheritDoc} */
  @Override
  public void processServerShutdown(LocalizableMessage reason)
  {
    synchronized (shutdownLock)
@@ -174,4 +160,3 @@
    }
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/KeyManagerProviderConfigManager.java
@@ -52,15 +52,10 @@
       implements ConfigurationChangeListener<KeyManagerProviderCfg>,
                  ConfigurationAddListener<KeyManagerProviderCfg>,
                  ConfigurationDeleteListener<KeyManagerProviderCfg>
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * A mapping between the DNs of the config entries and the associated key
   * manager providers.
   */
  /** A mapping between the DNs of the config entries and the associated key manager providers. */
  private final ConcurrentHashMap<DN,KeyManagerProvider> providers;
  private final ServerContext serverContext;
@@ -96,7 +91,6 @@
    rootConfiguration.addKeyManagerProviderAddListener(this);
    rootConfiguration.addKeyManagerProviderDeleteListener(this);
    //Initialize the existing key manager providers.
    for (String name : rootConfiguration.listKeyManagerProviders())
    {
@@ -124,9 +118,7 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(
          KeyManagerProviderCfg configuration,
          List<LocalizableMessage> unacceptableReasons)
@@ -151,9 +143,7 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(
          KeyManagerProviderCfg configuration)
  {
@@ -190,9 +180,7 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(
                      KeyManagerProviderCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -202,9 +190,7 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(
                                 KeyManagerProviderCfg configuration)
  {
@@ -221,9 +207,7 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      KeyManagerProviderCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -248,19 +232,15 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                                 KeyManagerProviderCfg configuration)
  {
    final ConfigChangeResult ccr = new ConfigChangeResult();
    // Get the existing provider if it's already enabled.
    KeyManagerProvider existingProvider = providers.get(configuration.dn());
    // If the new configuration has the provider disabled, then disable it if it
    // is enabled, or do nothing if it's already disabled.
    if (! configuration.isEnabled())
@@ -279,7 +259,6 @@
      return ccr;
    }
    // Get the class for the key manager provider.  If the provider is already
    // enabled, then we shouldn't do anything with it although if the class has
    // changed then we'll at least need to indicate that administrative action
@@ -316,8 +295,6 @@
    return ccr;
  }
  /**
   * Loads the specified class, instantiates it as a key manager provider, and
   * optionally initializes that instance.
@@ -352,7 +329,6 @@
           propertyDefinition.loadClass(className, KeyManagerProvider.class);
      KeyManagerProvider provider = providerClass.newInstance();
      if (initialize)
      {
        provider.initializeKeyManagerProvider(configuration);
@@ -382,4 +358,3 @@
    }
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/MatchingRuleConfigManager.java
@@ -54,15 +54,10 @@
       implements ConfigurationChangeListener<MatchingRuleCfg>,
                  ConfigurationAddListener<MatchingRuleCfg>,
                  ConfigurationDeleteListener<MatchingRuleCfg>
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * A mapping between the DNs of the config entries and the associated matching
   * rule Factories.
   */
  /** A mapping between the DNs of the config entries and the associated matching rule Factories. */
  private ConcurrentHashMap<DN, MatchingRuleFactory<?>> matchingRuleFactories;
  private final ServerContext serverContext;
@@ -79,8 +74,6 @@
    matchingRuleFactories = new ConcurrentHashMap<>();
  }
  /**
   * Initializes all matching rules after reading all the Matching Rule
   * factories currently defined in the Directory Server configuration.
@@ -136,9 +129,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(MatchingRuleCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -163,9 +153,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(MatchingRuleCfg configuration)
  {
@@ -208,9 +195,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(MatchingRuleCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -269,8 +253,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(MatchingRuleCfg configuration)
  {
@@ -297,9 +279,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(MatchingRuleCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -380,19 +359,16 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                                 MatchingRuleCfg configuration)
  {
    final ConfigChangeResult ccr = new ConfigChangeResult();
   // Get the existing matching rule factory if it's already enabled.
    MatchingRuleFactory<?> existingFactory =
            matchingRuleFactories.get(configuration.dn());
    // If the new configuration has the matching rule disabled, then disable it
    // if it is enabled, or do nothing if it's already disabled.
    if (! configuration.isEnabled())
@@ -417,7 +393,6 @@
      return ccr;
    }
    // Get the class for the matching rule.  If the matching rule is already
    // enabled, then we shouldn't do anything with it although if the class has
    // changed then we'll at least need to indicate that administrative action
@@ -459,8 +434,6 @@
    return ccr;
  }
  /**
   * Loads the specified class, instantiates it as an attribute syntax, and
   * optionally initializes that instance.
opendj-server-legacy/src/main/java/org/opends/server/core/ModifyDNOperation.java
@@ -39,6 +39,7 @@
   *
   * @return  The raw, unprocessed entry DN as included in the client request.
   */
  @Override
  ByteString getRawEntryDN();
  /**
@@ -59,6 +60,7 @@
   * @return  The DN of the entry to rename, or <CODE>null</CODE> if the raw
   *          entry DN has not yet been processed.
   */
  @Override
  DN getEntryDN();
  /**
@@ -69,6 +71,7 @@
   * @return  The raw, unprocessed newRDN as included in the request from the
   *          client.
   */
  @Override
  ByteString getRawNewRDN();
  /**
@@ -89,6 +92,7 @@
   * @return  The new RDN to use for the entry, or <CODE>null</CODE> if the raw
   *          newRDN has not yet been processed.
   */
  @Override
  RDN getNewRDN();
@@ -98,6 +102,7 @@
   * @return  <CODE>true</CODE> if the current RDN value should be removed from
   *          the entry, or <CODE>false</CODE> if not.
   */
  @Override
  boolean deleteOldRDN();
  /**
@@ -116,6 +121,7 @@
   * @return  The raw, unprocessed newSuperior from the client request, or
   *          <CODE>null</CODE> if there is none.
   */
  @Override
  ByteString getRawNewSuperior();
  /**
@@ -138,6 +144,7 @@
   *          no newSuperior DN for this request or if the raw newSuperior has
   *          not yet been processed.
   */
  @Override
  DN getNewSuperior();
  /**
@@ -185,6 +192,7 @@
   * @return  The current entry, or <CODE>null</CODE> if it is not yet
   *           available.
   */
  @Override
  Entry getOriginalEntry();
@@ -196,6 +204,7 @@
   * @return  The updated entry, or <CODE>null</CODE> if it is not yet
   *           available.
   */
  @Override
  Entry getUpdatedEntry();
  /**
@@ -206,6 +215,7 @@
   *          authorization has been requested, or {@code null} if proxied
   *          authorization has not been requested.
   */
  @Override
  DN getProxiedAuthorizationDN();
@@ -217,6 +227,7 @@
   *            authorization has been requested, or {@code null} if proxied
   *            authorization has not been requested.
   */
  @Override
  void setProxiedAuthorizationDN(DN dn);
}
opendj-server-legacy/src/main/java/org/opends/server/core/ModifyDNOperationBasis.java
@@ -58,19 +58,13 @@
  /** Indicates whether to delete the old RDN value from the entry. */
  private boolean deleteOldRDN;
  /**
   * The raw, unprocessed current DN of the entry as included in the request
   * from the client.
   */
  /** The raw, unprocessed current DN of the entry as included in the request from the client. */
  private ByteString rawEntryDN;
  /** The raw, unprocessed newRDN as included in the request from the client. */
  private ByteString rawNewRDN;
  /**
   * The raw, unprocessed newSuperior as included in the request from the
   * client.
   */
  /** The raw, unprocessed newSuperior as included in the request from the client. */
  private ByteString rawNewSuperior;
  /** The current DN of the entry. */
@@ -123,7 +117,6 @@
  {
    super(clientConnection, operationID, messageID, requestControls);
    this.rawEntryDN      = rawEntryDN;
    this.rawNewRDN       = rawNewRDN;
    this.deleteOldRDN    = deleteOldRDN;
@@ -137,8 +130,6 @@
    modifications    = null;
  }
  /**
   * Creates a new modify DN operation with the provided information.
   *
@@ -163,7 +154,6 @@
  {
    super(clientConnection, operationID, messageID, requestControls);
    this.entryDN      = entryDN;
    this.newRDN       = newRDN;
    this.deleteOldRDN = deleteOldRDN;
@@ -186,14 +176,12 @@
    modifications    = null;
  }
  /** {@inheritDoc} */
  @Override
  public final ByteString getRawEntryDN()
  {
    return rawEntryDN;
  }
  /** {@inheritDoc} */
  @Override
  public final void setRawEntryDN(ByteString rawEntryDN)
  {
@@ -233,7 +221,6 @@
    return rawNewRDN;
  }
  /** {@inheritDoc} */
  @Override
  public final void setRawNewRDN(ByteString rawNewRDN)
  {
@@ -243,7 +230,6 @@
    newDN = null;
  }
  /** {@inheritDoc} */
  @Override
  public final RDN getNewRDN()
  {
@@ -264,28 +250,24 @@
    return newRDN;
  }
  /** {@inheritDoc} */
  @Override
  public final boolean deleteOldRDN()
  {
    return deleteOldRDN;
  }
  /** {@inheritDoc} */
  @Override
  public final void setDeleteOldRDN(boolean deleteOldRDN)
  {
    this.deleteOldRDN = deleteOldRDN;
  }
  /** {@inheritDoc} */
  @Override
  public final ByteString getRawNewSuperior()
  {
    return rawNewSuperior;
  }
  /** {@inheritDoc} */
  @Override
  public final void setRawNewSuperior(ByteString rawNewSuperior)
  {
@@ -311,7 +293,6 @@
    return modifications;
  }
  /** {@inheritDoc} */
  @Override
  public final void addModification(Modification modification)
  {
@@ -325,21 +306,18 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public final Entry getOriginalEntry()
  {
    return null;
  }
  /** {@inheritDoc} */
  @Override
  public final Entry getUpdatedEntry()
  {
    return null;
  }
  /** {@inheritDoc} */
  @Override
  public final OperationType getOperationType()
  {
@@ -349,35 +327,30 @@
    return OperationType.MODIFY_DN;
  }
  /** {@inheritDoc} */
  @Override
  public DN getProxiedAuthorizationDN()
  {
    return proxiedAuthorizationDN;
  }
  /** {@inheritDoc} */
  @Override
  public final List<Control> getResponseControls()
  {
    return responseControls;
  }
  /** {@inheritDoc} */
  @Override
  public final void addResponseControl(Control control)
  {
    responseControls.add(control);
  }
  /** {@inheritDoc} */
  @Override
  public final void removeResponseControl(Control control)
  {
    responseControls.remove(control);
  }
  /**
   * Performs the work of actually processing this operation.  This
   * should include all processing for the operation, including
@@ -463,7 +436,6 @@
    }
  }
  /**
   * Invokes the post response plugins. If a workflow has been executed
   * then invoke the post response plugins provided by the workflow
@@ -500,7 +472,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void updateOperationErrMsgAndResCode()
  {
@@ -508,7 +479,6 @@
    appendErrorMessage(ERR_MODDN_NO_BACKEND_FOR_CURRENT_ENTRY.get(entryDN));
  }
  /** {@inheritDoc} */
  @Override
  public final void toString(StringBuilder buffer)
  {
@@ -531,14 +501,12 @@
    buffer.append(")");
  }
  /** {@inheritDoc} */
  @Override
  public void setProxiedAuthorizationDN(DN dn)
  {
    proxiedAuthorizationDN = dn;
  }
  /** {@inheritDoc} */
  @Override
  public DN getNewDN()
  {
@@ -567,6 +535,4 @@
    }
    return newDN;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/ModifyDNOperationWrapper.java
@@ -31,7 +31,6 @@
public abstract class ModifyDNOperationWrapper extends
    OperationWrapper<ModifyDNOperation> implements ModifyDNOperation
{
  /**
   * Creates a new moddn operation based on the provided moddn operation.
   *
@@ -42,101 +41,84 @@
    super(modifyDN);
  }
  /** {@inheritDoc} */
  @Override
  public void addModification(Modification modification) {
    getOperation().addModification(modification);
  }
  /** {@inheritDoc} */
  @Override
  public boolean deleteOldRDN() {
    return getOperation().deleteOldRDN();
  }
  /** {@inheritDoc} */
  @Override
  public DN getEntryDN() {
    return getOperation().getEntryDN();
  }
  /** {@inheritDoc} */
  @Override
  public List<Modification> getModifications() {
    return getOperation().getModifications();
  }
  /** {@inheritDoc} */
  @Override
  public RDN getNewRDN() {
    return getOperation().getNewRDN();
  }
  /** {@inheritDoc} */
  @Override
  public DN getNewSuperior() {
    return getOperation().getNewSuperior();
  }
  /** {@inheritDoc} */
  @Override
  public Entry getOriginalEntry() {
    return getOperation().getOriginalEntry();
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getRawEntryDN() {
    return getOperation().getRawEntryDN();
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getRawNewRDN() {
    return getOperation().getRawNewRDN();
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getRawNewSuperior() {
    return getOperation().getRawNewSuperior();
  }
  /** {@inheritDoc} */
  @Override
  public Entry getUpdatedEntry() {
    return getOperation().getUpdatedEntry();
  }
  /** {@inheritDoc} */
  @Override
  public void setDeleteOldRDN(boolean deleteOldRDN) {
    getOperation().setDeleteOldRDN(deleteOldRDN);
  }
  /** {@inheritDoc} */
  @Override
  public void setRawEntryDN(ByteString rawEntryDN) {
    getOperation().setRawEntryDN(rawEntryDN);
  }
  /** {@inheritDoc} */
  @Override
  public void setRawNewRDN(ByteString rawNewRDN) {
    getOperation().setRawNewRDN(rawNewRDN);
  }
  /** {@inheritDoc} */
  @Override
  public void setRawNewSuperior(ByteString rawNewSuperior) {
    getOperation().setRawNewSuperior(rawNewSuperior);
  }
  /** {@inheritDoc} */
  @Override
  public DN getNewDN()
  {
    return getOperation().getNewDN();
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/ModifyOperation.java
@@ -113,6 +113,7 @@
   *          authorization has been requested, or {@code null} if proxied
   *          authorization has not been requested.
   */
  @Override
  DN getProxiedAuthorizationDN();
  /**
@@ -124,6 +125,7 @@
   *          authorization has been requested, or {@code null} if proxied
   *          authorization has not been requested.
   */
  @Override
  void setProxiedAuthorizationDN(DN proxiedAuthorizationDN);
}
opendj-server-legacy/src/main/java/org/opends/server/core/ModifyOperationWrapper.java
@@ -30,7 +30,6 @@
public abstract class ModifyOperationWrapper extends
    OperationWrapper<ModifyOperation> implements ModifyOperation
{
  /**
   * Creates a new modify operation based on the provided modify operation.
   *
@@ -41,7 +40,6 @@
    super(modify);
  }
  /** {@inheritDoc} */
  @Override
  public void addModification(Modification modification)
    throws DirectoryException
@@ -49,60 +47,51 @@
    getOperation().addModification(modification);
  }
  /** {@inheritDoc} */
  @Override
  public void addRawModification(RawModification rawModification)
  {
    getOperation().addRawModification(rawModification);
  }
  /** {@inheritDoc} */
  @Override
  public DN getEntryDN()
  {
    return getOperation().getEntryDN();
  }
  /** {@inheritDoc} */
  @Override
  public List<Modification> getModifications()
  {
    return getOperation().getModifications();
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getRawEntryDN()
  {
    return getOperation().getRawEntryDN();
  }
  /** {@inheritDoc} */
  @Override
  public List<RawModification> getRawModifications()
  {
    return getOperation().getRawModifications();
  }
  /** {@inheritDoc} */
  @Override
  public void setRawEntryDN(ByteString rawEntryDN)
  {
    getOperation().setRawEntryDN(rawEntryDN);
  }
  /** {@inheritDoc} */
  @Override
  public void setRawModifications(List<RawModification> rawModifications)
  {
    getOperation().setRawModifications(rawModifications);
  }
  /** {@inheritDoc} */
  @Override
  public String toString()
  {
    return getOperation().toString();
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/MonitorConfigManager.java
@@ -48,15 +48,10 @@
       implements ConfigurationChangeListener<MonitorProviderCfg>,
                  ConfigurationAddListener<MonitorProviderCfg>,
                  ConfigurationDeleteListener<MonitorProviderCfg>
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * A mapping between the DNs of the config entries and the associated monitor
   * providers.
   */
  /** A mapping between the DNs of the config entries and the associated monitor providers. */
  private final ConcurrentHashMap<DN,MonitorProvider<?>> monitors;
  private final ServerContext serverContext;
@@ -91,7 +86,6 @@
    rootConfiguration.addMonitorProviderAddListener(this);
    rootConfiguration.addMonitorProviderDeleteListener(this);
    //Initialize the existing monitor providers.
    for (String name : rootConfiguration.listMonitorProviders())
    {
@@ -118,9 +112,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(
                      MonitorProviderCfg configuration,
@@ -146,9 +137,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(
                                 MonitorProviderCfg configuration)
@@ -186,9 +174,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(
                      MonitorProviderCfg configuration,
@@ -198,9 +183,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(
                                 MonitorProviderCfg configuration)
@@ -217,9 +199,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      MonitorProviderCfg configuration,
@@ -245,9 +224,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                                 MonitorProviderCfg configuration)
@@ -274,7 +250,6 @@
      return ccr;
    }
    // Get the class for the monitor provider.  If the monitor is already
    // enabled, then we shouldn't do anything with it although if the class has
    // changed then we'll at least need to indicate that administrative action
@@ -311,8 +286,6 @@
    return ccr;
  }
  /**
   * Loads the specified class, instantiates it as a monitor provider, and
   * optionally initializes that instance.
@@ -358,4 +331,3 @@
    }
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/OperationWrapper.java
@@ -48,7 +48,6 @@
  /** The wrapped operation. */
  private W operation;
  /**
   * Creates a new generic operation wrapper.
   *
@@ -59,49 +58,42 @@
    this.operation = operation;
  }
  /** {@inheritDoc} */
  @Override
  public void addRequestControl(Control control)
  {
    operation.addRequestControl(control);
  }
  /** {@inheritDoc} */
  @Override
  public void addResponseControl(Control control)
  {
    operation.addResponseControl(control);
  }
  /** {@inheritDoc} */
  @Override
  public void appendErrorMessage(LocalizableMessage message)
  {
    operation.appendErrorMessage(message);
  }
  /** {@inheritDoc} */
  @Override
  public void appendMaskedErrorMessage(LocalizableMessage maskedMessage)
  {
    operation.appendMaskedErrorMessage(maskedMessage);
  }
  /** {@inheritDoc} */
  @Override
  public CancelResult cancel(CancelRequest cancelRequest)
  {
    return operation.cancel(cancelRequest);
  }
  /** {@inheritDoc} */
  @Override
  public void abort(CancelRequest cancelRequest)
  {
    operation.abort(cancelRequest);
  }
  /** {@inheritDoc} */
  @Override
  public void disconnectClient(
          DisconnectReason disconnectReason,
@@ -113,112 +105,96 @@
      disconnectReason, sendNotification, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean dontSynchronize()
  {
    return operation.dontSynchronize();
  }
  /** {@inheritDoc} */
  @Override
  public <T> T getAttachment(String name)
  {
    return operation.getAttachment(name);
  }
  /** {@inheritDoc} */
  @Override
  public Map<String, Object> getAttachments()
  {
    return operation.getAttachments();
  }
  /** {@inheritDoc} */
  @Override
  public DN getAuthorizationDN()
  {
    return operation.getAuthorizationDN();
  }
  /** {@inheritDoc} */
  @Override
  public Entry getAuthorizationEntry()
  {
    return operation.getAuthorizationEntry();
  }
  /** {@inheritDoc} */
  @Override
  public DN getProxiedAuthorizationDN()
  {
    return operation.getProxiedAuthorizationDN();
  }
  /** {@inheritDoc} */
  @Override
  public void setProxiedAuthorizationDN(DN proxiedAuthorizationDN)
  {
    operation.setProxiedAuthorizationDN(proxiedAuthorizationDN);
  }
  /** {@inheritDoc} */
  @Override
  public CancelRequest getCancelRequest()
  {
    return operation.getCancelRequest();
  }
  /** {@inheritDoc} */
  @Override
  public CancelResult getCancelResult()
  {
    return operation.getCancelResult();
  }
  /** {@inheritDoc} */
  @Override
  public ClientConnection getClientConnection()
  {
    return operation.getClientConnection();
  }
  /** {@inheritDoc} */
  @Override
  public long getConnectionID()
  {
    return operation.getConnectionID();
  }
  /** {@inheritDoc} */
  @Override
  public LocalizableMessageBuilder getErrorMessage()
  {
    return operation.getErrorMessage();
  }
  /** {@inheritDoc} */
  @Override
  public LocalizableMessageBuilder getMaskedErrorMessage()
  {
    return operation.getMaskedErrorMessage();
  }
  /** {@inheritDoc} */
  @Override
  public ResultCode getMaskedResultCode()
  {
    return operation.getMaskedResultCode();
  }
  /** {@inheritDoc} */
  @Override
  public DN getMatchedDN()
  {
    return operation.getMatchedDN();
  }
  /** {@inheritDoc} */
  @Override
  public int getMessageID()
  {
@@ -235,63 +211,54 @@
    return operation;
  }
  /** {@inheritDoc} */
  @Override
  public long getOperationID()
  {
    return operation.getOperationID();
  }
  /** {@inheritDoc} */
  @Override
  public OperationType getOperationType()
  {
    return operation.getOperationType();
  }
  /** {@inheritDoc} */
  @Override
  public long getProcessingStartTime()
  {
    return operation.getProcessingStartTime();
  }
  /** {@inheritDoc} */
  @Override
  public long getProcessingStopTime()
  {
    return operation.getProcessingStopTime();
  }
  /** {@inheritDoc} */
  @Override
  public long getProcessingTime()
  {
    return operation.getProcessingTime();
  }
  /** {@inheritDoc} */
  @Override
  public long getProcessingNanoTime()
  {
    return operation.getProcessingNanoTime();
  }
  /** {@inheritDoc} */
  @Override
  public List<String> getReferralURLs()
  {
    return operation.getReferralURLs();
  }
  /** {@inheritDoc} */
  @Override
  public List<Control> getRequestControls()
  {
    return operation.getRequestControls();
  }
  /** {@inheritDoc} */
  @Override
  public <T extends Control> T getRequestControl(
      ControlDecoder<T> d)throws DirectoryException
@@ -299,168 +266,144 @@
    return operation.getRequestControl(d);
  }
  /** {@inheritDoc} */
  @Override
  public List<Control> getResponseControls()
  {
    return operation.getResponseControls();
  }
  /** {@inheritDoc} */
  @Override
  public ResultCode getResultCode()
  {
    return operation.getResultCode();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isInnerOperation()
  {
    return operation.isInnerOperation();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isInternalOperation()
  {
    return operation.isInternalOperation();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isSynchronizationOperation()
  {
    return operation.isSynchronizationOperation();
  }
  /** {@inheritDoc} */
  @Override
  public void operationCompleted()
  {
    operation.operationCompleted();
  }
  /** {@inheritDoc} */
  @Override
  public <T> T removeAttachment(String name)
  {
    return operation.removeAttachment(name);
  }
  /** {@inheritDoc} */
  @Override
  public void removeResponseControl(Control control)
  {
    operation.removeResponseControl(control);
  }
  /** {@inheritDoc} */
  @Override
  public <T> T setAttachment(String name, Object value)
  {
    return operation.setAttachment(name, value);
  }
  /** {@inheritDoc} */
  @Override
  public void setAttachments(Map<String, Object> attachments)
  {
    operation.setAttachments(attachments);
  }
  /** {@inheritDoc} */
  @Override
  public void setAuthorizationEntry(Entry authorizationEntry)
  {
    operation.setAuthorizationEntry(authorizationEntry);
  }
  /** {@inheritDoc} */
  @Override
  public void setDontSynchronize(boolean dontSynchronize)
  {
    operation.setDontSynchronize(dontSynchronize);
  }
  /** {@inheritDoc} */
  @Override
  public void setErrorMessage(LocalizableMessageBuilder errorMessage)
  {
    operation.setErrorMessage(errorMessage);
  }
  /** {@inheritDoc} */
  @Override
  public void setInnerOperation(boolean isInnerOperation)
  {
    operation.setInnerOperation(isInnerOperation);
  }
  /** {@inheritDoc} */
  @Override
  public void setInternalOperation(boolean isInternalOperation)
  {
    operation.setInternalOperation(isInternalOperation);
  }
  /** {@inheritDoc} */
  @Override
  public void setMaskedErrorMessage(LocalizableMessageBuilder maskedErrorMessage)
  {
    operation.setMaskedErrorMessage(maskedErrorMessage);
  }
  /** {@inheritDoc} */
  @Override
  public void setMaskedResultCode(ResultCode maskedResultCode)
  {
    operation.setMaskedResultCode(maskedResultCode);
  }
  /** {@inheritDoc} */
  @Override
  public void setMatchedDN(DN matchedDN)
  {
    operation.setMatchedDN(matchedDN);
  }
  /** {@inheritDoc} */
  @Override
  public void setReferralURLs(List<String> referralURLs)
  {
    operation.setReferralURLs(referralURLs);
  }
  /** {@inheritDoc} */
  @Override
  public void setResponseData(DirectoryException directoryException)
  {
    operation.setResponseData(directoryException);
  }
  /** {@inheritDoc} */
  @Override
  public void setResultCode(ResultCode resultCode)
  {
    operation.setResultCode(resultCode);
  }
  /** {@inheritDoc} */
  @Override
  public void setSynchronizationOperation(boolean isSynchronizationOperation)
  {
    operation.setSynchronizationOperation(isSynchronizationOperation);
  }
  /** {@inheritDoc} */
  @Override
  public final int hashCode()
  {
    return getClientConnection().hashCode() * (int) getOperationID();
  }
  /** {@inheritDoc} */
  @Override
  public final boolean equals(Object obj)
  {
@@ -481,54 +424,45 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public String toString()
  {
    return "Wrapped " + operation;
  }
  /** {@inheritDoc} */
  @Override
  public void toString(StringBuilder buffer)
  {
    operation.toString(buffer);
  }
  /** {@inheritDoc} */
  @Override
  final synchronized public void checkIfCanceled(boolean signalTooLate)
      throws CanceledOperationException {
    operation.checkIfCanceled(signalTooLate);
  }
  /** {@inheritDoc} */
  @Override
  public void registerPostResponseCallback(Runnable callback)
  {
    operation.registerPostResponseCallback(callback);
  }
  /** {@inheritDoc} */
  @Override
  public void run()
  {
    operation.run();
  }
  /** {@inheritDoc} */
  @Override
  public List<AdditionalLogItem> getAdditionalLogItems()
  {
    return operation.getAdditionalLogItems();
  }
  /** {@inheritDoc} */
  @Override
  public void addAdditionalLogItem(AdditionalLogItem item)
  {
    operation.addAdditionalLogItem(item);
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/PasswordGeneratorConfigManager.java
@@ -52,13 +52,9 @@
       ConfigurationDeleteListener<PasswordGeneratorCfg>,
       ConfigurationChangeListener<PasswordGeneratorCfg>
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * A mapping between the DNs of the config entries and the associated password
   * generators.
   */
  /** A mapping between the DNs of the config entries and the associated password generators. */
  private final ConcurrentHashMap<DN,PasswordGenerator> passwordGenerators;
  private final ServerContext serverContext;
@@ -94,7 +90,6 @@
    rootConfiguration.addPasswordGeneratorAddListener(this);
    rootConfiguration.addPasswordGeneratorDeleteListener(this);
    //Initialize the existing password generators.
    for (String generatorName : rootConfiguration.listPasswordGenerators())
    {
@@ -123,7 +118,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      PasswordGeneratorCfg configuration,
@@ -149,20 +143,16 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                                 PasswordGeneratorCfg configuration)
  {
    final ConfigChangeResult ccr = new ConfigChangeResult();
    // Get the existing generator if it's already enabled.
    PasswordGenerator existingGenerator =
         passwordGenerators.get(configuration.dn());
    // If the new configuration has the generator disabled, then disable it if
    // it is enabled, or do nothing if it's already disabled.
    if (! configuration.isEnabled())
@@ -182,7 +172,6 @@
      return ccr;
    }
    // Get the class for the password generator.  If the generator is already
    // enabled, then we shouldn't do anything with it although if the class has
    // changed then we'll at least need to indicate that administrative action
@@ -220,7 +209,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(
                      PasswordGeneratorCfg configuration,
@@ -246,8 +234,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(
                                 PasswordGeneratorCfg configuration)
@@ -287,7 +273,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(
      PasswordGeneratorCfg configuration, List<LocalizableMessage> unacceptableReasons)
@@ -296,8 +281,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(
      PasswordGeneratorCfg configuration)
@@ -375,4 +358,3 @@
    }
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/PasswordPolicy.java
@@ -34,20 +34,15 @@
 */
public abstract class PasswordPolicy extends AuthenticationPolicy
{
  /** Creates a new password policy. */
  protected PasswordPolicy()
  {
    // Nothing to do.
  }
  /** {@inheritDoc} */
  @Override
  public abstract DN getDN();
  /**
   * Indicates whether the associated password attribute uses the auth password
   * syntax.
@@ -57,8 +52,6 @@
   */
  public abstract boolean isAuthPasswordSyntax();
  /**
   * Retrieves the default set of password storage schemes that will be used for
   * this password policy. The returned set should not be modified by the
@@ -70,8 +63,6 @@
  public abstract List<PasswordStorageScheme<?>>
    getDefaultPasswordStorageSchemes();
  /**
   * Gets the "deprecated-password-storage-scheme" property.
   * <p>
@@ -88,8 +79,6 @@
   */
  public abstract Set<String> getDeprecatedPasswordStorageSchemes();
  /**
   * Indicates whether the specified storage scheme is a default scheme for this
   * password policy.
@@ -102,8 +91,6 @@
   */
  public abstract boolean isDefaultPasswordStorageScheme(String name);
  /**
   * Indicates whether the specified storage scheme is deprecated.
   *
@@ -115,8 +102,6 @@
   */
  public abstract boolean isDeprecatedPasswordStorageScheme(String name);
  /**
   * Retrieves the set of password validators for this password policy. The
   * returned list should not be altered by the caller.
@@ -125,8 +110,6 @@
   */
  public abstract Collection<PasswordValidator<?>> getPasswordValidators();
  /**
   * Retrieves the set of account status notification handlers that should be
   * used with this password policy. The returned list should not be altered by
@@ -138,8 +121,6 @@
  public abstract Collection<AccountStatusNotificationHandler<?>>
    getAccountStatusNotificationHandlers();
  /**
   * Retrieves the password generator that will be used with this password
   * policy.
@@ -149,8 +130,6 @@
   */
  public abstract PasswordGenerator<?> getPasswordGenerator();
  /**
   * Retrieves the time by which all users will be required to change their
   * passwords, expressed in the number of milliseconds since midnight of
@@ -164,8 +143,6 @@
   */
  public abstract long getRequireChangeByTime();
  /**
   * Gets the "allow-expired-password-changes" property.
   * <p>
@@ -176,8 +153,6 @@
   */
  public abstract boolean isAllowExpiredPasswordChanges();
  /**
   * Gets the "allow-multiple-password-values" property.
   * <p>
@@ -193,8 +168,6 @@
   */
  public abstract boolean isAllowMultiplePasswordValues();
  /**
   * Gets the "allow-pre-encoded-passwords" property.
   * <p>
@@ -209,8 +182,6 @@
   */
  public abstract boolean isAllowPreEncodedPasswords();
  /**
   * Gets the "allow-user-password-changes" property.
   * <p>
@@ -223,8 +194,6 @@
   */
  public abstract boolean isAllowUserPasswordChanges();
  /**
   * Gets the "expire-passwords-without-warning" property.
   * <p>
@@ -241,8 +210,6 @@
   */
  public abstract boolean isExpirePasswordsWithoutWarning();
  /**
   * Gets the "force-change-on-add" property.
   * <p>
@@ -254,8 +221,6 @@
   */
  public abstract boolean isForceChangeOnAdd();
  /**
   * Gets the "force-change-on-reset" property.
   * <p>
@@ -269,8 +234,6 @@
   */
  public abstract boolean isForceChangeOnReset();
  /**
   * Gets the "grace-login-count" property.
   * <p>
@@ -283,8 +246,6 @@
   */
  public abstract int getGraceLoginCount();
  /**
   * Gets the "idle-lockout-interval" property.
   * <p>
@@ -301,8 +262,6 @@
   */
  public abstract long getIdleLockoutInterval();
  /**
   * Gets the "last-login-time-attribute" property.
   * <p>
@@ -317,8 +276,6 @@
   */
  public abstract AttributeType getLastLoginTimeAttribute();
  /**
   * Gets the "last-login-time-format" property.
   * <p>
@@ -332,8 +289,6 @@
   */
  public abstract String getLastLoginTimeFormat();
  /**
   * Gets the "lockout-duration" property.
   * <p>
@@ -348,8 +303,6 @@
   */
  public abstract long getLockoutDuration();
  /**
   * Gets the "lockout-failure-count" property.
   * <p>
@@ -363,8 +316,6 @@
   */
  public abstract int getLockoutFailureCount();
  /**
   * Gets the "lockout-failure-expiration-interval" property.
   * <p>
@@ -381,8 +332,6 @@
   */
  public abstract long getLockoutFailureExpirationInterval();
  /**
   * Gets the "max-password-age" property.
   * <p>
@@ -398,8 +347,6 @@
   */
  public abstract long getMaxPasswordAge();
  /**
   * Gets the "max-password-reset-age" property.
   * <p>
@@ -413,8 +360,6 @@
   */
  public abstract long getMaxPasswordResetAge();
  /**
   * Gets the "min-password-age" property.
   * <p>
@@ -430,8 +375,6 @@
   */
  public abstract long getMinPasswordAge();
  /**
   * Gets the "password-attribute" property.
   * <p>
@@ -444,8 +387,6 @@
   */
  public abstract AttributeType getPasswordAttribute();
  /**
   * Gets the "password-change-requires-current-password" property.
   * <p>
@@ -458,8 +399,6 @@
   */
  public abstract boolean isPasswordChangeRequiresCurrentPassword();
  /**
   * Gets the "password-expiration-warning-interval" property.
   * <p>
@@ -476,8 +415,6 @@
   */
  public abstract long getPasswordExpirationWarningInterval();
  /**
   * Gets the "password-history-count" property.
   * <p>
@@ -496,8 +433,6 @@
   */
  public abstract int getPasswordHistoryCount();
  /**
   * Gets the "password-history-duration" property.
   * <p>
@@ -515,8 +450,6 @@
   */
  public abstract long getPasswordHistoryDuration();
  /**
   * Gets the "previous-last-login-time-format" property.
   * <p>
@@ -534,8 +467,6 @@
   */
  public abstract SortedSet<String> getPreviousLastLoginTimeFormats();
  /**
   * Gets the "require-secure-authentication" property.
   * <p>
@@ -550,8 +481,6 @@
   */
  public abstract boolean isRequireSecureAuthentication();
  /**
   * Gets the "require-secure-password-changes" property.
   * <p>
@@ -564,8 +493,6 @@
   */
  public abstract boolean isRequireSecurePasswordChanges();
  /**
   * Gets the "skip-validation-for-administrators" property.
   * <p>
@@ -577,8 +504,6 @@
   */
  public abstract boolean isSkipValidationForAdministrators();
  /**
   * Gets the "state-update-failure-policy" property.
   * <p>
@@ -598,17 +523,13 @@
   */
  public abstract StateUpdateFailurePolicy getStateUpdateFailurePolicy();
  /** {@inheritDoc} */
  @Override
  public boolean isPasswordPolicy()
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public PasswordPolicyState createAuthenticationPolicyState(Entry userEntry,
      long time) throws DirectoryException
  {
opendj-server-legacy/src/main/java/org/opends/server/core/PasswordStorageSchemeConfigManager.java
@@ -50,10 +50,7 @@
          ConfigurationAddListener    <PasswordStorageSchemeCfg>,
          ConfigurationDeleteListener <PasswordStorageSchemeCfg>
{
  /**
   * A mapping between the DNs of the config entries and the associated password
   * storage schemes.
   */
  /** A mapping between the DNs of the config entries and the associated password storage schemes. */
  private final ConcurrentHashMap<DN,PasswordStorageScheme> storageSchemes;
  private final ServerContext serverContext;
@@ -70,8 +67,6 @@
    storageSchemes = new ConcurrentHashMap<>();
  }
  /**
   * Initializes all password storage schemes currently defined in the Directory
   * Server configuration.  This should only be called at Directory Server
@@ -113,9 +108,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
      PasswordStorageSchemeCfg configuration,
@@ -145,9 +137,6 @@
    return status;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
      PasswordStorageSchemeCfg configuration
@@ -204,9 +193,6 @@
    return changeResult;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(
      PasswordStorageSchemeCfg configuration,
@@ -245,9 +231,6 @@
    return status;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(
      PasswordStorageSchemeCfg configuration
@@ -279,9 +262,6 @@
    return changeResult;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(
      PasswordStorageSchemeCfg configuration,
@@ -292,9 +272,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(
      PasswordStorageSchemeCfg configuration
@@ -307,8 +284,6 @@
    return changeResult;
  }
  /**
   * Loads the specified class, instantiates it as a password storage scheme,
   * and optionally initializes that instance. Any initialized password
@@ -340,7 +315,6 @@
    DirectoryServer.registerPasswordStorageScheme (configEntryDN, schemeClass);
  }
  /**
   * Loads the specified class, instantiates it as a password storage scheme,
   * and optionally initializes that instance.
@@ -399,7 +373,6 @@
    }
  }
  /**
   * Remove a password storage that has been installed in the server.
   *
@@ -419,4 +392,3 @@
    }
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/PasswordValidatorConfigManager.java
@@ -51,15 +51,10 @@
       implements ConfigurationChangeListener<PasswordValidatorCfg>,
                  ConfigurationAddListener<PasswordValidatorCfg>,
                  ConfigurationDeleteListener<PasswordValidatorCfg>
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * A mapping between the DNs of the config entries and the associated password
   * validators.
   */
  /** A mapping between the DNs of the config entries and the associated password validators. */
  private final ConcurrentHashMap<DN,PasswordValidator> passwordValidators;
  private final ServerContext serverContext;
@@ -95,7 +90,6 @@
    rootConfiguration.addPasswordValidatorAddListener(this);
    rootConfiguration.addPasswordValidatorDeleteListener(this);
    //Initialize the existing password validators.
    for (String validatorName : rootConfiguration.listPasswordValidators())
    {
@@ -124,9 +118,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(
                      PasswordValidatorCfg configuration,
@@ -152,9 +143,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(
                                 PasswordValidatorCfg configuration)
@@ -193,9 +181,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(
                      PasswordValidatorCfg configuration,
@@ -206,9 +191,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(
                                 PasswordValidatorCfg configuration)
@@ -227,9 +209,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      PasswordValidatorCfg configuration,
@@ -255,21 +234,16 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                                 PasswordValidatorCfg configuration)
  {
    final ConfigChangeResult ccr = new ConfigChangeResult();
    // Get the existing validator if it's already enabled.
    PasswordValidator existingValidator =
         passwordValidators.get(configuration.dn());
    // If the new configuration has the validator disabled, then disable it if
    // it is enabled, or do nothing if it's already disabled.
    if (! configuration.isEnabled())
@@ -289,7 +263,6 @@
      return ccr;
    }
    // Get the class for the password validator.  If the validator is already
    // enabled, then we shouldn't do anything with it although if the class has
    // changed then we'll at least need to indicate that administrative action
@@ -327,8 +300,6 @@
    return ccr;
  }
  /**
   * Loads the specified class, instantiates it as a password validator, and
   * optionally initializes that instance.
@@ -386,4 +357,3 @@
    }
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/PersistentSearch.java
@@ -66,7 +66,6 @@
 */
public final class PersistentSearch
{
  /**
   * A cancellation call-back which can be used by work-flow element
   * implementations in order to register for resource cleanup when a
@@ -74,7 +73,6 @@
   */
  public static interface CancellationCallback
  {
    /**
     * The provided persistent search has been cancelled. Any
     * resources associated with the persistent search should be
@@ -87,8 +85,6 @@
  }
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /** Cancel a persistent search. */
  private static synchronized void cancel(PersistentSearch psearch)
  {
@@ -125,10 +121,7 @@
  /** Indicates whether or not this persistent search has already been aborted. */
  private boolean isCancelled;
  /**
   * Indicates whether entries returned should include the entry change
   * notification control.
   */
  /** Indicates whether entries returned should include the entry change notification control. */
  private final boolean returnECs;
  /** The reference to the associated search operation. */
@@ -164,8 +157,6 @@
    this.returnECs = returnECs;
  }
  /**
   * Cancels this persistent search operation. On exit this persistent
   * search will no longer be valid and any resources associated with
@@ -198,8 +189,6 @@
    return new CancelResult(ResultCode.CANCELLED, null);
  }
  /**
   * Gets the message ID associated with this persistent search.
   *
@@ -210,7 +199,6 @@
    return searchOperation.getMessageID();
  }
  /**
   * Get the search operation associated with this persistent search.
   *
@@ -303,8 +291,6 @@
    }
  }
  /**
   * Notifies the persistent searches that an entry has been modified.
   *
@@ -316,8 +302,6 @@
    processModify(entry, entry);
  }
  /**
   * Notifies persistent searches that an entry has been modified.
   *
@@ -426,8 +410,6 @@
    }
  }
  /**
   * Registers a cancellation callback with this persistent search.
   * The cancellation callback will be notified when this persistent
@@ -441,8 +423,6 @@
    cancellationCallbacks.add(callback);
  }
  /**
   * Enable this persistent search. The persistent search will be
   * registered with the client connection and will be prevented from
@@ -456,8 +436,6 @@
    DirectoryServer.registerPersistentSearch();
  }
  /**
   * Retrieves a string representation of this persistent search.
   *
@@ -471,8 +449,6 @@
    return buffer.toString();
  }
  /**
   * Appends a string representation of this persistent search to the
   * provided buffer.
opendj-server-legacy/src/main/java/org/opends/server/core/PluginConfigManager.java
@@ -178,11 +178,7 @@
  private DirectoryServerPlugin[] subordinateDeletePlugins;
  private DirectoryServerPlugin[] intermediateResponsePlugins;
  /**
   * The mapping between the DN of a plugin entry and the plugin instance loaded
   * from that entry.
   */
  /** The mapping between the DN of a plugin entry and the plugin instance loaded from that entry. */
  private ConcurrentHashMap<DN,
               DirectoryServerPlugin<? extends PluginCfg>>
                    registeredPlugins;
@@ -202,10 +198,7 @@
  /** The plugin root configuration read at server startup. */
  private PluginRootCfg pluginRootConfig;
  /**
   * The lock that will provide threadsafe access to the sets of registered
   * plugins.
   */
  /** The lock that will provide threadsafe access to the sets of registered plugins. */
  private ReentrantLock pluginLock;
  private final ServerContext serverContext;
@@ -278,8 +271,6 @@
    skippedPreOperationPlugins = new ConcurrentHashMap<>();
  }
  /**
   * Initializes this plugin configuration manager. This should only be called
   * at Directory Server startup and before user plugins are loaded.
@@ -297,8 +288,6 @@
    pluginRootConfig.addPluginDeleteListener(this);
  }
  /**
   * Initializes any plugins defined in the directory server
   * configuration. This should only be called at Directory Server
@@ -364,8 +353,6 @@
    }
  }
  /**
   * Loads the specified class, instantiates it as a plugin, and optionally
   * initializes that plugin.
@@ -431,8 +418,6 @@
    }
  }
  /**
   * Gets the OpenDS plugin type object that corresponds to the configuration
   * counterpart.
@@ -506,11 +491,7 @@
    }
  }
  /**
   * Finalizes all plugins that are registered with the Directory Server.
   */
  /** Finalizes all plugins that are registered with the Directory Server. */
  public void finalizePlugins()
  {
    pluginLock.lock();
@@ -537,8 +518,6 @@
    }
  }
  /**
   * Retrieves the set of plugins that have been registered with the Directory
   * Server.
@@ -553,8 +532,6 @@
    return registeredPlugins;
  }
  /**
   * Retrieves the plugin with the specified configuration entry DN.
   *
@@ -569,8 +546,6 @@
    return registeredPlugins.get(pluginDN);
  }
  /**
   * Registers the provided internal plugin with this plugin config
   * manager and ensures that it will be invoked in the specified ways.
@@ -593,8 +568,6 @@
    }
  }
  /**
   * Register a plugin in the appropriate tables.
   *
@@ -885,8 +858,6 @@
    }
  }
  /**
   * Registers the provided plugin with this plugin config manager and
   * ensures that it will be invoked in the specified ways.
@@ -915,8 +886,6 @@
    }
  }
  /**
   * Adds the provided plugin to the given array.  The provided array will not
   * itself be modified, but rather a new array will be created with one
@@ -1043,7 +1012,6 @@
        }
      }
      // Parse the array of already registered plugins to sort them accordingly.
      HashMap<String,DirectoryServerPlugin> initialPlugins = new HashMap<>(initialPluginNames.size());
      HashMap<String,DirectoryServerPlugin> finalPlugins = new HashMap<>(finalPluginNames.size());
@@ -1066,7 +1034,6 @@
        }
      }
      // Get the name of the provided plugin from its RDN value and put it in
      // the correct category.
      DN dn = plugin.getPluginEntryDN();
@@ -1084,7 +1051,6 @@
        otherPlugins.add(plugin);
      }
      // Compile a list of all the plugins in the correct order, convert it to
      // an array, and return it.
      ArrayList<DirectoryServerPlugin> newList = new ArrayList<>(pluginArray.length + 1);
@@ -1115,8 +1081,6 @@
    }
  }
  /**
   * Deregisters the provided internal plugin.
   *
@@ -1137,8 +1101,6 @@
    }
  }
  /**
   * Deregisters the plugin with the provided configuration entry DN.
   *
@@ -1165,8 +1127,6 @@
    }
  }
  /**
   * Deregisters the provided plugin.
   *
@@ -1384,8 +1344,6 @@
    }
  }
  /**
   * Removes the provided plugin from the given array.  The provided array will
   * not itself be modified, but rather a new array will be created with one
@@ -1417,14 +1375,12 @@
      return pluginArray;
    }
    // If it was the only element in the array, then return an empty array.
    if (length == 0)
    {
      return new DirectoryServerPlugin[0];
    }
    // Create an array that's one element smaller and copy the remaining "good"
    // elements into it.
    DirectoryServerPlugin[] newPlugins = new DirectoryServerPlugin[length-1];
@@ -1441,8 +1397,6 @@
    return newPlugins;
  }
  /**
   * Invokes the set of startup plugins that have been registered with the
   * Directory Server.
@@ -1494,8 +1448,6 @@
    return result;
  }
  /**
   * Invokes the set of shutdown plugins that have been configured in the
   * Directory Server.
@@ -1518,8 +1470,6 @@
    }
  }
  /**
   * Invokes the set of post-connect plugins that have been configured in the
   * Directory Server.
@@ -1554,7 +1504,6 @@
            DisconnectReason.SERVER_ERROR, true, message);
      }
      if (result == null)
      {
        LocalizableMessage message = ERR_PLUGIN_POST_CONNECT_PLUGIN_RETURNED_NULL.
@@ -1580,8 +1529,6 @@
    return result;
  }
  /**
   * Invokes the set of post-disconnect plugins that have been configured in the
   * Directory Server.
@@ -1618,7 +1565,6 @@
                stackTraceToSingleLineString(e));
      }
      if (result == null)
      {
        logger.error(ERR_PLUGIN_POST_DISCONNECT_PLUGIN_RETURNED_NULL,
@@ -1642,8 +1588,6 @@
    return result;
  }
  /**
   * Invokes the set of LDIF import plugins that have been configured in the
   * Directory Server.
@@ -1700,8 +1644,6 @@
    return result;
  }
  /**
   * Invokes the LDIF import session finalization of LDIF import plugins that
   * have been configured in the Directory Server.
@@ -1718,8 +1660,6 @@
    }
  }
  /**
   * Invokes the LDIF import session initialization of LDIF import plugins that
   * have been configured in the Directory Server.
@@ -1736,8 +1676,6 @@
    }
  }
  /**
   * Invokes the set of LDIF export plugins that have been configured in the
   * Directory Server.
@@ -1796,8 +1734,6 @@
    return result;
  }
  /**
   * Invokes the set of pre-parse abandon plugins that have been configured in
   * the Directory Server.
@@ -1848,7 +1784,6 @@
    return result;
  }
  private PluginResult.PreParse handlePreParseException(
      Exception e, PreParseOperation operation, DirectoryServerPlugin plugin)
  {
@@ -1878,7 +1813,6 @@
        .getServerErrorResultCode(), message);
  }
  /**
   * Invokes the set of pre-parse add plugins that have been configured in the
   * Directory Server.
@@ -1935,8 +1869,6 @@
    return result;
  }
  /**
   * Invokes the set of pre-parse bind plugins that have been configured in
   * the Directory Server.
@@ -1987,8 +1919,6 @@
    return result;
  }
  /**
   * Invokes the set of pre-parse compare plugins that have been configured in
   * the Directory Server.
@@ -2045,8 +1975,6 @@
    return result;
  }
  /**
   * Invokes the set of pre-parse delete plugins that have been configured in
   * the Directory Server.
@@ -2103,8 +2031,6 @@
    return result;
  }
  /**
   * Invokes the set of pre-parse extended plugins that have been configured in
   * the Directory Server.
@@ -2161,8 +2087,6 @@
    return result;
  }
  /**
   * Invokes the set of pre-parse modify plugins that have been configured in
   * the Directory Server.
@@ -2219,8 +2143,6 @@
    return result;
  }
  /**
   * Invokes the set of pre-parse modify DN plugins that have been configured in
   * the Directory Server.
@@ -2277,8 +2199,6 @@
    return result;
  }
  /**
   * Invokes the set of pre-parse search plugins that have been configured in
   * the Directory Server.
@@ -2335,8 +2255,6 @@
    return result;
  }
  /**
   * Invokes the set of pre-parse unbind plugins that have been configured in
   * the Directory Server.
@@ -2387,8 +2305,6 @@
    return result;
  }
  /**
   * Invokes the set of pre-operation add plugins that have been configured in
   * the Directory Server.
@@ -2450,8 +2366,6 @@
    return result;
  }
  /**
   * Invokes the set of pre-operation bind plugins that have been configured in
   * the Directory Server.
@@ -2508,8 +2422,6 @@
    return result;
  }
  /**
   * Invokes the set of pre-operation compare plugins that have been configured
   * in the Directory Server.
@@ -2569,8 +2481,6 @@
    return result;
  }
  /**
   * Invokes the set of pre-operation delete plugins that have been configured
   * in the Directory Server.
@@ -2669,8 +2579,6 @@
        .getServerErrorResultCode(), message);
  }
  /**
   * Invokes the set of pre-operation extended plugins that have been configured
   * in the Directory Server.
@@ -2734,8 +2642,6 @@
    return result;
  }
  /**
   * Invokes the set of pre-operation modify plugins that have been configured
   * in the Directory Server.
@@ -2798,8 +2704,6 @@
    return result;
  }
  /**
   * Invokes the set of pre-operation modify DN plugins that have been
   * configured in the Directory Server.
@@ -2862,8 +2766,6 @@
    return result;
  }
  /**
   * Invokes the set of pre-operation search plugins that have been configured
   * in the Directory Server.
@@ -2926,8 +2828,6 @@
    return result;
  }
  /**
   * Invokes the set of post-operation abandon plugins that have been configured
   * in the Directory Server.
@@ -2989,8 +2889,6 @@
    return finalResult;
  }
  /**
   * Invokes the set of post-operation add plugins that have been configured in
   * the Directory Server.
@@ -3056,8 +2954,6 @@
    return finalResult;
  }
  /**
   * Invokes the set of post-operation bind plugins that have been configured
   * in the Directory Server.
@@ -3123,8 +3019,6 @@
    return finalResult;
  }
  /**
   * Invokes the set of post-operation compare plugins that have been configured
   * in the Directory Server.
@@ -3265,8 +3159,6 @@
    return finalResult;
  }
  /**
   * Invokes the set of post-operation extended plugins that have been
   * configured in the Directory Server.
@@ -3332,8 +3224,6 @@
    return finalResult;
  }
  /**
   * Invokes the set of post-operation modify plugins that have been configured
   * in the Directory Server.
@@ -3398,8 +3288,6 @@
    return finalResult;
  }
  /**
   * Invokes the set of post-operation modify DN plugins that have been
   * configured in the Directory Server.
@@ -3465,8 +3353,6 @@
    return finalResult;
  }
  /**
   * Invokes the set of post-operation search plugins that have been configured
   * in the Directory Server.
@@ -3532,8 +3418,6 @@
    return finalResult;
  }
  /**
   * Invokes the set of post-operation unbind plugins that have been configured
   * in the Directory Server.
@@ -3599,8 +3483,6 @@
    return finalResult;
  }
  /**
   * Invokes the set of post-response add plugins that have been configured in
   * the Directory Server.
@@ -3651,8 +3533,6 @@
    return result;
  }
  /**
   * Invokes the set of post-response bind plugins that have been configured in
   * the Directory Server.
@@ -3703,8 +3583,6 @@
    return result;
  }
  /**
   * Invokes the set of post-response compare plugins that have been configured
   * in the Directory Server.
@@ -3804,8 +3682,6 @@
    return result;
  }
  /**
   * Invokes the set of post-response extended plugins that have been configured
   * in the Directory Server.
@@ -3856,8 +3732,6 @@
    return result;
  }
  /**
   * Invokes the set of post-response modify plugins that have been configured
   * in the Directory Server.
@@ -3908,8 +3782,6 @@
    return result;
  }
  /**
   * Invokes the set of post-response modify DN plugins that have been
   * configured in the Directory Server.
@@ -3960,8 +3832,6 @@
    return result;
  }
  /**
   * Invokes the set of post-response search plugins that have been configured
   * in the Directory Server.
@@ -4055,8 +3925,6 @@
    }
  }
  /**
   * Invokes the set of post-synchronization delete plugins that have been
   * configured in the Directory Server.
@@ -4103,8 +3971,6 @@
    }
  }
  /**
   * Invokes the set of post-synchronization modify DN plugins that have been
   * configured in the Directory Server.
@@ -4128,8 +3994,6 @@
    }
  }
  /**
   * Invokes the set of search result entry plugins that have been configured
   * in the Directory Server.
@@ -4202,8 +4066,6 @@
    return result;
  }
  /**
   * Invokes the set of search result reference plugins that have been
   * configured in the Directory Server.
@@ -4276,8 +4138,6 @@
    return result;
  }
  /**
   * Invokes the set of subordinate modify DN plugins that have been configured
   * in the Directory Server.
@@ -4355,8 +4215,6 @@
    return result;
  }
  /**
   * Invokes the set of subordinate delete plugins that have been configured
   * in the Directory Server.
@@ -4427,8 +4285,6 @@
    return result;
  }
  /**
   * Invokes the set of intermediate response plugins that have been configured
   * in the Directory Server.
@@ -4493,9 +4349,6 @@
    return result;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(PluginCfg configuration,
                                              List<LocalizableMessage> unacceptableReasons)
@@ -4521,9 +4374,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(
                                 PluginCfg configuration)
@@ -4560,9 +4410,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(
                      PluginCfg configuration,
@@ -4572,9 +4419,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(
                                 PluginCfg configuration)
@@ -4586,9 +4430,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      PluginCfg configuration,
@@ -4615,21 +4456,16 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                                 PluginCfg configuration)
  {
    final ConfigChangeResult ccr = new ConfigChangeResult();
    // Get the existing plugin if it's already enabled.
    DirectoryServerPlugin existingPlugin =
         registeredPlugins.get(configuration.dn());
    // If the new configuration has the plugin disabled, then deregister it if
    // it is enabled, or do nothing if it's already disabled.
    if (! configuration.isEnabled())
@@ -4642,7 +4478,6 @@
      return ccr;
    }
    // Get the class for the identity mapper.  If the mapper is already enabled,
    // then we shouldn't do anything with it although if the class has changed
    // then we'll at least need to indicate that administrative action is
opendj-server-legacy/src/main/java/org/opends/server/core/RootDNConfigManager.java
@@ -47,7 +47,6 @@
       implements ConfigurationChangeListener<RootDNUserCfg>,
                  ConfigurationAddListener<RootDNUserCfg>,
                  ConfigurationDeleteListener<RootDNUserCfg>
{
  /** A mapping between the actual root DNs and their alternate bind DNs. */
  private ConcurrentHashMap<DN,HashSet<DN>> alternateBindDNs;
@@ -92,11 +91,9 @@
    rootPrivilegeChangeListener.setDefaultRootPrivileges(rootDNCfg);
    rootDNCfg.addChangeListener(rootPrivilegeChangeListener);
    rootDNCfg.addRootDNUserAddListener(this);
    rootDNCfg.addRootDNUserDeleteListener(this);
    // Get the set of root users defined below "cn=Root DNs,cn=config".  For
    // each one, register as a change listener, and get the set of alternate
    // bind DNs.
@@ -125,8 +122,6 @@
    }
  }
  /**
   * Retrieves the set of privileges that will be granted to root users by
   * default.
@@ -139,9 +134,6 @@
    return rootPrivilegeChangeListener.getDefaultRootPrivileges();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(RootDNUserCfg configuration,
                                              List<LocalizableMessage> unacceptableReasons)
@@ -163,9 +155,6 @@
    return configAcceptable;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(RootDNUserCfg configuration)
  {
@@ -205,9 +194,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(RootDNUserCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -215,9 +201,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(
                                 RootDNUserCfg configuration)
@@ -239,9 +222,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(RootDNUserCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -264,9 +244,6 @@
    return configAcceptable;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                                 RootDNUserCfg configuration)
@@ -336,4 +313,3 @@
    return ccr;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/RootPrivilegeChangeListener.java
@@ -43,7 +43,6 @@
    defaultRootPrivileges = Privilege.getDefaultRootPrivileges();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(RootDNCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -52,7 +51,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(RootDNCfg configuration)
  {
@@ -72,8 +70,6 @@
    return defaultRootPrivileges;
  }
  /**
   * Specifies the set of privileges that will be automatically granted to root
   * users.
opendj-server-legacy/src/main/java/org/opends/server/core/SASLConfigManager.java
@@ -52,13 +52,9 @@
    ConfigurationAddListener<SASLMechanismHandlerCfg>,
    ConfigurationDeleteListener<SASLMechanismHandlerCfg>
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * A mapping between the DNs of the config entries and the associated SASL
   * mechanism handlers.
   */
  /** A mapping between the DNs of the config entries and the associated SASL mechanism handlers. */
  private final ConcurrentHashMap<DN, SASLMechanismHandler> handlers;
  private final ServerContext serverContext;
@@ -75,8 +71,6 @@
    handlers = new ConcurrentHashMap<>();
  }
  /**
   * Initializes all SASL mechanism handlers currently defined in the Directory
   * Server configuration.  This should only be called at Directory Server
@@ -96,7 +90,6 @@
    rootConfiguration.addSASLMechanismHandlerAddListener(this);
    rootConfiguration.addSASLMechanismHandlerDeleteListener(this);
    //Initialize the existing SASL mechanism handlers.
    for (String handlerName : rootConfiguration.listSASLMechanismHandlers())
    {
@@ -123,9 +116,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(
                      SASLMechanismHandlerCfg configuration,
@@ -151,9 +141,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(
              SASLMechanismHandlerCfg configuration)
@@ -190,9 +177,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(
                      SASLMechanismHandlerCfg configuration,
@@ -203,9 +187,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(
              SASLMechanismHandlerCfg configuration)
@@ -221,9 +202,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      SASLMechanismHandlerCfg configuration,
@@ -249,20 +227,15 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
              SASLMechanismHandlerCfg configuration)
  {
    final ConfigChangeResult ccr = new ConfigChangeResult();
    // Get the existing handler if it's already enabled.
    SASLMechanismHandler existingHandler = handlers.get(configuration.dn());
    // If the new configuration has the handler disabled, then disable it if it
    // is enabled, or do nothing if it's already disabled.
    if (! configuration.isEnabled())
@@ -279,7 +252,6 @@
      return ccr;
    }
    // Get the class for the SASL handler.  If the handler is already enabled,
    // then we shouldn't do anything with it although if the class has changed
    // then we'll at least need to indicate that administrative action is
@@ -315,8 +287,6 @@
    return ccr;
  }
  /**
   * Loads the specified class, instantiates it as a SASL mechanism hanlder, and
   * optionally initializes that instance.
@@ -374,4 +344,3 @@
    }
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/SchemaConfigManager.java
@@ -98,8 +98,6 @@
    }
  }
  /**
   * Retrieves the path to the directory containing the server schema files.
   *
@@ -115,8 +113,6 @@
    return null;
  }
  /**
   * Retrieves a reference to the schema information that has been read from the
   * server configuration.  Note that this information will not be complete
@@ -133,8 +129,6 @@
    return schema;
  }
  /**
   * Initializes all the matching rules defined in the Directory Server
   * configuration.  This should only be called at Directory Server startup.
@@ -153,8 +147,6 @@
    matchingRuleConfigManager.initializeMatchingRules();
  }
  /**
   * Initializes all the attribute syntaxes defined in the Directory Server
   * configuration.  This should only be called at Directory Server startup.
@@ -174,14 +166,9 @@
    syntaxConfigManager.initializeAttributeSyntaxes();
  }
  /**
   * Filter implementation that accepts only ldif files.
   */
  /** Filter implementation that accepts only ldif files. */
  public static class SchemaFileFilter implements FilenameFilter
  {
    /** {@inheritDoc} */
    @Override
    public boolean accept(File directory, String filename)
    {
@@ -189,8 +176,6 @@
    }
  }
  /**
   * Initializes all the attribute type, object class, name form, DIT content
   * rule, DIT structure rule, and matching rule use definitions by reading the
@@ -245,7 +230,6 @@
        throw new InitializationException(message);
      }
      FilenameFilter filter = new SchemaFileFilter();
      File[] schemaInstanceDirFiles =
                schemaInstanceDir.listFiles(filter);
@@ -292,7 +276,6 @@
      throw new InitializationException(message, e);
    }
    // If the oldest and youngest modification timestamps didn't get set for
    // some reason, then set them to the current time.
    if (oldestModificationTime <= 0)
@@ -308,7 +291,6 @@
    schema.setOldestModificationTime(oldestModificationTime);
    schema.setYoungestModificationTime(youngestModificationTime);
    // Iterate through the schema files and read them as an LDIF file containing
    // a single entry.  Then get the attributeTypes and objectClasses attributes
    // from that entry and parse them to initialize the server schema.
@@ -318,8 +300,6 @@
    }
  }
  /**
   * Loads the contents of the specified schema file into the provided schema.
   *
@@ -344,8 +324,6 @@
    return loadSchemaFile(schema, schemaFile, true);
  }
  /**
   * Loads the contents of the specified schema file into the provided schema.
   *
@@ -400,7 +378,6 @@
      }
    }
    // Read the LDIF entry from the file and close the file.
    Entry entry;
    try
@@ -1030,8 +1007,6 @@
    }
  }
  /**
   * This method checks if a given attribute is an attribute that
   * is used by the definition of the schema.
@@ -1064,4 +1039,3 @@
        attributeOid.equals("ldapsyntaxes-oid");
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/SearchOperation.java
@@ -464,6 +464,7 @@
   *          authorization has been requested, or {@code null} if proxied
   *          authorization has not been requested.
   */
  @Override
  DN getProxiedAuthorizationDN();
  /**
@@ -475,6 +476,7 @@
   *          authorization has been requested, or {@code null} if proxied
   *          authorization has not been requested.
   */
  @Override
  void setProxiedAuthorizationDN(DN proxiedAuthorizationDN);
}
opendj-server-legacy/src/main/java/org/opends/server/core/SearchOperationWrapper.java
@@ -34,7 +34,6 @@
public abstract class SearchOperationWrapper extends
    OperationWrapper<SearchOperation> implements SearchOperation
{
  /**
   * Creates a new search operation based on the provided search operation.
   *
@@ -45,14 +44,12 @@
    super(search);
  }
  /** {@inheritDoc} */
  @Override
  public boolean returnEntry(Entry entry, List<Control> controls)
  {
    return getOperation().returnEntry(entry, controls);
  }
  /** {@inheritDoc} */
  @Override
  public boolean returnEntry(Entry entry, List<Control> controls,
                             boolean evaluateAci)
@@ -60,14 +57,12 @@
    return getOperation().returnEntry(entry, controls, evaluateAci);
  }
  /** {@inheritDoc} */
  @Override
  public boolean returnReference(DN dn, SearchResultReference reference)
  {
    return getOperation().returnReference(dn, reference);
  }
  /** {@inheritDoc} */
  @Override
  public boolean returnReference(DN dn, SearchResultReference reference,
                                 boolean evaluateAci)
@@ -75,277 +70,237 @@
    return getOperation().returnReference(dn, reference, evaluateAci);
  }
  /** {@inheritDoc} */
  @Override
  public String toString()
  {
    return getOperation().toString();
  }
  /** {@inheritDoc} */
  @Override
  public Set<String> getAttributes()
  {
    return getOperation().getAttributes();
  }
  /** {@inheritDoc} */
  @Override
  public DN getBaseDN()
  {
    return getOperation().getBaseDN();
  }
  /** {@inheritDoc} */
  @Override
  public DereferenceAliasesPolicy getDerefPolicy()
  {
    return getOperation().getDerefPolicy();
  }
  /** {@inheritDoc} */
  @Override
  public int getEntriesSent()
  {
    return getOperation().getEntriesSent();
  }
  /** {@inheritDoc} */
  @Override
  public SearchFilter getFilter()
  {
    return getOperation().getFilter();
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getRawBaseDN()
  {
    return getOperation().getRawBaseDN();
  }
  /** {@inheritDoc} */
  @Override
  public RawFilter getRawFilter()
  {
    return getOperation().getRawFilter();
  }
  /** {@inheritDoc} */
  @Override
  public int getReferencesSent()
  {
    return getOperation().getReferencesSent();
  }
  /** {@inheritDoc} */
  @Override
  public SearchScope getScope()
  {
    return getOperation().getScope();
  }
  /** {@inheritDoc} */
  @Override
  public int getSizeLimit()
  {
    return getOperation().getSizeLimit();
  }
  /** {@inheritDoc} */
  @Override
  public int getTimeLimit()
  {
    return getOperation().getTimeLimit();
  }
  /** {@inheritDoc} */
  @Override
  public boolean getTypesOnly()
  {
    return getOperation().getTypesOnly();
  }
  /** {@inheritDoc} */
  @Override
  public void sendSearchResultDone()
  {
    getOperation().sendSearchResultDone();
  }
  /** {@inheritDoc} */
  @Override
  public void setAttributes(Set<String> attributes)
  {
    getOperation().setAttributes(attributes);
  }
  /** {@inheritDoc} */
  @Override
  public void setBaseDN(DN baseDN)
  {
    getOperation().setBaseDN(baseDN);
  }
  /** {@inheritDoc} */
  @Override
  public void setDerefPolicy(DereferenceAliasesPolicy derefPolicy)
  {
    getOperation().setDerefPolicy(derefPolicy);
  }
  /** {@inheritDoc} */
  @Override
  public void setRawBaseDN(ByteString rawBaseDN)
  {
    getOperation().setRawBaseDN(rawBaseDN);
  }
  /** {@inheritDoc} */
  @Override
  public void setRawFilter(RawFilter rawFilter)
  {
    getOperation().setRawFilter(rawFilter);
  }
  /** {@inheritDoc} */
  @Override
  public void setScope(SearchScope scope)
  {
    getOperation().setScope(scope);
  }
  /** {@inheritDoc} */
  @Override
  public void setSizeLimit(int sizeLimit)
  {
    getOperation().setSizeLimit(sizeLimit);
  }
  /** {@inheritDoc} */
  @Override
  public void setTimeLimit(int timeLimit)
  {
    getOperation().setTimeLimit(timeLimit);
  }
  /** {@inheritDoc} */
  @Override
  public void setTypesOnly(boolean typesOnly)
  {
    getOperation().setTypesOnly(typesOnly);
  }
  /** {@inheritDoc} */
  @Override
  public void setTimeLimitExpiration(long timeLimitExpiration)
  {
    getOperation().setTimeLimitExpiration(timeLimitExpiration);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isReturnSubentriesOnly()
  {
    return getOperation().isReturnSubentriesOnly();
  }
  /** {@inheritDoc} */
  @Override
  public void setReturnSubentriesOnly(boolean returnLDAPSubentries)
  {
    getOperation().setReturnSubentriesOnly(returnLDAPSubentries);
  }
  /** {@inheritDoc} */
  @Override
  public MatchedValuesControl getMatchedValuesControl()
  {
    return getOperation().getMatchedValuesControl();
  }
  /** {@inheritDoc} */
  @Override
  public void setMatchedValuesControl(MatchedValuesControl controls)
  {
    getOperation().setMatchedValuesControl(controls);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isIncludeUsableControl()
  {
    return getOperation().isIncludeUsableControl();
  }
  /** {@inheritDoc} */
  @Override
  public void setIncludeUsableControl(boolean includeUsableControl)
  {
    getOperation().setIncludeUsableControl(includeUsableControl);
  }
  /** {@inheritDoc} */
  @Override
  public long getTimeLimitExpiration()
  {
    return getOperation().getTimeLimitExpiration();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isClientAcceptsReferrals()
  {
    return getOperation().isClientAcceptsReferrals();
  }
  /** {@inheritDoc} */
  @Override
  public void setClientAcceptsReferrals(boolean clientAcceptReferrals)
  {
    getOperation().setClientAcceptsReferrals(clientAcceptReferrals);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isSendResponse()
  {
    return getOperation().isSendResponse();
  }
  /** {@inheritDoc} */
  @Override
  public void setSendResponse(boolean sendResponse)
  {
    getOperation().setSendResponse(sendResponse);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isRealAttributesOnly(){
    return getOperation().isRealAttributesOnly();
  }
  /** {@inheritDoc} */
  @Override
  public void setRealAttributesOnly(boolean realAttributesOnly){
    getOperation().setRealAttributesOnly(realAttributesOnly);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isVirtualAttributesOnly()
  {
    return getOperation().isVirtualAttributesOnly();
  }
  /** {@inheritDoc} */
  @Override
  public void setVirtualAttributesOnly(boolean virtualAttributesOnly){
    getOperation().setVirtualAttributesOnly(virtualAttributesOnly);
  }
  /** {@inheritDoc} */
  @Override
  public void sendSearchEntry(SearchResultEntry entry)
      throws DirectoryException
@@ -353,12 +308,10 @@
    getOperation().sendSearchEntry(entry);
  }
  /** {@inheritDoc} */
  @Override
  public boolean sendSearchReference(SearchResultReference reference)
      throws DirectoryException
  {
    return getOperation().sendSearchReference(reference);
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/SubentryPasswordPolicy.java
@@ -64,7 +64,7 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  // Password Policy Subentry draft attributes.
  /** Password Policy Subentry draft attributes. */
  private static final String PWD_OC_POLICY = "pwdpolicy";
  private static final String PWD_ATTR_ATTRIBUTE = "pwdattribute";
  private static final String PWD_ATTR_MINAGE = "pwdminage";
@@ -328,8 +328,6 @@
    return null;
  }
  /**
   * Helper method to validate integer values.
   *
@@ -361,8 +359,6 @@
    }
  }
  /**
   * Helper method to retrieve an attribute value from given entry.
   *
@@ -410,14 +406,12 @@
        : getDefaultPasswordPolicy().isAllowUserPasswordChanges();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isExpirePasswordsWithoutWarning()
  {
    return getDefaultPasswordPolicy().isExpirePasswordsWithoutWarning();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isForceChangeOnAdd()
  {
@@ -426,7 +420,6 @@
    return getDefaultPasswordPolicy().isForceChangeOnAdd();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isForceChangeOnReset()
  {
@@ -434,7 +427,6 @@
        : getDefaultPasswordPolicy().isForceChangeOnReset();
  }
  /** {@inheritDoc} */
  @Override
  public int getGraceLoginCount()
  {
@@ -442,28 +434,24 @@
        : getDefaultPasswordPolicy().getGraceLoginCount();
  }
  /** {@inheritDoc} */
  @Override
  public long getIdleLockoutInterval()
  {
    return getDefaultPasswordPolicy().getIdleLockoutInterval();
  }
  /** {@inheritDoc} */
  @Override
  public AttributeType getLastLoginTimeAttribute()
  {
    return getDefaultPasswordPolicy().getLastLoginTimeAttribute();
  }
  /** {@inheritDoc} */
  @Override
  public String getLastLoginTimeFormat()
  {
    return getDefaultPasswordPolicy().getLastLoginTimeFormat();
  }
  /** {@inheritDoc} */
  @Override
  public long getLockoutDuration()
  {
@@ -471,7 +459,6 @@
        : getDefaultPasswordPolicy().getLockoutDuration();
  }
  /** {@inheritDoc} */
  @Override
  public int getLockoutFailureCount()
  {
@@ -479,7 +466,6 @@
        : getDefaultPasswordPolicy().getLockoutFailureCount();
  }
  /** {@inheritDoc} */
  @Override
  public long getLockoutFailureExpirationInterval()
  {
@@ -488,7 +474,6 @@
        : getDefaultPasswordPolicy().getLockoutFailureExpirationInterval();
  }
  /** {@inheritDoc} */
  @Override
  public long getMaxPasswordAge()
  {
@@ -496,14 +481,12 @@
        : getDefaultPasswordPolicy().getMaxPasswordAge();
  }
  /** {@inheritDoc} */
  @Override
  public long getMaxPasswordResetAge()
  {
    return getDefaultPasswordPolicy().getMaxPasswordResetAge();
  }
  /** {@inheritDoc} */
  @Override
  public long getMinPasswordAge()
  {
@@ -511,7 +494,6 @@
        : getDefaultPasswordPolicy().getMinPasswordAge();
  }
  /** {@inheritDoc} */
  @Override
  public AttributeType getPasswordAttribute()
  {
@@ -519,7 +501,6 @@
        : getDefaultPasswordPolicy().getPasswordAttribute();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isPasswordChangeRequiresCurrentPassword()
  {
@@ -528,7 +509,6 @@
        : getDefaultPasswordPolicy().isPasswordChangeRequiresCurrentPassword();
  }
  /** {@inheritDoc} */
  @Override
  public long getPasswordExpirationWarningInterval()
  {
@@ -537,7 +517,6 @@
        : getDefaultPasswordPolicy().getPasswordExpirationWarningInterval();
  }
  /** {@inheritDoc} */
  @Override
  public int getPasswordHistoryCount()
  {
@@ -545,56 +524,48 @@
        : getDefaultPasswordPolicy().getPasswordHistoryCount();
  }
  /** {@inheritDoc} */
  @Override
  public long getPasswordHistoryDuration()
  {
    return getDefaultPasswordPolicy().getPasswordHistoryDuration();
  }
  /** {@inheritDoc} */
  @Override
  public SortedSet<String> getPreviousLastLoginTimeFormats()
  {
    return getDefaultPasswordPolicy().getPreviousLastLoginTimeFormats();
  }
  /** {@inheritDoc} */
  @Override
  public long getRequireChangeByTime()
  {
    return getDefaultPasswordPolicy().getRequireChangeByTime();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isRequireSecureAuthentication()
  {
    return getDefaultPasswordPolicy().isRequireSecureAuthentication();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isRequireSecurePasswordChanges()
  {
    return getDefaultPasswordPolicy().isRequireSecurePasswordChanges();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isSkipValidationForAdministrators()
  {
    return getDefaultPasswordPolicy().isSkipValidationForAdministrators();
  }
  /** {@inheritDoc} */
  @Override
  public StateUpdateFailurePolicy getStateUpdateFailurePolicy()
  {
    return getDefaultPasswordPolicy().getStateUpdateFailurePolicy();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isAuthPasswordSyntax()
  {
@@ -602,42 +573,36 @@
        : getDefaultPasswordPolicy().isAuthPasswordSyntax();
  }
  /** {@inheritDoc} */
  @Override
  public List<PasswordStorageScheme<?>> getDefaultPasswordStorageSchemes()
  {
    return getDefaultPasswordPolicy().getDefaultPasswordStorageSchemes();
  }
  /** {@inheritDoc} */
  @Override
  public Set<String> getDeprecatedPasswordStorageSchemes()
  {
    return getDefaultPasswordPolicy().getDeprecatedPasswordStorageSchemes();
  }
  /** {@inheritDoc} */
  @Override
  public DN getDN()
  {
    return passwordPolicySubentryDN;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isDefaultPasswordStorageScheme(String name)
  {
    return getDefaultPasswordPolicy().isDefaultPasswordStorageScheme(name);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isDeprecatedPasswordStorageScheme(String name)
  {
    return getDefaultPasswordPolicy().isDeprecatedPasswordStorageScheme(name);
  }
  /** {@inheritDoc} */
  @Override
  public Collection<PasswordValidator<?>> getPasswordValidators()
  {
@@ -661,7 +626,6 @@
    return getDefaultPasswordPolicy().getPasswordValidators();
  }
  /**
   * Implementation of a specific Password Validator that reject all
   * password due to mis-configured password policy subentry.
@@ -680,7 +644,6 @@
      pwPolicyName = policyName;
    }
    /** {@inheritDoc} */
    @Override
    public void initializePasswordValidator(PasswordValidatorCfg configuration)
        throws ConfigException, InitializationException
@@ -688,7 +651,6 @@
      // do nothing
    }
    /** {@inheritDoc} */
    @Override
    public boolean passwordIsAcceptable(ByteString newPassword,
                                        Set<ByteString> currentPasswords,
@@ -707,7 +669,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public Collection<AccountStatusNotificationHandler<?>>
    getAccountStatusNotificationHandlers()
@@ -715,11 +676,9 @@
    return getDefaultPasswordPolicy().getAccountStatusNotificationHandlers();
  }
  /** {@inheritDoc} */
  @Override
  public PasswordGenerator<?> getPasswordGenerator()
  {
    return getDefaultPasswordPolicy().getPasswordGenerator();
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/SynchronizationProviderConfigManager.java
@@ -121,9 +121,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
      SynchronizationProviderCfg configuration)
@@ -204,9 +201,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
      SynchronizationProviderCfg configuration,
@@ -216,9 +210,6 @@
        || isJavaClassAcceptable(configuration, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(
    SynchronizationProviderCfg configuration)
@@ -268,9 +259,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(
      SynchronizationProviderCfg configuration,
@@ -280,8 +268,6 @@
        || isJavaClassAcceptable(configuration, unacceptableReasons);
  }
  /**
   * Check if the class provided in the configuration is an acceptable
   * java class for a synchronization provider.
@@ -383,7 +369,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(
      SynchronizationProviderCfg configuration)
@@ -402,9 +387,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(
      SynchronizationProviderCfg configuration,
opendj-server-legacy/src/main/java/org/opends/server/core/TrustManagerProviderConfigManager.java
@@ -52,15 +52,10 @@
       implements ConfigurationChangeListener<TrustManagerProviderCfg>,
                  ConfigurationAddListener<TrustManagerProviderCfg>,
                  ConfigurationDeleteListener<TrustManagerProviderCfg>
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * A mapping between the DNs of the config entries and the associated trust
   * manager providers.
   */
  /** A mapping between the DNs of the config entries and the associated trust manager providers. */
  private final ConcurrentHashMap<DN,TrustManagerProvider> providers;
  private final ServerContext serverContext;
@@ -96,7 +91,6 @@
    rootConfiguration.addTrustManagerProviderAddListener(this);
    rootConfiguration.addTrustManagerProviderDeleteListener(this);
    //Initialize the existing trust manager providers.
    for (String name : rootConfiguration.listTrustManagerProviders())
    {
@@ -124,9 +118,7 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(
          TrustManagerProviderCfg configuration,
          List<LocalizableMessage> unacceptableReasons)
@@ -151,9 +143,7 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(
                                  TrustManagerProviderCfg configuration)
  {
@@ -191,9 +181,7 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(
                      TrustManagerProviderCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -203,9 +191,7 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(
                                 TrustManagerProviderCfg configuration)
  {
@@ -222,9 +208,7 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      TrustManagerProviderCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -249,19 +233,15 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                                 TrustManagerProviderCfg configuration)
  {
    final ConfigChangeResult ccr = new ConfigChangeResult();
    // Get the existing provider if it's already enabled.
    TrustManagerProvider existingProvider = providers.get(configuration.dn());
    // If the new configuration has the provider disabled, then disable it if it
    // is enabled, or do nothing if it's already disabled.
    if (! configuration.isEnabled())
@@ -280,7 +260,6 @@
      return ccr;
    }
    // Get the class for the trust manager provider.  If the provider is already
    // enabled, then we shouldn't do anything with it although if the class has
    // changed then we'll at least need to indicate that administrative action
@@ -317,8 +296,6 @@
    return ccr;
  }
  /**
   * Loads the specified class, instantiates it as a trust manager provider, and
   * optionally initializes that instance.
@@ -376,4 +353,3 @@
    }
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/UnbindOperationBasis.java
@@ -62,7 +62,6 @@
        ERR_CANNOT_CANCEL_UNBIND.get());
  }
  /** {@inheritDoc} */
  @Override
  public final OperationType getOperationType()
  {
@@ -71,20 +70,17 @@
    return OperationType.UNBIND;
  }
  /** {@inheritDoc} */
  @Override
  public DN getProxiedAuthorizationDN()
  {
    return null;
  }
  /** {@inheritDoc} */
  @Override
  public void setProxiedAuthorizationDN(DN proxiedAuthorizationDN)
  {
  }
  /** {@inheritDoc} */
  @Override
  public final List<Control> getResponseControls()
  {
@@ -93,14 +89,12 @@
    return NO_RESPONSE_CONTROLS;
  }
  /** {@inheritDoc} */
  @Override
  public final void addResponseControl(Control control)
  {
    // An unbind operation can never have a response, so just ignore this.
  }
  /** {@inheritDoc} */
  @Override
  public final void removeResponseControl(Control control)
  {
@@ -125,23 +119,19 @@
    logUnbind(this);
    // Check the set of controls included in the request.  If there are any,
    // see if any special processing is needed.
    // NYI
    // Disconnect the client.
    getClientConnection().disconnect(DisconnectReason.UNBIND, false, null);
    // Invoke the post-operation unbind plugins.
    getPluginConfigManager().invokePostOperationUnbindPlugins(this);
    setProcessingStopTime();
  }
  /** {@inheritDoc} */
  @Override
  public final void toString(StringBuilder buffer)
  {
@@ -151,6 +141,4 @@
    buffer.append(operationID);
    buffer.append(")");
  }
}
opendj-server-legacy/src/main/java/org/opends/server/core/VirtualAttributeConfigManager.java
@@ -65,10 +65,7 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * A mapping between the DNs of the config entries and the associated virtual
   * attribute rules.
   */
  /** A mapping between the DNs of the config entries and the associated virtual attribute rules. */
  private final ConcurrentMap<DN, VirtualAttributeRule> rules = new ConcurrentHashMap<>();
  private final ServerContext serverContext;
@@ -103,7 +100,6 @@
    rootConfiguration.addVirtualAttributeAddListener(this);
    rootConfiguration.addVirtualAttributeDeleteListener(this);
    //Initialize the existing virtual attribute providers.
    for (String providerName : rootConfiguration.listVirtualAttributes())
    {
@@ -171,7 +167,6 @@
           cfg.getConflictBehavior());
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAddAcceptable(
                      VirtualAttributeCfg configuration,
@@ -220,7 +215,6 @@
    return filters;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationAdd(
                                 VirtualAttributeCfg configuration)
@@ -270,7 +264,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationDeleteAcceptable(
                      VirtualAttributeCfg configuration,
@@ -280,7 +273,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationDelete(
                                 VirtualAttributeCfg configuration)
@@ -296,7 +288,6 @@
    return ccr;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      VirtualAttributeCfg configuration,
@@ -337,18 +328,15 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                                 VirtualAttributeCfg configuration)
  {
    final ConfigChangeResult ccr = new ConfigChangeResult();
    // Get the existing rule if it's already enabled.
    VirtualAttributeRule existingRule = rules.get(configuration.dn());
    // If the new configuration has the rule disabled, then disable it if it
    // is enabled, or do nothing if it's already disabled.
    if (! configuration.isEnabled())
@@ -362,7 +350,6 @@
      return ccr;
    }
    // Make sure that we can parse all of the search filters.
    Map<LocalizableMessage, DirectoryException> reasons =
        new LinkedHashMap<>();
@@ -403,8 +390,6 @@
    return ccr;
  }
  /**
   * Loads the specified class, instantiates it as a certificate mapper, and
   * optionally initializes that instance.
opendj-server-legacy/src/main/java/org/opends/server/core/WorkQueueConfigManager.java
@@ -30,10 +30,7 @@
import static org.opends.messages.ConfigMessages.*;
import static org.opends.server.util.StaticUtils.*;
/**
 * This class defines a utility that will be used to manage the Directory Server
 * work queue.
 */
/** This class defines a utility that will be used to manage the Directory Server work queue. */
public class WorkQueueConfigManager
       implements ConfigurationChangeListener<WorkQueueCfg>
{
@@ -50,7 +47,6 @@
    this.serverContext = serverContext;
  }
  /**
   * Initializes the Directory Server's work queue.  This should only be called
   * at server startup.
@@ -72,7 +68,6 @@
    WorkQueueCfg workQueueConfig = serverContext.getRootConfig().getWorkQueue();
    workQueueConfig.addChangeListener(this);
    // Get the work queue class, and load and instantiate an instance of it
    // using that configuration.
    WorkQueueCfgDefn definition = WorkQueueCfgDefn.getInstance();
@@ -98,9 +93,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(WorkQueueCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -110,9 +102,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(WorkQueueCfg configuration)
  {
opendj-server-legacy/src/main/java/org/opends/server/extensions/AESPasswordStorageScheme.java
@@ -16,8 +16,6 @@
 */
package org.opends.server.extensions;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.opendj.server.config.server.AESPasswordStorageSchemeCfg;
import org.opends.server.api.PasswordStorageScheme;
@@ -36,8 +34,6 @@
import static org.opends.server.extensions.ExtensionsConstants.*;
import static org.opends.server.util.StaticUtils.*;
/**
 * This class defines a Directory Server password storage scheme that will
 * encode values using the AES reversible encryption algorithm.  This
@@ -49,16 +45,12 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * The reference to the Directory Server crypto manager that we will use to
   * handle the encryption/decryption.
   */
  private CryptoManager cryptoManager;
  /**
   * Creates a new instance of this password storage scheme.  Note that no
   * initialization should be performed here, as all initialization should be
@@ -69,7 +61,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordStorageScheme(
                   AESPasswordStorageSchemeCfg configuration)
@@ -78,14 +69,12 @@
    cryptoManager = DirectoryServer.getCryptoManager();
  }
  /** {@inheritDoc} */
  @Override
  public String getStorageSchemeName()
  {
    return STORAGE_SCHEME_NAME_AES;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePassword(ByteSequence plaintext)
         throws DirectoryException
@@ -118,7 +107,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePasswordWithScheme(ByteSequence plaintext)
         throws DirectoryException
@@ -157,7 +145,6 @@
    return ByteString.valueOfUtf8(buffer);
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordMatches(ByteSequence plaintextPassword,
                                 ByteSequence storedPassword)
@@ -177,14 +164,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isReversible()
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getPlaintextValue(ByteSequence storedPassword)
         throws DirectoryException
@@ -206,7 +191,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean supportsAuthPasswordSyntax()
  {
@@ -214,7 +198,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodeAuthPassword(ByteSequence plaintext)
         throws DirectoryException
@@ -224,7 +207,6 @@
    throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean authPasswordMatches(ByteSequence plaintextPassword,
                                     String authInfo, String authValue)
@@ -233,7 +215,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getAuthPasswordPlaintextValue(String authInfo,
                                                  String authValue)
@@ -244,7 +225,6 @@
    throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isStorageSchemeSecure()
  {
@@ -252,4 +232,3 @@
    return true;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/AttributeValuePasswordValidator.java
@@ -45,11 +45,7 @@
  /** The current configuration for this password validator. */
  private AttributeValuePasswordValidatorCfg currentConfig;
  /**
   * Creates a new instance of this attribute value password validator.
   */
  /** Creates a new instance of this attribute value password validator. */
  public AttributeValuePasswordValidator()
  {
    super();
@@ -58,9 +54,6 @@
    // performed in the initializePasswordValidator() method.
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordValidator(
                   AttributeValuePasswordValidatorCfg configuration)
@@ -69,17 +62,12 @@
    currentConfig = configuration;
  }
  /** {@inheritDoc} */
  @Override
  public void finalizePasswordValidator()
  {
    currentConfig.removeAttributeValueChangeListener(this);
  }
  /**
   * Search for substrings of the password in an Attribute. The search is
   * case-insensitive.
@@ -113,9 +101,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordIsAcceptable(ByteString newPassword,
                                      Set<ByteString> currentPasswords,
@@ -125,7 +110,6 @@
    // Get a handle to the current configuration.
    AttributeValuePasswordValidatorCfg config = currentConfig;
    // Get the string representation (both forward and reversed) for the password.
    final String password = newPassword.toString();
    final String reversed = new StringBuilder(password).reverse().toString();
@@ -165,14 +149,10 @@
      }
    }
    // If we've gotten here, then the password is acceptable.
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(PasswordValidatorCfg configuration,
                                           List<LocalizableMessage> unacceptableReasons)
@@ -182,9 +162,7 @@
    return isConfigurationChangeAcceptable(config, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      AttributeValuePasswordValidatorCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -193,9 +171,7 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                      AttributeValuePasswordValidatorCfg configuration)
  {
opendj-server-legacy/src/main/java/org/opends/server/extensions/Base64PasswordStorageScheme.java
@@ -16,8 +16,6 @@
 */
package org.opends.server.extensions;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.opendj.server.config.server.Base64PasswordStorageSchemeCfg;
import org.opends.server.api.PasswordStorageScheme;
@@ -32,8 +30,6 @@
import static org.opends.messages.ExtensionMessages.*;
import static org.opends.server.extensions.ExtensionsConstants.*;
/**
 * This class defines a Directory Server password storage scheme that will store
 * the values in base64-encoded form.  This is a reversible algorithm that
@@ -45,8 +41,6 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * Creates a new instance of this password storage scheme.  Note that no
   * initialization should be performed here, as all initialization should be
@@ -57,9 +51,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordStorageScheme(
                   Base64PasswordStorageSchemeCfg configuration)
@@ -68,18 +59,12 @@
    // No initialization is required.
  }
  /** {@inheritDoc} */
  @Override
  public String getStorageSchemeName()
  {
    return STORAGE_SCHEME_NAME_BASE64;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePassword(ByteSequence plaintext)
         throws DirectoryException
@@ -87,9 +72,6 @@
    return ByteString.valueOfUtf8(Base64.encode(plaintext));
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePasswordWithScheme(ByteSequence plaintext)
         throws DirectoryException
@@ -103,9 +85,6 @@
    return ByteString.valueOfUtf8(buffer);
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordMatches(ByteSequence plaintextPassword,
                                 ByteSequence storedPassword)
@@ -115,18 +94,12 @@
    return userString.equals(storedString);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isReversible()
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getPlaintextValue(ByteSequence storedPassword)
         throws DirectoryException
@@ -145,9 +118,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean supportsAuthPasswordSyntax()
  {
@@ -155,9 +125,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodeAuthPassword(ByteSequence plaintext)
         throws DirectoryException
@@ -167,9 +134,6 @@
    throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean authPasswordMatches(ByteSequence plaintextPassword,
                                     String authInfo, String authValue)
@@ -178,9 +142,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getAuthPasswordPlaintextValue(String authInfo,
                                                  String authValue)
@@ -191,9 +152,6 @@
    throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isStorageSchemeSecure()
  {
@@ -202,4 +160,3 @@
    return false;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/BlindTrustManagerProvider.java
@@ -16,8 +16,6 @@
 */
package org.opends.server.extensions;
import java.security.cert.X509Certificate;
import javax.net.ssl.TrustManager;
import javax.net.ssl.X509TrustManager;
@@ -28,8 +26,6 @@
import org.opends.server.types.DirectoryException;
import org.opends.server.types.InitializationException;
/**
 * This class provides an implementation of a trust manager provider that will
 * indicate that any certificate presented should be blindly trusted by the
@@ -52,9 +48,6 @@
    // No implementation is required.
  }
  /** {@inheritDoc} */
  @Override
  public void initializeTrustManagerProvider(
                  BlindTrustManagerProviderCfg configuration)
@@ -63,21 +56,12 @@
    // No implementation is required.
  }
  /**
   * Performs any finalization that may be necessary for this trust manager
   * provider.
   */
  @Override
  public void finalizeTrustManagerProvider()
  {
    // No implementation is required.
  }
  /** {@inheritDoc} */
  @Override
  public TrustManager[] getTrustManagers()
         throws DirectoryException
@@ -85,8 +69,6 @@
    return new TrustManager[] { this };
  }
  /**
   * Determines whether an SSL client with the provided certificate chain should
   * be trusted.  In this case, all client certificates will be trusted.
@@ -94,14 +76,13 @@
   * @param  chain     The certificate chain for the SSL client.
   * @param  authType  The authentication type based on the client certificate.
   */
  @Override
  public void checkClientTrusted(X509Certificate[] chain, String authType)
  {
    // As long as we don't throw an exception, then the client certificate will
    // be considered trusted.
  }
  /**
   * Determines whether an SSL server with the provided certificate chain should
   * be trusted.  In this case, all server certificates will be trusted.
@@ -109,14 +90,13 @@
   * @param  chain     The certificate chain for the SSL server.
   * @param  authType  The key exchange algorithm used.
   */
  @Override
  public void checkServerTrusted(X509Certificate[] chain, String authType)
  {
    // As long as we don't throw an exception, then the server certificate will
    // be considered trusted.
  }
  /**
   * Retrieves the set of certificate authority certificates which are trusted
   * for authenticating peers.
@@ -124,9 +104,9 @@
   * @return  An empty array, since we don't care what certificates are
   *          presented because we will trust them all.
   */
  @Override
  public X509Certificate[] getAcceptedIssuers()
  {
    return new X509Certificate[0];
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/BlowfishPasswordStorageScheme.java
@@ -16,8 +16,6 @@
 */
package org.opends.server.extensions;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.opendj.server.config.server.BlowfishPasswordStorageSchemeCfg;
import org.opends.server.api.PasswordStorageScheme;
@@ -36,8 +34,6 @@
import static org.opends.server.extensions.ExtensionsConstants.*;
import static org.opends.server.util.StaticUtils.*;
/**
 * This class defines a Directory Server password storage scheme that will
 * encode values using the Blowfish reversible encryption algorithm.  This
@@ -49,16 +45,12 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * The reference to the Directory Server crypto manager that we will use to
   * handle the encryption/decryption.
   */
  private CryptoManager cryptoManager;
  /**
   * Creates a new instance of this password storage scheme.  Note that no
   * initialization should be performed here, as all initialization should be
@@ -69,9 +61,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordStorageScheme(
                   BlowfishPasswordStorageSchemeCfg configuration)
@@ -80,18 +69,12 @@
    cryptoManager = DirectoryServer.getCryptoManager();
  }
  /** {@inheritDoc} */
  @Override
  public String getStorageSchemeName()
  {
    return STORAGE_SCHEME_NAME_BLOWFISH;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePassword(ByteSequence plaintext)
         throws DirectoryException
@@ -124,9 +107,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePasswordWithScheme(ByteSequence plaintext)
         throws DirectoryException
@@ -166,9 +146,6 @@
    return ByteString.valueOfUtf8(buffer);
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordMatches(ByteSequence plaintextPassword,
                                 ByteSequence storedPassword)
@@ -188,18 +165,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isReversible()
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getPlaintextValue(ByteSequence storedPassword)
         throws DirectoryException
@@ -221,9 +192,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean supportsAuthPasswordSyntax()
  {
@@ -231,9 +199,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodeAuthPassword(ByteSequence plaintext)
         throws DirectoryException
@@ -243,9 +208,6 @@
    throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean authPasswordMatches(ByteSequence plaintextPassword,
                                     String authInfo, String authValue)
@@ -254,9 +216,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getAuthPasswordPlaintextValue(String authInfo,
                                                  String authValue)
@@ -267,9 +226,6 @@
    throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isStorageSchemeSecure()
  {
@@ -277,4 +233,3 @@
    return true;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/CRAMMD5SASLMechanismHandler.java
@@ -84,19 +84,12 @@
  /** The message digest engine that will be used to create the MD5 digests. */
  private MessageDigest md5Digest;
  /**
   * The lock that will be used to provide threadsafe access to the message
   * digest.
   */
  /** The lock that will be used to provide threadsafe access to the message digest. */
  private Object digestLock;
  /**
   * The random number generator that we will use to create the server challenge.
   */
  /** The random number generator that we will use to create the server challenge. */
  private SecureRandom randomGenerator;
  /**
   * Creates a new instance of this SASL mechanism handler.  No initialization
   * should be done in this method, as it should all be performed in the
@@ -107,9 +100,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializeSASLMechanismHandler(
                   CramMD5SASLMechanismHandlerCfg configuration)
@@ -135,14 +125,12 @@
      throw new InitializationException(message, e);
    }
    // Create and fill the iPad and oPad arrays.
    iPad = new byte[HMAC_MD5_BLOCK_LENGTH];
    oPad = new byte[HMAC_MD5_BLOCK_LENGTH];
    Arrays.fill(iPad, CRAMMD5_IPAD_BYTE);
    Arrays.fill(oPad, CRAMMD5_OPAD_BYTE);
    // Get the identity mapper that should be used to find users.
    DN identityMapperDN = configuration.getIdentityMapperDN();
    identityMapper = DirectoryServer.getIdentityMapper(identityMapperDN);
@@ -150,9 +138,6 @@
    DirectoryServer.registerSASLMechanismHandler(SASL_MECHANISM_CRAM_MD5, this);
  }
  /** {@inheritDoc} */
  @Override
  public void finalizeSASLMechanismHandler()
  {
@@ -160,10 +145,6 @@
    DirectoryServer.deregisterSASLMechanismHandler(SASL_MECHANISM_CRAM_MD5);
  }
  /** {@inheritDoc} */
  @Override
  public void processSASLBind(BindOperation bindOperation)
  {
@@ -195,7 +176,6 @@
      return;
    }
    // If we've gotten here, then the client did provide credentials.  First,
    // make sure that we have a stored version of the credentials associated
    // with the client connection.  If not, then it likely means that the client
@@ -224,7 +204,6 @@
    // Wipe out the stored challenge so it can't be used again.
    clientConnection.setSASLAuthStateInfo(null);
    // Now look at the client credentials and make sure that we can decode them.
    // It should be a username followed by a space and a digest string.  Since
    // the username itself may contain spaces but the digest string may not,
@@ -243,7 +222,6 @@
    String userName = credString.substring(0, spacePos);
    String digest   = credString.substring(spacePos+1);
    // Look at the digest portion of the provided credentials.  It must have a
    // length of exactly 32 bytes and be comprised only of hex characters.
    if (digest.length() != 2*MD5_DIGEST_LENGTH)
@@ -274,7 +252,6 @@
      return;
    }
    // Get the user entry for the authentication ID.  Allow for an
    // authentication ID that is just a username (as per the CRAM-MD5 spec), but
    // also allow a value in the authzid form specified in RFC 2829.
@@ -353,7 +330,6 @@
      }
    }
    // At this point, we should have a user entry.  If we don't then fail.
    if (userEntry == null)
    {
@@ -368,7 +344,6 @@
      bindOperation.setSASLAuthUserEntry(userEntry);
    }
    // Get the clear-text passwords from the user entry, if there are any.
    List<ByteString> clearPasswords;
    try
@@ -405,7 +380,6 @@
      return;
    }
    // Iterate through the clear-text values and see if any of them can be used
    // in conjunction with the challenge to construct the provided digest.
    boolean matchFound = false;
@@ -428,7 +402,6 @@
      return;
    }
    // If we've gotten here, then the authentication was successful.
    bindOperation.setResultCode(ResultCode.SUCCESS);
@@ -437,8 +410,6 @@
    bindOperation.setAuthenticationInfo(authInfo);
  }
  /**
   * Generates the appropriate HMAC-MD5 digest for a CRAM-MD5 authentication
   * with the given information.
@@ -456,7 +427,6 @@
    byte[] p = password.toByteArray();
    byte[] c = challenge.toByteArray();
    // Grab a lock to protect the MD5 digest generation.
    synchronized (digestLock)
    {
@@ -467,7 +437,6 @@
        p = md5Digest.digest(p);
      }
      // Create byte arrays with data needed for the hash generation.
      byte[] iPadAndData = new byte[HMAC_MD5_BLOCK_LENGTH + c.length];
      System.arraycopy(iPad, 0, iPadAndData, 0, HMAC_MD5_BLOCK_LENGTH);
@@ -476,7 +445,6 @@
      byte[] oPadAndHash = new byte[HMAC_MD5_BLOCK_LENGTH + MD5_DIGEST_LENGTH];
      System.arraycopy(oPad, 0, oPadAndHash, 0, HMAC_MD5_BLOCK_LENGTH);
      // Iterate through the bytes in the key and XOR them with the iPad and
      // oPad as appropriate.
      for (int i=0; i < p.length; i++)
@@ -485,21 +453,16 @@
        oPadAndHash[i] ^= p[i];
      }
      // Copy an MD5 digest of the iPad-XORed key and the data into the array to
      // be hashed.
      System.arraycopy(md5Digest.digest(iPadAndData), 0, oPadAndHash,
                       HMAC_MD5_BLOCK_LENGTH, MD5_DIGEST_LENGTH);
      // Return an MD5 digest of the resulting array.
      return md5Digest.digest(oPadAndHash);
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isPasswordBased(String mechanism)
  {
@@ -507,9 +470,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isSecure(String mechanism)
  {
@@ -517,9 +477,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(
                      SASLMechanismHandlerCfg configuration,
@@ -530,9 +487,6 @@
    return isConfigurationChangeAcceptable(config, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      CramMD5SASLMechanismHandlerCfg configuration,
@@ -541,9 +495,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
              CramMD5SASLMechanismHandlerCfg configuration)
opendj-server-legacy/src/main/java/org/opends/server/extensions/CancelExtendedOperation.java
@@ -54,7 +54,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializeExtendedOperationHandler(
                   CancelExtendedOperationHandlerCfg config)
@@ -102,19 +101,16 @@
      return;
    }
    // Create the cancel request for the target operation.
    LocalizableMessage cancelReason =
        INFO_EXTOP_CANCEL_REASON.get(operation.getMessageID());
    CancelRequest cancelRequest = new CancelRequest(true, cancelReason);
    // Get the client connection and attempt the cancel.
    ClientConnection clientConnection = operation.getClientConnection();
    CancelResult cancelResult = clientConnection.cancelOperation(idToCancel,
                                                                 cancelRequest);
    // Update the result of the extended operation and return.
    ResultCode resultCode = cancelResult.getResultCode();
    operation.setResultCode(resultCode == ResultCode.CANCELLED
@@ -122,14 +118,12 @@
    operation.appendErrorMessage(cancelResult.getResponseMessage());
  }
  /** {@inheritDoc} */
  @Override
  public String getExtendedOperationOID()
  {
    return OID_CANCEL_REQUEST;
  }
  /** {@inheritDoc} */
  @Override
  public String getExtendedOperationName()
  {
opendj-server-legacy/src/main/java/org/opends/server/extensions/CertificateValidationPolicy.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2006-2008 Sun Microsystems, Inc.
 * Portions Copyright 2015 ForgeRock AS.
 * Portions Copyright 2015-2016 ForgeRock AS.
 */
package org.opends.server.extensions;
@@ -105,6 +105,7 @@
   *
   * @return  The human-readable name for this certificate validation policy.
   */
  @Override
  public String toString()
  {
    return policyName;
opendj-server-legacy/src/main/java/org/opends/server/extensions/CharacterSetPasswordValidator.java
@@ -49,10 +49,7 @@
  /** The current configuration for this password validator. */
  private CharacterSetPasswordValidatorCfg currentConfig;
  /**
   * A mapping between the character sets and the minimum number of characters
   * required for each.
   */
  /** A mapping between the character sets and the minimum number of characters required for each. */
  private HashMap<String,Integer> characterSets;
  /**
@@ -61,11 +58,7 @@
   */
  private HashMap<String,Integer> characterRanges;
  /**
   * Creates a new instance of this character set password validator.
   */
  /** Creates a new instance of this character set password validator. */
  public CharacterSetPasswordValidator()
  {
    super();
@@ -74,9 +67,6 @@
    // performed in the initializePasswordValidator() method.
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordValidator(
                   CharacterSetPasswordValidatorCfg configuration)
@@ -90,18 +80,12 @@
    processCharacterSetsAndRanges(configuration, true);
  }
  /** {@inheritDoc} */
  @Override
  public void finalizePasswordValidator()
  {
    currentConfig.removeCharacterSetChangeListener(this);
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordIsAcceptable(ByteString newPassword,
                                      Set<ByteString> currentPasswords,
@@ -112,7 +96,6 @@
    CharacterSetPasswordValidatorCfg config = currentConfig;
    HashMap<String,Integer> characterSets = this.characterSets;
    // Process the provided password.
    String password = newPassword.toString();
    HashMap<String,Integer> setCounts = new HashMap<>();
@@ -227,7 +210,6 @@
          usedOptionalCharacterSets++;
        }
      }
    }
    // Check minimum optional character sets are present.
@@ -285,8 +267,6 @@
    return true;
  }
  /**
   * Parses the provided configuration and extracts the character set
   * definitions and associated minimum counts from them.
@@ -469,9 +449,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(PasswordValidatorCfg configuration,
                                           List<LocalizableMessage> unacceptableReasons)
@@ -481,9 +458,6 @@
    return isConfigurationChangeAcceptable(config, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      CharacterSetPasswordValidatorCfg configuration,
@@ -504,9 +478,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                      CharacterSetPasswordValidatorCfg configuration)
opendj-server-legacy/src/main/java/org/opends/server/extensions/ClearPasswordStorageScheme.java
@@ -16,8 +16,6 @@
 */
package org.opends.server.extensions;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.opendj.server.config.server.ClearPasswordStorageSchemeCfg;
import org.opends.server.api.PasswordStorageScheme;
@@ -29,8 +27,6 @@
import static org.opends.messages.ExtensionMessages.*;
import static org.opends.server.extensions.ExtensionsConstants.*;
/**
 * This class defines a Directory Server password storage scheme that will store
 * the values in clear-text with no encoding at all.  This is not at all secure
@@ -50,9 +46,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordStorageScheme(
                   ClearPasswordStorageSchemeCfg configuration)
@@ -61,18 +54,12 @@
    // No initialization is required.
  }
  /** {@inheritDoc} */
  @Override
  public String getStorageSchemeName()
  {
    return STORAGE_SCHEME_NAME_CLEAR;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePassword(ByteSequence plaintext)
         throws DirectoryException
@@ -80,9 +67,6 @@
    return plaintext.toByteString();
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePasswordWithScheme(ByteSequence plaintext)
         throws DirectoryException
@@ -96,9 +80,6 @@
    return ByteString.valueOfUtf8(buffer);
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordMatches(ByteSequence plaintextPassword,
                                 ByteSequence storedPassword)
@@ -106,18 +87,12 @@
    return plaintextPassword.equals(storedPassword);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isReversible()
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getPlaintextValue(ByteSequence storedPassword)
         throws DirectoryException
@@ -125,9 +100,6 @@
    return storedPassword.toByteString();
  }
  /** {@inheritDoc} */
  @Override
  public boolean supportsAuthPasswordSyntax()
  {
@@ -135,9 +107,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodeAuthPassword(ByteSequence plaintext)
         throws DirectoryException
@@ -147,9 +116,6 @@
    throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean authPasswordMatches(ByteSequence plaintextPassword,
                                     String authInfo, String authValue)
@@ -158,9 +124,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getAuthPasswordPlaintextValue(String authInfo,
                                                  String authValue)
@@ -171,9 +134,6 @@
    throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isStorageSchemeSecure()
  {
@@ -181,4 +141,3 @@
    return false;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/CollectiveAttributeSubentriesVirtualAttributeProvider.java
@@ -38,10 +38,7 @@
        extends VirtualAttributeProvider<
        CollectiveAttributeSubentriesVirtualAttributeCfg>
{
  /**
   * Creates a new instance of this collectiveAttributeSubentries
   * virtual attribute provider.
   */
  /** Creates a new instance of this collectiveAttributeSubentries virtual attribute provider. */
  public CollectiveAttributeSubentriesVirtualAttributeProvider()
  {
    super();
@@ -50,18 +47,15 @@
    // initializeVirtualAttributeProvider method.
  }
  /** {@inheritDoc} */
  @Override
  public boolean isMultiValued()
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public Attribute getValues(Entry entry, VirtualAttributeRule rule)
  {
    AttributeBuilder builder = new AttributeBuilder(rule.getAttributeType());
    if (!entry.isSubentry() && !entry.isLDAPSubentry())
    {
@@ -80,7 +74,6 @@
    return builder.toAttribute();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isSearchable(VirtualAttributeRule rule,
                              SearchOperation searchOperation,
@@ -89,7 +82,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public void processSearch(VirtualAttributeRule rule,
                            SearchOperation searchOperation)
opendj-server-legacy/src/main/java/org/opends/server/extensions/CryptPasswordStorageScheme.java
@@ -52,16 +52,11 @@
       extends PasswordStorageScheme<CryptPasswordStorageSchemeCfg>
       implements ConfigurationChangeListener<CryptPasswordStorageSchemeCfg>
{
  /**
   * The fully-qualified name of this class for debugging purposes.
   */
  /** The fully-qualified name of this class for debugging purposes. */
  private static final String CLASS_NAME =
       "org.opends.server.extensions.CryptPasswordStorageScheme";
  /**
   * The current configuration for the CryptPasswordStorageScheme.
   */
  /** The current configuration for the CryptPasswordStorageScheme. */
  private CryptPasswordStorageSchemeCfg currentConfig;
  /**
@@ -76,7 +71,6 @@
  private final Object saltLock = new Object();
  private final Crypt crypt = new Crypt();
  /**
   * Creates a new instance of this password storage scheme.  Note that no
   * initialization should be performed here, as all initialization should be
@@ -87,29 +81,22 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordStorageScheme(
                   CryptPasswordStorageSchemeCfg configuration)
         throws ConfigException, InitializationException {
    configuration.addCryptChangeListener(this);
    currentConfig = configuration;
  }
  /** {@inheritDoc} */
  @Override
  public String getStorageSchemeName()
  {
    return STORAGE_SCHEME_NAME_CRYPT;
  }
  /**
   * Encrypt plaintext password with the Unix Crypt algorithm.
   */
  /** Encrypt plaintext password with the Unix Crypt algorithm. */
  private ByteString unixCryptEncodePassword(ByteSequence plaintext)
         throws DirectoryException
  {
@@ -230,7 +217,6 @@
    return ByteString.valueOfUtf8(output);
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePassword(ByteSequence plaintext)
         throws DirectoryException
@@ -254,8 +240,6 @@
    return bytes;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePasswordWithScheme(ByteSequence plaintext)
         throws DirectoryException
@@ -271,9 +255,7 @@
    return ByteString.valueOfUtf8(buffer);
  }
  /**
   * Matches passwords encrypted with the Unix Crypt algorithm.
   */
  /** Matches passwords encrypted with the Unix Crypt algorithm. */
  private boolean unixCryptPasswordMatches(ByteSequence plaintextPassword,
                                 ByteSequence storedPassword)
  {
@@ -370,7 +352,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordMatches(ByteSequence plaintextPassword,
                                 ByteSequence storedPassword)
@@ -394,7 +375,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean supportsAuthPasswordSyntax()
  {
@@ -402,9 +382,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodeAuthPassword(ByteSequence plaintext)
         throws DirectoryException
@@ -414,9 +391,6 @@
    throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean authPasswordMatches(ByteSequence plaintextPassword,
                                     String authInfo, String authValue)
@@ -425,18 +399,12 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isReversible()
  {
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getPlaintextValue(ByteSequence storedPassword)
         throws DirectoryException
@@ -446,9 +414,6 @@
    throw new DirectoryException(ResultCode.CONSTRAINT_VIOLATION, message);
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getAuthPasswordPlaintextValue(String authInfo,
                                                  String authValue)
@@ -459,9 +424,6 @@
    throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isStorageSchemeSecure()
  {
@@ -472,7 +434,6 @@
    // category, but it's certainly a lot more vulnerable to lookup tables
    // than most other algorithms.  I'd say we can keep it this way for now,
    // but it might be something to reconsider later.
    //
    // Currently, this method is unused.  However, the intended purpose is
    // eventually for use in issue #321, where we could do things like prevent
    // even authorized users from seeing the password value over an insecure
@@ -481,7 +442,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(
          PasswordStorageSchemeCfg configuration,
@@ -492,9 +452,6 @@
    return isConfigurationChangeAcceptable(config, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      CryptPasswordStorageSchemeCfg configuration,
@@ -504,7 +461,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                      CryptPasswordStorageSchemeCfg configuration)
opendj-server-legacy/src/main/java/org/opends/server/extensions/DefaultEntryCache.java
@@ -49,7 +49,6 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * The entry cache order array reflects all currently configured and
   * active entry cache implementations in cache level specific order.
@@ -57,10 +56,7 @@
  private static EntryCache<? extends EntryCacheCfg>[] cacheOrder =
    new EntryCache<?>[0];
  /**
   * Creates a new instance of this default entry cache.
   */
  /** Creates a new instance of this default entry cache. */
  public DefaultEntryCache()
  {
    super();
@@ -70,7 +66,6 @@
    DirectoryServer.registerBackendInitializationListener(this);
  }
  /** {@inheritDoc} */
  @Override
  public void initializeEntryCache(EntryCacheCfg configEntry)
         throws ConfigException, InitializationException
@@ -78,7 +73,6 @@
    // No implementation required.
  }
  /** {@inheritDoc} */
  @Override
  public void finalizeEntryCache()
  {
@@ -89,7 +83,6 @@
    cacheOrder = new EntryCache<?>[0];
  }
  /** {@inheritDoc} */
  @Override
  public boolean containsEntry(DN entryDN)
  {
@@ -106,7 +99,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public Entry getEntry(String backendID, long entryID)
  {
@@ -127,7 +119,6 @@
    return null;
  }
  /** {@inheritDoc} */
  @Override
  public Entry getEntry(DN entryDN)
  {
@@ -148,7 +139,6 @@
    return null;
  }
  /** {@inheritDoc} */
  @Override
  public long getEntryID(DN entryDN)
  {
@@ -163,7 +153,6 @@
    return -1;
  }
  /** {@inheritDoc} */
  @Override
  public DN getEntryDN(String backendID, long entryID)
  {
@@ -178,7 +167,6 @@
    return null;
  }
  /** {@inheritDoc} */
  @Override
  public void putEntry(Entry entry, String backendID, long entryID)
  {
@@ -192,7 +180,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean putEntryIfAbsent(Entry entry, String backendID, long entryID)
  {
@@ -208,7 +195,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public void removeEntry(DN entryDN)
  {
@@ -220,7 +206,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void clear()
  {
@@ -229,7 +214,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void clearBackend(String backendID)
  {
@@ -238,7 +222,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void clearSubtree(DN baseDN)
  {
@@ -247,7 +230,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void handleLowMemory()
  {
@@ -256,7 +238,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
      EntryCacheCfg configuration,
@@ -267,7 +248,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(EntryCacheCfg configuration)
  {
@@ -306,7 +286,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public Long getCacheCount()
  {
@@ -317,7 +296,6 @@
    return cacheCount;
  }
  /** {@inheritDoc} */
  @Override
  public String toVerboseString()
  {
@@ -334,8 +312,6 @@
    return verboseString.length() > 0 ? verboseString : null;
  }
  /**
   * Retrieves the current cache order array.
   *
@@ -346,8 +322,6 @@
    return DefaultEntryCache.cacheOrder;
  }
  /**
   * Sets the current cache order array.
   *
@@ -361,8 +335,6 @@
      cacheOrderMap.values().toArray(new EntryCache<?>[0]);
  }
  /**
   * Performs any processing that may be required whenever a backend
   * is initialized for use in the Directory Server.  This method will
@@ -378,8 +350,6 @@
    // Do nothing.
  }
  /**
   * Performs any processing that may be required whenever a backend
   * is finalized.  This method will be invoked after the backend has
opendj-server-legacy/src/main/java/org/opends/server/extensions/DictionaryPasswordValidator.java
@@ -55,11 +55,7 @@
  /** The current dictionary that we should use when performing the validation. */
  private HashSet<String> dictionary;
  /**
   * Creates a new instance of this dictionary password validator.
   */
  /** Creates a new instance of this dictionary password validator. */
  public DictionaryPasswordValidator()
  {
    super();
@@ -68,9 +64,6 @@
    // performed in the initializePasswordValidator() method.
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordValidator(
                   DictionaryPasswordValidatorCfg configuration)
@@ -82,18 +75,12 @@
    dictionary = loadDictionary(configuration);
  }
  /** {@inheritDoc} */
  @Override
  public void finalizePasswordValidator()
  {
    currentConfig.removeDictionaryChangeListener(this);
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordIsAcceptable(ByteString newPassword,
                                      Set<ByteString> currentPasswords,
@@ -142,13 +129,10 @@
      return false;
    }
    // If we've gotten here, then the password is acceptable.
    return true;
  }
  /**
   * Loads the configured dictionary and returns it as a hash set.
   *
@@ -174,7 +158,6 @@
      throw new ConfigException(message);
    }
    // Read the contents of file into the dictionary as per the configuration.
    BufferedReader reader = null;
    HashSet<String> dictionary = new HashSet<>();
@@ -208,9 +191,6 @@
    return dictionary;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(PasswordValidatorCfg configuration,
                                           List<LocalizableMessage> unacceptableReasons)
@@ -220,9 +200,6 @@
    return isConfigurationChangeAcceptable(config, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      DictionaryPasswordValidatorCfg configuration,
@@ -248,9 +225,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                      DictionaryPasswordValidatorCfg configuration)
opendj-server-legacy/src/main/java/org/opends/server/extensions/DigestMD5SASLMechanismHandler.java
@@ -52,7 +52,6 @@
public class DigestMD5SASLMechanismHandler
      extends SASLMechanismHandler<DigestMD5SASLMechanismHandlerCfg>
      implements ConfigurationChangeListener<DigestMD5SASLMechanismHandlerCfg> {
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /** The current configuration for this SASL mechanism handler. */
@@ -73,7 +72,6 @@
  /** Property used to set the realm in the environment. */
  private static final String REALM_PROPERTY = "com.sun.security.sasl.digest.realm";
  /**
   * Creates a new instance of this SASL mechanism handler.  No initialization
   * should be done in this method, as it should all be performed in the
@@ -84,8 +82,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializeSASLMechanismHandler(
          DigestMD5SASLMechanismHandlerCfg configuration)
@@ -117,16 +113,12 @@
      }
  }
  /** {@inheritDoc} */
  @Override
  public void finalizeSASLMechanismHandler() {
    configuration.removeDigestMD5ChangeListener(this);
    DirectoryServer.deregisterSASLMechanismHandler(SASL_MECHANISM_DIGEST_MD5);
  }
  /** {@inheritDoc} */
  @Override
  public void processSASLBind(BindOperation bindOp) {
      ClientConnection clientConnection = bindOp.getClientConnection();
@@ -159,8 +151,6 @@
      }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isPasswordBased(String mechanism)
  {
@@ -168,9 +158,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isSecure(String mechanism)
  {
@@ -178,8 +165,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(
                      SASLMechanismHandlerCfg configuration,
@@ -190,8 +175,6 @@
    return isConfigurationChangeAcceptable(config, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      DigestMD5SASLMechanismHandlerCfg configuration,
@@ -200,8 +183,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
          DigestMD5SASLMechanismHandlerCfg configuration)
@@ -231,7 +212,6 @@
      return ccr;
  }
  /**
   * Retrieves the QOP (quality-of-protection) from the specified
   * configuration.
@@ -251,7 +231,6 @@
      }
  }
  /**
   * Returns the fully qualified name either defined in the configuration, or,
   * determined by examining the system configuration.
@@ -271,7 +250,6 @@
      return serverName;
  }
  /**
   * Retrieve the realm either defined in the specified configuration. If this
   * isn't defined, the SaslServer internal code uses the server name.
opendj-server-legacy/src/main/java/org/opends/server/extensions/DiskSpaceMonitor.java
@@ -80,13 +80,11 @@
      this.handler = handler;
    }
    /** {@inheritDoc} */
    @Override
    public String getMonitorInstanceName() {
      return instanceName + "," + "cn=" + baseName;
    }
    /** {@inheritDoc} */
    @Override
    public void initializeMonitorProvider(MonitorProviderCfg configuration)
        throws ConfigException, InitializationException {
@@ -149,7 +147,7 @@
  private class HandlerNotifier {
    private File directory;
    private int state;
    /** printable list of handlers names, for reporting backend names in alert messages */
    /** Printable list of handlers names, for reporting backend names in alert messages. */
    private final StringBuilder diskNames = new StringBuilder();
    private final List<MonitoredDirectory> allHandlers = new ArrayList<>();
@@ -221,9 +219,7 @@
  {
  }
  /**
   * Starts periodic monitoring of all registered directories.
   */
  /** Starts periodic monitoring of all registered directories. */
  public void startDiskSpaceMonitor()
  {
    DirectoryServer.registerMonitorProvider(this);
@@ -314,7 +310,6 @@
  {
    synchronized (monitoredDirs)
    {
      List<MonitoredDirectory> directories = monitoredDirs.get(directory);
      if (directories != null)
      {
@@ -336,7 +331,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void initializeMonitorProvider(MonitorProviderCfg configuration)
      throws ConfigException, InitializationException {
@@ -456,7 +450,6 @@
    return DiskSpaceMonitor.class.getName();
  }
  /** {@inheritDoc} */
  @Override
  public Map<String, String> getAlerts()
  {
@@ -466,14 +459,12 @@
    return alerts;
  }
  /** {@inheritDoc} */
  @Override
  public String getShutdownListenerName()
  {
    return INSTANCENAME;
  }
  /** {@inheritDoc} */
  @Override
  public void processServerShutdown(LocalizableMessage reason)
  {
opendj-server-legacy/src/main/java/org/opends/server/extensions/DynamicGroup.java
@@ -68,12 +68,7 @@
  /** The set of the LDAP URLs that define the membership criteria. */
  private LinkedHashSet<LDAPURL> memberURLs;
  /**
   * Creates a new, uninitialized dynamic group instance.  This is intended for
   * internal use only.
   */
  /** Creates a new, uninitialized dynamic group instance. This is intended for internal use only. */
  public DynamicGroup()
  {
    super();
@@ -81,8 +76,6 @@
    // No initialization is required here.
  }
  /**
   * Creates a new dynamic group instance with the provided information.
   *
@@ -102,9 +95,6 @@
    this.memberURLs   = memberURLs;
  }
  /** {@inheritDoc} */
  @Override
  public void initializeGroupImplementation(
                   DynamicGroupImplementationCfg configuration)
@@ -113,17 +103,12 @@
    // No additional initialization is required.
  }
  /** {@inheritDoc} */
  @Override
  public DynamicGroup newInstance(ServerContext serverContext, Entry groupEntry)
         throws DirectoryException
  {
    ifNull(groupEntry);
    // Get the memberURL attribute from the entry, if there is one, and parse
    // out the LDAP URLs that it contains.
    LinkedHashSet<LDAPURL> memberURLs = new LinkedHashSet<>();
@@ -147,9 +132,6 @@
    return new DynamicGroup(groupEntry.getName(), memberURLs);
  }
  /** {@inheritDoc} */
  @Override
  public SearchFilter getGroupDefinitionFilter()
         throws DirectoryException
@@ -160,9 +142,6 @@
                                               OC_GROUP_OF_URLS + ")");
  }
  /** {@inheritDoc} */
  @Override
  public boolean isGroupDefinition(Entry entry)
  {
@@ -175,26 +154,18 @@
    return entry.hasObjectClass(groupOfURLsClass);
  }
  /** {@inheritDoc} */
  @Override
  public DN getGroupDN()
  {
    return groupEntryDN;
  }
  /** {@inheritDoc} */
  @Override
  public void setGroupDN(DN groupDN)
  {
    groupEntryDN = groupDN;
  }
  /**
   * Retrieves the set of member URLs for this dynamic group.  The returned set
   * must not be altered by the caller.
@@ -206,9 +177,6 @@
    return memberURLs;
  }
  /** {@inheritDoc} */
  @Override
  public boolean supportsNestedGroups()
  {
@@ -216,9 +184,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public List<DN> getNestedGroupDNs()
  {
@@ -226,9 +191,6 @@
    return Collections.<DN>emptyList();
  }
  /** {@inheritDoc} */
  @Override
  public void addNestedGroup(DN nestedGroupDN)
         throws UnsupportedOperationException, DirectoryException
@@ -238,9 +200,6 @@
    throw new UnsupportedOperationException(message.toString());
  }
  /** {@inheritDoc} */
  @Override
  public void removeNestedGroup(DN nestedGroupDN)
         throws UnsupportedOperationException, DirectoryException
@@ -250,9 +209,6 @@
    throw new UnsupportedOperationException(message.toString());
  }
  /** {@inheritDoc} */
  @Override
  public boolean isMember(DN userDN, Set<DN> examinedGroups)
         throws DirectoryException
@@ -266,9 +222,6 @@
    return entry != null && isMember(entry);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isMember(Entry userEntry, Set<DN> examinedGroups)
         throws DirectoryException
@@ -289,9 +242,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public MemberList getMembers()
         throws DirectoryException
@@ -299,9 +249,6 @@
    return new DynamicGroupMemberList(groupEntryDN, memberURLs);
  }
  /** {@inheritDoc} */
  @Override
  public MemberList getMembers(DN baseDN, SearchScope scope,
                               SearchFilter filter)
@@ -318,18 +265,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean mayAlterMemberList()
  {
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public void updateMembers(List<Modification> modifications)
         throws UnsupportedOperationException, DirectoryException
@@ -339,9 +280,6 @@
    throw new UnsupportedOperationException(message.toString());
  }
  /** {@inheritDoc} */
  @Override
  public void addMember(Entry userEntry)
         throws UnsupportedOperationException, DirectoryException
@@ -351,9 +289,6 @@
    throw new UnsupportedOperationException(message.toString());
  }
  /** {@inheritDoc} */
  @Override
  public void removeMember(DN userDN)
         throws UnsupportedOperationException, DirectoryException
@@ -363,9 +298,6 @@
    throw new UnsupportedOperationException(message.toString());
  }
  /** {@inheritDoc} */
  @Override
  public void toString(StringBuilder buffer)
  {
@@ -391,4 +323,3 @@
    buffer.append("})");
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/DynamicGroupMemberList.java
@@ -68,8 +68,6 @@
  /** The set of LDAP URLs that define the membership criteria. */
  private final Set<LDAPURL> memberURLs;
  /**
   * Creates a new dynamic group member list with the provided information.
   *
@@ -86,8 +84,6 @@
    this(groupDN, memberURLs, null, null, null);
  }
  /**
   * Creates a new dynamic group member list with the provided information.
   *
@@ -126,7 +122,6 @@
    searchesCompleted = false;
    resultQueue = new LinkedBlockingQueue<>(10);
    // We're going to have to perform one or more internal searches in order to
    // get the results.  We need to be careful about the way that we construct
    // them in order to avoid the possibility of getting duplicate results, so
@@ -213,7 +208,6 @@
      }
    }
    // At this point, we should know what base DN(s) we need to use, so we can
    // create the filter to use with that base DN.  There are some special-case
    // optimizations that we can do here, but in general the filter will look
@@ -276,7 +270,6 @@
      searchMap.put(urlBaseDN, combinedFilter);
    }
    // At this point, we should have all the information we need to perform the
    // searches.  Create arrays of the elements for each.
    DN[]           baseDNArray = new DN[baseDNs.size()];
@@ -297,14 +290,11 @@
      }
    }
    DynamicGroupSearchThread searchThread =
         new DynamicGroupSearchThread(this, baseDNArray, filterArray, urlArray);
    searchThread.start();
  }
  /**
   * Retrieves the DN of the dynamic group with which this dynamic group member
   * list is associated.
@@ -317,8 +307,6 @@
    return groupDN;
  }
  /**
   * Indicates that all of the searches needed to iterate across the member list
   * have completed and there will not be any more results provided.
@@ -328,8 +316,6 @@
    searchesCompleted = true;
  }
  /**
   * Adds the provided entry to the set of results that should be returned for
   * this member list.
@@ -355,8 +341,6 @@
    }
  }
  /**
   * Adds the provided membership exception so that it will be thrown along with
   * the set of results for this member list.
@@ -381,9 +365,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean hasMoreMembers()
  {
@@ -403,9 +384,6 @@
    return resultQueue.peek() != null;
  }
  /** {@inheritDoc} */
  @Override
  public Entry nextMemberEntry()
         throws MembershipException
@@ -441,9 +419,6 @@
    return null;
  }
  /** {@inheritDoc} */
  @Override
  public void close()
  {
@@ -451,4 +426,3 @@
    resultQueue.clear();
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/DynamicGroupSearchThread.java
@@ -49,7 +49,6 @@
       extends DirectoryThread
       implements InternalSearchListener
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /** The set of base DNs for the search requests. */
@@ -67,8 +66,6 @@
  /** The set of search filters for the search requests. */
  private final SearchFilter[] searchFilters;
  /**
   * Creates a new dynamic group search thread that is associated with the
   * provided member list and that will perform the search using the provided
@@ -96,12 +93,7 @@
    searchCounter = 0;
  }
  /**
   * Performs the set of searches and provides the results to the associated
   * member list.
   */
  /** Performs the set of searches and provides the results to the associated member list. */
  @Override
  public void run()
  {
@@ -146,9 +138,6 @@
    memberList.setSearchesCompleted();
  }
  /** {@inheritDoc} */
  @Override
  public void handleInternalSearchEntry(InternalSearchOperation searchOperation,
                                        SearchResultEntry searchEntry)
@@ -170,9 +159,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void handleInternalSearchReference(
                   InternalSearchOperation searchOperation,
@@ -181,4 +167,3 @@
    // No implementation required.
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/EntryDNVirtualAttributeProvider.java
@@ -50,9 +50,7 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * Creates a new instance of this entryDN virtual attribute provider.
   */
  /** Creates a new instance of this entryDN virtual attribute provider. */
  public EntryDNVirtualAttributeProvider()
  {
    super();
@@ -61,14 +59,12 @@
    // initializeVirtualAttributeProvider method.
  }
  /** {@inheritDoc} */
  @Override
  public boolean isMultiValued()
  {
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public Attribute getValues(Entry entry, VirtualAttributeRule rule)
  {
@@ -76,7 +72,6 @@
    return Attributes.create(rule.getAttributeType(), dnString);
  }
  /** {@inheritDoc} */
  @Override
  public boolean hasValue(Entry entry, VirtualAttributeRule rule)
  {
@@ -84,7 +79,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public boolean hasValue(Entry entry, VirtualAttributeRule rule, ByteString value)
  {
@@ -103,7 +97,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult matchesSubstring(Entry entry,
                                          VirtualAttributeRule rule,
@@ -115,7 +108,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult greaterThanOrEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -125,7 +117,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult lessThanOrEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -135,7 +126,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult approximatelyEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -145,8 +135,6 @@
    return ConditionResult.UNDEFINED;
  }
  /**
   * {@inheritDoc}.  This virtual attribute will support search operations only
   * if one of the following is true about the search filter:
@@ -168,9 +156,6 @@
    return isSearchable(rule.getAttributeType(), searchOperation.getFilter(), 0);
  }
  /**
   * Indicates whether the provided search filter is one that may be used with
   * this virtual attribute provider, optionally operating in a recursive manner
@@ -227,7 +212,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void processSearch(VirtualAttributeRule rule,
                            SearchOperation searchOperation)
@@ -265,8 +249,6 @@
    }
  }
  /**
   * Extracts the user DNs from the provided filter, operating recursively as
   * necessary, and adds them to the provided set.
opendj-server-legacy/src/main/java/org/opends/server/extensions/ErrorLogAccountStatusNotificationHandler.java
@@ -51,7 +51,6 @@
          ConfigurationChangeListener
          <ErrorLogAccountStatusNotificationHandlerCfg>
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
@@ -67,16 +66,13 @@
    }
  }
  /** The DN of the configuration entry for this notification handler. */
  private DN configEntryDN;
  /** The set of notification types that should generate log messages. */
  private HashSet<AccountStatusNotificationType> notificationTypes;
  /** {@inheritDoc} */
  @Override
  public void initializeStatusNotificationHandler(
      ErrorLogAccountStatusNotificationHandlerCfg configuration
      )
@@ -90,9 +86,7 @@
    processNotificationHandlerConfig (configuration, applyChanges);
  }
  /** {@inheritDoc} */
  @Override
  public void handleStatusNotification(
                   AccountStatusNotification notification)
  {
@@ -103,9 +97,6 @@
                  notification.getMessage());
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(
                      AccountStatusNotificationHandlerCfg configuration,
@@ -116,9 +107,7 @@
    return isConfigurationChangeAcceptable(config, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
      ErrorLogAccountStatusNotificationHandlerCfg configuration,
      List<LocalizableMessage> unacceptableReasons)
@@ -130,8 +119,6 @@
        configuration, applyChanges);
  }
  /**
   * Makes a best-effort attempt to apply the configuration contained in the
   * provided entry.  Information about the result of this processing should be
@@ -155,9 +142,7 @@
    return applyConfigurationChange(configuration);
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange (
      ErrorLogAccountStatusNotificationHandlerCfg configuration
      )
@@ -169,7 +154,6 @@
    return new ConfigChangeResult();
  }
  /**
   * Parses the provided configuration and configure the notification handler.
   *
@@ -206,7 +190,6 @@
    return isAcceptable;
  }
  /**
   * Gets the OpenDS notification type object that corresponds to the
   * configuration counterpart.
@@ -264,6 +247,4 @@
    return nt;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/ExactMatchIdentityMapper.java
@@ -74,8 +74,6 @@
  /** The set of attributes to return in search result entries. */
  private LinkedHashSet<String> requestedAttributes;
  /**
   * Creates a new instance of this exact match identity mapper.  All
   * initialization should be performed in the {@code initializeIdentityMapper}
@@ -88,9 +86,6 @@
    // Don't do any initialization here.
  }
  /** {@inheritDoc} */
  @Override
  public void initializeIdentityMapper(
                   ExactMatchIdentityMapperCfg configuration)
@@ -101,7 +96,6 @@
    currentConfig = configuration;
    configEntryDN = currentConfig.dn();
    // Get the attribute types to use for the searches.  Ensure that they are
    // all indexed for equality.
    attributeTypes =
@@ -126,25 +120,17 @@
      }
    }
    // Create the attribute list to include in search requests.  We want to
    // include all user and operational attributes.
    requestedAttributes = newLinkedHashSet("*", "+");
  }
  /**
   * Performs any finalization that may be necessary for this identity mapper.
   */
  @Override
  public void finalizeIdentityMapper()
  {
    currentConfig.removeExactMatchChangeListener(this);
  }
  /**
   * Retrieves the user entry that was mapped to the provided identification
   * string.
@@ -167,7 +153,6 @@
    ExactMatchIdentityMapperCfg config = currentConfig;
    AttributeType[] attributeTypes = this.attributeTypes;
    // Construct the search filter to use to make the determination.
    SearchFilter filter;
    if (attributeTypes.length == 1)
@@ -187,7 +172,6 @@
      filter = SearchFilter.createORFilter(filterComps);
    }
    // Iterate through the set of search bases and process an internal search
    // to find any matching entries.  Since we'll only allow a single match,
    // then use size and time limits to constrain costly searches resulting from
@@ -262,9 +246,6 @@
    return matchingEntry;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(IdentityMapperCfg configuration,
                                           List<LocalizableMessage> unacceptableReasons)
@@ -274,9 +255,6 @@
    return isConfigurationChangeAcceptable(config, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      ExactMatchIdentityMapperCfg configuration,
@@ -309,9 +287,6 @@
    return configAcceptable;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
              ExactMatchIdentityMapperCfg configuration)
opendj-server-legacy/src/main/java/org/opends/server/extensions/FIFOEntryCache.java
@@ -80,10 +80,7 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * The reference to the Java runtime used to determine the amount of memory
   * currently in use.
   */
  /** The reference to the Java runtime used to determine the amount of memory currently in use. */
  private static final Runtime runtime = Runtime.getRuntime();
  /** The mapping between entry backends/IDs and entries. */
@@ -92,10 +89,7 @@
  /** The mapping between DNs and entries. */
  private LinkedHashMap<DN,CacheEntry> dnMap;
  /**
   * The lock used to provide threadsafe access when changing the contents of
   * the cache.
   */
  /** The lock used to provide threadsafe access when changing the contents of the cache. */
  private ReadWriteLock cacheLock;
  private Lock cacheWriteLock;
  private Lock cacheReadLock;
@@ -122,7 +116,6 @@
    // All initialization should be performed in the initializeEntryCache.
  }
  /** {@inheritDoc} */
  @Override
  public void initializeEntryCache(FIFOEntryCacheCfg configuration)
      throws ConfigException, InitializationException
@@ -152,7 +145,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void finalizeEntryCache()
  {
@@ -174,7 +166,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean containsEntry(DN entryDN)
  {
@@ -191,7 +182,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public Entry getEntry(DN entryDN)
  {
@@ -212,7 +202,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public long getEntryID(DN entryDN)
  {
@@ -226,7 +215,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public DN getEntryDN(String backendID, long entryID)
  {
@@ -246,14 +234,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void putEntry(Entry entry, String backendID, long entryID)
  {
    // Create the cache entry based on the provided information.
    CacheEntry cacheEntry = new CacheEntry(entry, backendID, entryID);
    // Obtain a lock on the cache.  If this fails, then don't do anything.
    try
    {
@@ -269,7 +255,6 @@
      return;
    }
    // At this point, we hold the lock.  No matter what, we must release the
    // lock before leaving this method, so do that in a finally block.
    try
@@ -312,7 +297,6 @@
            }
          }
        }
      }
      else
      {
@@ -332,7 +316,6 @@
          map.put(entryID, cacheEntry);
        }
        // See if a cap has been placed on the maximum number of entries in the
        // cache.  If so, then see if we have exceeded it and we need to purge
        // entries until we're within the limit.
@@ -366,14 +349,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean putEntryIfAbsent(Entry entry, String backendID, long entryID)
  {
    // Create the cache entry based on the provided information.
    CacheEntry cacheEntry = new CacheEntry(entry, backendID, entryID);
    // Obtain a lock on the cache.  If this fails, then don't do anything.
    try
    {
@@ -391,7 +372,6 @@
      return false;
    }
    // At this point, we hold the lock.  No matter what, we must release the
    // lock before leaving this method, so do that in a finally block.
    try
@@ -441,7 +421,6 @@
          map.put(entryID, cacheEntry);
        }
        // See if a cap has been placed on the maximum number of entries in the
        // cache.  If so, then see if we have exceeded it and we need to purge
        // entries until we're within the limit.
@@ -465,7 +444,6 @@
        }
      }
      // We'll always return true in this case, even if we didn't actually add
      // the entry due to memory constraints.
      return true;
@@ -483,7 +461,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void removeEntry(DN entryDN)
  {
@@ -494,7 +471,6 @@
    // other thread before it releases the lock.
    cacheWriteLock.lock();
    // At this point, it is absolutely critical that we always release the lock
    // before leaving this method, so do so in a finally block.
    try
@@ -538,7 +514,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void clear()
  {
@@ -546,7 +521,6 @@
    // been cleared, so we will block until we can obtain the lock.
    cacheWriteLock.lock();
    // At this point, it is absolutely critical that we always release the lock
    // before leaving this method, so do so in a finally block.
    try
@@ -569,7 +543,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void clearBackend(String backendID)
  {
@@ -577,7 +550,6 @@
    // been cleared, so we will block until we can obtain the lock.
    cacheWriteLock.lock();
    // At this point, it is absolutely critical that we always release the lock
    // before leaving this method, so do so in a finally block.
    try
@@ -591,7 +563,6 @@
        return;
      }
      // Unfortunately, there is no good way to dump the entries from the DN
      // cache based on their backend, so we will need to iterate through the
      // entries in the ID map and do it manually.  Since this could take a
@@ -624,7 +595,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void clearSubtree(DN baseDN)
  {
@@ -636,12 +606,10 @@
      return;
    }
    // Acquire a lock on the cache.  We should not return until the cache has
    // been cleared, so we will block until we can obtain the lock.
    cacheWriteLock.lock();
    // At this point, it is absolutely critical that we always release the lock
    // before leaving this method, so do so in a finally block.
    try
@@ -660,8 +628,6 @@
    }
  }
  /**
   * Clears all entries at or below the specified base DN that are associated
   * with the given backend.  The caller must already hold the cache lock.
@@ -681,7 +647,6 @@
      return;
    }
    // Since the provided base DN could hold a subset of the information in the
    // specified backend, we will have to do this by iterating through all the
    // entries for that backend.  Since this could take a while, we'll
@@ -709,7 +674,6 @@
      }
    }
    // See if the backend has any subordinate backends.  If so, then process
    // them recursively.
    for (Backend<?> subBackend : backend.getSubordinateBackends())
@@ -731,14 +695,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void handleLowMemory()
  {
    // Grab the lock on the cache and wait until we have it.
    cacheWriteLock.lock();
    // At this point, it is absolutely critical that we always release the lock
    // before leaving this method, so do so in a finally block.
    try
@@ -782,7 +744,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(EntryCacheCfg configuration,
                                           List<LocalizableMessage> unacceptableReasons)
@@ -791,7 +752,6 @@
    return isConfigurationChangeAcceptable(config, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
      FIFOEntryCacheCfg configuration,
@@ -810,7 +770,6 @@
    return errorHandler.getIsAcceptable();
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(      FIFOEntryCacheCfg configuration      )
  {
@@ -833,8 +792,6 @@
    return changeResult;
  }
  /**
   * Parses the provided configuration and configure the entry cache.
   *
@@ -920,14 +877,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public Long getCacheCount()
  {
    return Long.valueOf(dnMap.size());
  }
  /** {@inheritDoc} */
  @Override
  public String toVerboseString()
  {
opendj-server-legacy/src/main/java/org/opends/server/extensions/FileBasedKeyManagerProvider.java
@@ -95,7 +95,6 @@
    }
  }
  /** Performs any finalization that may be necessary for this key manager provider. */
  @Override
  public void finalizeKeyManagerProvider()
  {
opendj-server-legacy/src/main/java/org/opends/server/extensions/FileBasedTrustManagerProvider.java
@@ -55,9 +55,6 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /** The DN of the configuration entry for this trust manager provider. */
  private DN configEntryDN;
@@ -73,8 +70,6 @@
  /** The trust store type to use. */
  private String trustStoreType;
  /**
   * Creates a new instance of this file-based trust manager provider.  The
   * <CODE>initializeTrustManagerProvider</CODE> method must be called on the
@@ -85,9 +80,6 @@
    // No implementation is required.
  }
  /** {@inheritDoc} */
  @Override
  public void initializeTrustManagerProvider(
                   FileBasedTrustManagerProviderCfg configuration)
@@ -99,7 +91,6 @@
    configEntryDN = configuration.dn();
    configuration.addFileBasedChangeListener(this);
    // Get the path to the trust store file.
    trustStoreFile = configuration.getTrustStoreFile();
    File f = getFileForPath(trustStoreFile);
@@ -109,7 +100,6 @@
      throw new InitializationException(message);
    }
    // Get the trust store type.  If none is specified, then use the default
    // type.
    trustStoreType = configuration.getTrustStoreType();
@@ -131,7 +121,6 @@
      throw new InitializationException(message);
    }
    // Get the PIN needed to access the contents of the trust store file.  We
    // will offer several places to look for the PIN, and we will do so in the
    // following order:
@@ -231,18 +220,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void finalizeTrustManagerProvider()
  {
    currentConfig.removeFileBasedChangeListener(this);
  }
  /** {@inheritDoc} */
  @Override
  public TrustManager[] getTrustManagers()
         throws DirectoryException
@@ -267,7 +250,6 @@
                                   message, e);
    }
    try
    {
      String trustManagerAlgorithm = TrustManagerFactory.getDefaultAlgorithm();
@@ -294,9 +276,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(
                         TrustManagerProviderCfg configuration,
@@ -307,9 +286,7 @@
    return isConfigurationChangeAcceptable(config, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      FileBasedTrustManagerProviderCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -317,7 +294,6 @@
    boolean configAcceptable = true;
    DN cfgEntryDN = configuration.dn();
    // Get the path to the trust store file.
    String newTrustStoreFile = configuration.getTrustStoreFile();
    try
@@ -337,7 +313,6 @@
      configAcceptable = false;
    }
    // Check to see if the trust store type is acceptable.
    String storeType = configuration.getTrustStoreType();
    if (storeType != null)
@@ -356,7 +331,6 @@
      }
    }
    // If there is a PIN property, then make sure the corresponding
    // property is set.
    String pinProp = configuration.getTrustStorePinProperty();
@@ -366,7 +340,6 @@
      configAcceptable = false;
    }
    // If there is a PIN environment variable, then make sure the corresponding
    // environment variable is set.
    String pinEnVar = configuration.getTrustStorePinEnvironmentVariable();
@@ -376,7 +349,6 @@
      configAcceptable = false;
    }
    // If there is a PIN file, then make sure the file exists and is readable.
    String pinFile = configuration.getTrustStorePinFile();
    if (pinFile != null)
@@ -418,17 +390,15 @@
      }
    }
    return configAcceptable;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                                 FileBasedTrustManagerProviderCfg configuration)
  {
    final ConfigChangeResult ccr = new ConfigChangeResult();
    // Get the path to the trust store file.
    String newTrustStoreFile = configuration.getTrustStoreFile();
    File f = getFileForPath(newTrustStoreFile);
@@ -458,7 +428,6 @@
      ccr.setResultCode(DirectoryServer.getServerErrorResultCode());
    }
    // Get the PIN needed to access the contents of the trust store file.  We
    // will offer several places to look for the PIN, and we will do so in the
    // following order:
@@ -558,7 +527,6 @@
      }
    }
    if (ccr.getResultCode() == ResultCode.SUCCESS)
    {
      trustStoreFile = newTrustStoreFile;
opendj-server-legacy/src/main/java/org/opends/server/extensions/FilteredStaticGroupMemberList.java
@@ -56,10 +56,7 @@
  /** The iterator used to traverse the set of member DNs. */
  private Iterator<CompactDn> memberDNIterator;
  /**
   * The membership exception that should be thrown the next time a member is
   * requested.
   */
  /** The membership exception that should be thrown the next time a member is requested. */
  private MembershipException nextMembershipException;
  /** The search filter that all returned members should match. */
@@ -204,7 +201,6 @@
    nextMembershipException = null;
  }
  /** {@inheritDoc} */
  @Override
  public boolean hasMoreMembers()
  {
@@ -212,7 +208,6 @@
        && (nextMatchingEntry != null || nextMembershipException != null);
  }
  /** {@inheritDoc} */
  @Override
  public DN nextMemberDN() throws MembershipException
  {
@@ -225,7 +220,6 @@
    return entry != null ? entry.getName() : null;
  }
  /** {@inheritDoc} */
  @Override
  public Entry nextMemberEntry() throws MembershipException
  {
@@ -247,11 +241,9 @@
    return e;
  }
  /** {@inheritDoc} */
  @Override
  public void close()
  {
    // No implementation is required.
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/FingerprintCertificateMapper.java
@@ -77,7 +77,6 @@
  /** The set of attributes to return in search result entries. */
  private LinkedHashSet<String> requestedAttributes;
  /**
   * Creates a new instance of this certificate mapper.  Note that all actual
   * initialization should be done in the
@@ -88,9 +87,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializeCertificateMapper(
                   FingerprintCertificateMapperCfg configuration)
@@ -111,7 +107,6 @@
        break;
    }
    // Make sure that the fingerprint attribute is configured for equality in
    // all appropriate backends.
    Set<DN> cfgBaseDNs = configuration.getUserBaseDN();
@@ -136,18 +131,12 @@
    requestedAttributes = newLinkedHashSet("*", "+");
  }
  /** {@inheritDoc} */
  @Override
  public void finalizeCertificateMapper()
  {
    currentConfig.removeFingerprintChangeListener(this);
  }
  /** {@inheritDoc} */
  @Override
  public Entry mapCertificateToUser(Certificate[] certificateChain)
         throws DirectoryException
@@ -163,7 +152,6 @@
      throw new DirectoryException(ResultCode.INVALID_CREDENTIALS, message);
    }
    // Get the first certificate in the chain.  It must be an X.509 certificate.
    X509Certificate peerCertificate;
    try
@@ -179,7 +167,6 @@
      throw new DirectoryException(ResultCode.INVALID_CREDENTIALS, message);
    }
    // Get the signature from the peer certificate and create a digest of it
    // using the configured algorithm.
    String fingerprintString;
@@ -201,13 +188,11 @@
      throw new DirectoryException(ResultCode.INVALID_CREDENTIALS, message);
    }
    // Create the search filter from the fingerprint.
    ByteString value = ByteString.valueOfUtf8(fingerprintString);
    SearchFilter filter =
         SearchFilter.createEqualityFilter(fingerprintAttributeType, value);
    // If we have an explicit set of base DNs, then use it.  Otherwise, use the
    // set of public naming contexts in the server.
    Collection<DN> baseDNs = config.getUserBaseDN();
@@ -216,7 +201,6 @@
      baseDNs = DirectoryServer.getPublicNamingContexts().keySet();
    }
    // For each base DN, issue an internal search in an attempt to map the
    // certificate.
    Entry userEntry = null;
@@ -247,7 +231,6 @@
          throw new DirectoryException(
                  ResultCode.INVALID_CREDENTIALS, message);
        case TIME_LIMIT_EXCEEDED:
        case ADMIN_LIMIT_EXCEEDED:
          // The search criteria was too inefficient.
@@ -277,15 +260,11 @@
      }
    }
    // If we've gotten here, then we either found exactly one user entry or we
    // didn't find any.  Either way, return the entry or null to the caller.
    return userEntry;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(CertificateMapperCfg configuration,
                                           List<LocalizableMessage> unacceptableReasons)
@@ -295,9 +274,6 @@
    return isConfigurationChangeAcceptable(config, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      FingerprintCertificateMapperCfg configuration,
@@ -306,16 +282,12 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
              FingerprintCertificateMapperCfg configuration)
  {
    final ConfigChangeResult ccr = new ConfigChangeResult();
    // Get the algorithm that will be used to generate the fingerprint.
    String newFingerprintAlgorithm = null;
    switch (configuration.getFingerprintAlgorithm())
@@ -328,7 +300,6 @@
        break;
    }
    if (ccr.getResultCode() == ResultCode.SUCCESS)
    {
      fingerprintAlgorithm = newFingerprintAlgorithm;
opendj-server-legacy/src/main/java/org/opends/server/extensions/GSSAPISASLMechanismHandler.java
@@ -16,8 +16,6 @@
 */
package org.opends.server.extensions;
import static org.opends.messages.ExtensionMessages.*;
import static org.opends.server.config.ConfigConstants.*;
import static org.opends.server.util.ServerConstants.*;
@@ -78,10 +76,7 @@
  /** The identity mapper that will be used to map identities. */
  private IdentityMapper<?> identityMapper;
  /**
   * The properties to use when creating a SASL server to process the
   * GSSAPI authentication.
   */
  /** The properties to use when creating a SASL server to process the GSSAPI authentication. */
  private HashMap<String, String> saslProps;
  /** The fully qualified domain name used when creating the SASL server. */
@@ -91,8 +86,6 @@
  private volatile LoginContext loginContext;
  private final Object loginContextLock = new Object();
  /**
   * Creates a new instance of this SASL mechanism handler. No
   * initialization should be done in this method, as it should all be
@@ -104,9 +97,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializeSASLMechanismHandler(
      GSSAPISASLMechanismHandlerCfg configuration) throws ConfigException,
@@ -133,8 +123,6 @@
    }
  }
  /**
   * Checks to make sure that the ds-cfg-kdc-address and dc-cfg-realm
   * are both defined in the configuration. If only one is set, then
@@ -161,12 +149,9 @@
    {
      System.setProperty(KRBV_PROPERTY_KDC, kdcAddress);
      System.setProperty(KRBV_PROPERTY_REALM, realm);
    }
  }
  /**
   * During login, callbacks are usually used to prompt for passwords.
   * All of the GSSAPI login information is provided in the properties
@@ -182,8 +167,6 @@
  {
  }
  /**
   * Returns the fully qualified name either defined in the
   * configuration, or, determined by examining the system
@@ -208,7 +191,6 @@
  }
  /**
   *
   * Return the login context. If it's not been initialized yet,
   * create a login context or login using the principal and keytab
   * information specified in the configuration.
@@ -234,11 +216,7 @@
    return loginContext;
  }
  /**
   * Logout of the current login context.
   */
  /** Logout of the current login context. */
  private void logout()
  {
    try
@@ -258,8 +236,6 @@
    }
  }
  /**
   * Creates an login.conf file from information in the specified
   * configuration. This file is used during the login phase.
@@ -320,9 +296,6 @@
    return configFileName;
  }
  /** {@inheritDoc} */
  @Override
  public void finalizeSASLMechanismHandler() {
    logout();
@@ -335,7 +308,6 @@
    logger.error(INFO_GSSAPI_STOPPED);
  }
private void clearProperties() {
  System.clearProperty(KRBV_PROPERTY_KDC);
  System.clearProperty(KRBV_PROPERTY_REALM);
@@ -343,7 +315,6 @@
  System.clearProperty(JAAS_PROPERTY_SUBJECT_CREDS_ONLY);
}
  /** {@inheritDoc} */
  @Override
  public void processSASLBind(BindOperation bindOp)
  {
@@ -394,7 +365,6 @@
    }
  }
  /**
   * Get the underlying GSSException messages that really tell what the
   * problem is. The major code is the GSS-API status and the minor is the
@@ -417,8 +387,6 @@
    return message.toMessage();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isPasswordBased(String mechanism)
  {
@@ -426,8 +394,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isSecure(String mechanism)
  {
@@ -435,9 +401,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(
      SASLMechanismHandlerCfg configuration, List<LocalizableMessage> unacceptableReasons)
@@ -447,9 +410,6 @@
    return isConfigurationChangeAcceptable(newConfig, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
      GSSAPISASLMechanismHandlerCfg newConfiguration,
@@ -496,9 +456,6 @@
    return isAcceptable;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(GSSAPISASLMechanismHandlerCfg newConfiguration)
  {
opendj-server-legacy/src/main/java/org/opends/server/extensions/GetConnectionIDExtendedOperation.java
@@ -52,7 +52,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializeExtendedOperationHandler(
                   GetConnectionIdExtendedOperationHandlerCfg config)
@@ -61,7 +60,6 @@
    super.initializeExtendedOperationHandler(config);
  }
  /** {@inheritDoc} */
  @Override
  public void processExtendedOperation(ExtendedOperation operation)
  {
@@ -71,8 +69,6 @@
    operation.setResultCode(ResultCode.SUCCESS);
  }
  /**
   * Encodes the provided connection ID in an octet string suitable for use as
   * the value for this extended operation.
@@ -98,8 +94,6 @@
    return builder.toByteString();
  }
  /**
   * Decodes the provided ASN.1 octet string to extract the connection ID.
   *
@@ -125,14 +119,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public String getExtendedOperationOID()
  {
    return OID_GET_CONNECTION_ID_EXTOP;
  }
  /** {@inheritDoc} */
  @Override
  public String getExtendedOperationName()
  {
opendj-server-legacy/src/main/java/org/opends/server/extensions/GoverningStructureRuleVirtualAttributeProvider.java
@@ -47,10 +47,7 @@
public class GoverningStructureRuleVirtualAttributeProvider  extends
         VirtualAttributeProvider<GoverningStructureRuleVirtualAttributeCfg>
{
  /**
   * Creates a new instance of this governingStructureRule virtual attribute
   * provider.
   */
  /** Creates a new instance of this governingStructureRule virtual attribute provider. */
  public GoverningStructureRuleVirtualAttributeProvider()
  {
    super();
@@ -59,14 +56,12 @@
    // initializeVirtualAttributeProvider method.
  }
  /** {@inheritDoc} */
  @Override
  public boolean isMultiValued()
  {
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public Attribute getValues(Entry entry, VirtualAttributeRule rule)
  {
@@ -79,14 +74,12 @@
    return Attributes.empty(rule.getAttributeType());
  }
  /** {@inheritDoc} */
  @Override
  public boolean hasValue(Entry entry, VirtualAttributeRule rule)
  {
    return getDITStructureRule(entry)!=null;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult matchesSubstring(Entry entry,
                                          VirtualAttributeRule rule,
@@ -98,7 +91,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult greaterThanOrEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -108,7 +100,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult lessThanOrEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -118,7 +109,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult approximatelyEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -128,7 +118,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isSearchable(VirtualAttributeRule rule,
                              SearchOperation searchOperation,
@@ -138,7 +127,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public void processSearch(VirtualAttributeRule rule,
                            SearchOperation searchOperation)
@@ -220,4 +208,3 @@
    return ditRule;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/HasSubordinatesVirtualAttributeProvider.java
@@ -42,9 +42,7 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * Creates a new instance of this HasSubordinates virtual attribute provider.
   */
  /** Creates a new instance of this HasSubordinates virtual attribute provider. */
  public HasSubordinatesVirtualAttributeProvider()
  {
    super();
@@ -53,14 +51,12 @@
    // initializeVirtualAttributeProvider method.
  }
  /** {@inheritDoc} */
  @Override
  public boolean isMultiValued()
  {
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public Attribute getValues(Entry entry, VirtualAttributeRule rule)
  {
@@ -82,7 +78,6 @@
    return Attributes.empty(rule.getAttributeType());
  }
  /** {@inheritDoc} */
  @Override
  public boolean hasValue(Entry entry, VirtualAttributeRule rule)
  {
@@ -101,7 +96,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean hasValue(Entry entry, VirtualAttributeRule rule, ByteString value)
  {
@@ -124,7 +118,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult matchesSubstring(Entry entry,
                                          VirtualAttributeRule rule,
@@ -136,7 +129,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult greaterThanOrEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -146,7 +138,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult lessThanOrEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -156,7 +147,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult approximatelyEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -166,7 +156,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isSearchable(VirtualAttributeRule rule,
                              SearchOperation searchOperation,
@@ -175,7 +164,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public void processSearch(VirtualAttributeRule rule,
                            SearchOperation searchOperation)
@@ -187,4 +175,3 @@
    searchOperation.appendErrorMessage(message);
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/IsMemberOfVirtualAttributeProvider.java
@@ -45,9 +45,7 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * Creates a new instance of this entryDN virtual attribute provider.
   */
  /** Creates a new instance of this entryDN virtual attribute provider. */
  public IsMemberOfVirtualAttributeProvider()
  {
    super();
@@ -56,14 +54,12 @@
    // initializeVirtualAttributeProvider method.
  }
  /** {@inheritDoc} */
  @Override
  public boolean isMultiValued()
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public Attribute getValues(Entry entry, VirtualAttributeRule rule)
  {
@@ -86,7 +82,6 @@
    return builder.toAttribute();
  }
  /** {@inheritDoc} */
  @Override
  public boolean hasValue(Entry entry, VirtualAttributeRule rule)
  {
@@ -109,7 +104,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public boolean hasValue(Entry entry, VirtualAttributeRule rule,
                          ByteString value)
@@ -128,7 +122,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult matchesSubstring(Entry entry,
                                          VirtualAttributeRule rule,
@@ -140,7 +133,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult greaterThanOrEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -150,7 +142,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult lessThanOrEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -160,7 +151,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult approximatelyEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -170,8 +160,6 @@
    return ConditionResult.UNDEFINED;
  }
  /**
   * {@inheritDoc}.  This virtual attribute will support search operations only
   * if one of the following is true about the search filter:
@@ -193,9 +181,6 @@
        isSearchable(rule.getAttributeType(), searchOperation.getFilter(), 0);
  }
  /**
   * Indicates whether the provided search filter is one that may be used with
   * this virtual attribute provider, optionally operating in a recursive manner
@@ -237,7 +222,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void processSearch(VirtualAttributeRule rule,
                            SearchOperation searchOperation)
@@ -278,7 +262,6 @@
  }
  /**
   *
   * @param searchOperation the search operation being processed.
   * @param memberList the list of members of the group being processed.
   * @param returnedDNs a set to store the normalized DNs of entries already returned,
@@ -320,8 +303,6 @@
    return true;
  }
  /**
   * Extracts the first group DN encountered in the provided filter, operating
   * recursively as necessary.
@@ -367,4 +348,3 @@
    return null;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/JMXAlertHandler.java
@@ -71,25 +71,18 @@
  private static final String CLASS_NAME =
       "org.opends.server.extensions.JMXAlertHandler";
  /** The current configuration for this alert handler. */
  private AlertHandlerCfg currentConfig;
  /** The sequence number generator used for this alert handler. */
  private AtomicLong sequenceNumber;
  /**
   * The DN of the configuration entry with which this alert handler is
   * associated.
   */
  /** The DN of the configuration entry with which this alert handler is associated. */
  private DN configEntryDN;
  /** The JMX object name used for this JMX alert handler. */
  private ObjectName objectName;
  /**
   * Creates a new instance of this JMX alert handler.  No initialization should
   * be done here, as it should all be performed in the
@@ -100,9 +93,7 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializeAlertHandler(JMXAlertHandlerCfg configuration)
       throws ConfigException, InitializationException
  {
@@ -147,17 +138,13 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public AlertHandlerCfg getAlertHandlerConfiguration()
  {
    return currentConfig;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(AlertHandlerCfg configuration,
                                           List<LocalizableMessage> unacceptableReasons)
  {
@@ -165,29 +152,24 @@
    return isConfigurationChangeAcceptable(cfg, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public void finalizeAlertHandler()
  {
    // No action is required.
  }
  /**
   * Retrieves the JMX object name for this JMX alert handler.
   *
   * @return  The JMX object name for this JMX alert handler.
   */
  @Override
  public ObjectName getObjectName()
  {
    return objectName;
  }
  /** {@inheritDoc} */
  @Override
  public void sendAlertNotification(AlertGenerator generator, String alertType,
                                    LocalizableMessage alertMessage)
  {
@@ -197,8 +179,6 @@
                                      alertMessage.toString()));
  }
  /**
   * Retrieves information about the types of JMX notifications that may be
   * generated.
@@ -206,6 +186,7 @@
   * @return  Information about the types of JMX notifications that may be
   *          generated.
   */
  @Override
  public MBeanNotificationInfo[] getNotificationInfo()
  {
    ArrayList<MBeanNotificationInfo> notifications = new ArrayList<>();
@@ -219,8 +200,6 @@
    return notifications.toArray(new MBeanNotificationInfo[notifications.size()]);
  }
  /**
   * Obtain the value of a specific attribute of the Dynamic MBean.
   *
@@ -231,6 +210,7 @@
   * @throws  AttributeNotFoundException  If the specified attribute is not
   *                                      associated with this MBean.
   */
  @Override
  public Attribute getAttribute(String attribute)
         throws AttributeNotFoundException
  {
@@ -239,8 +219,6 @@
    throw new AttributeNotFoundException(message.toString());
  }
  /**
   * Set the value of a specific attribute of the Dynamic MBean.
   *
@@ -253,6 +231,7 @@
   * @throws  InvalidAttributeValueException  If the provided value is not
   *                                          acceptable for this MBean.
   */
  @Override
  public void setAttribute(Attribute attribute)
         throws AttributeNotFoundException, InvalidAttributeValueException
  {
@@ -261,8 +240,6 @@
    throw new AttributeNotFoundException(message.toString());
  }
  /**
   * Get the values of several attributes of the Dynamic MBean.
   *
@@ -270,14 +247,13 @@
   *
   * @return  The list of attributes retrieved.
   */
  @Override
  public AttributeList getAttributes(String[] attributes)
  {
    // There are no attributes for this MBean.
    return new AttributeList();
  }
  /**
   * Sets the values of several attributes of the Dynamic MBean.
   *
@@ -287,14 +263,13 @@
   *
   * @return  The list of attributes that were set with their new values.
   */
  @Override
  public AttributeList setAttributes(AttributeList attributes)
  {
    // There are no attributes for this MBean.
    return new AttributeList();
  }
  /**
   * Allows an action to be invoked on the Dynamic MBean.
   *
@@ -312,6 +287,7 @@
   * @throws  MBeanException  If a problem is encountered while invoking the
   *                          method.
   */
  @Override
  public Object invoke(String actionName, Object[] params, String[] signature)
         throws MBeanException
  {
@@ -337,8 +313,6 @@
    throw new MBeanException(new ConfigException(message));
  }
  /**
   * Provides the exposed attributes and actions of the Dynamic MBean using an
   * MBeanInfo object.
@@ -346,6 +320,7 @@
   * @return  An instance of <CODE>MBeanInfo</CODE> allowing all attributes and
   *          actions exposed by this Dynamic MBean to be retrieved.
   */
  @Override
  public MBeanInfo getMBeanInfo()
  {
    return new MBeanInfo(CLASS_NAME, "JMX Alert Handler",
@@ -353,9 +328,7 @@
                         new MBeanOperationInfo[0], getNotificationInfo());
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      JMXAlertHandlerCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -363,9 +336,7 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                                        JMXAlertHandlerCfg configuration)
  {
opendj-server-legacy/src/main/java/org/opends/server/extensions/LDAPPassThroughAuthenticationPolicyFactory.java
@@ -109,13 +109,10 @@
import static org.opends.server.protocols.ldap.LDAPConstants.*;
import static org.opends.server.util.StaticUtils.*;
/**
 * LDAP pass through authentication policy implementation.
 */
/** LDAP pass through authentication policy implementation. */
public final class LDAPPassThroughAuthenticationPolicyFactory implements
    AuthenticationPolicyFactory<LDAPPassThroughAuthenticationPolicyCfg>
{
  // TODO: handle password policy response controls? AD?
  // TODO: custom aliveness pings
  // TODO: improve debug logging and error messages.
@@ -127,9 +124,7 @@
  static abstract class AbstractLoadBalancer implements ConnectionFactory,
      Runnable
  {
    /**
     * A connection which automatically retries operations on other servers.
     */
    /** A connection which automatically retries operations on other servers. */
    private final class FailoverConnection implements Connection
    {
      private Connection connection;
@@ -137,8 +132,6 @@
      private final int startIndex;
      private int nextIndex;
      private FailoverConnection(final int startIndex)
          throws DirectoryException
      {
@@ -175,18 +168,12 @@
        throw lastException;
      }
      /** {@inheritDoc} */
      @Override
      public void close()
      {
        connection.close();
      }
      /** {@inheritDoc} */
      @Override
      public ByteString search(final DN baseDN, final SearchScope scope,
          final SearchFilter filter) throws DirectoryException
@@ -205,9 +192,6 @@
        }
      }
      /** {@inheritDoc} */
      @Override
      public void simpleBind(final ByteString username,
          final ByteString password) throws DirectoryException
@@ -227,8 +211,6 @@
        }
      }
      private void handleDirectoryException(final DirectoryException e)
          throws DirectoryException
      {
@@ -269,8 +251,6 @@
        throw e;
      }
      private void incrementNextIndex()
      {
        // Try the next index.
@@ -279,11 +259,8 @@
          nextIndex = 0;
        }
      }
    }
    /**
     * A connection factory which caches its online/offline state in order to
     * avoid unnecessary connection attempts when it is known to be offline.
@@ -296,25 +273,17 @@
      private volatile boolean isAvailable = true;
      private DirectoryException lastException;
      private MonitoredConnectionFactory(final ConnectionFactory factory)
      {
        this.factory = factory;
      }
      /** {@inheritDoc} */
      @Override
      public void close()
      {
        factory.close();
      }
      /** {@inheritDoc} */
      @Override
      public Connection getConnection() throws DirectoryException
      {
@@ -334,14 +303,10 @@
      }
    }
    private final MonitoredConnectionFactory[] factories;
    private final int maxIndex;
    private final ScheduledFuture<?> monitorFuture;
    /**
     * Creates a new abstract load-balancer.
     *
@@ -365,11 +330,7 @@
          TimeUnit.SECONDS);
    }
    /**
     * Close underlying connection pools.
     */
    /** Close underlying connection pools. */
    @Override
    public final void close()
    {
@@ -381,9 +342,6 @@
      }
    }
    /** {@inheritDoc} */
    @Override
    public final Connection getConnection() throws DirectoryException
    {
@@ -391,11 +349,7 @@
      return new FailoverConnection(startIndex);
    }
    /**
     * Try to connect to any offline connection factories.
     */
    /** Try to connect to any offline connection factories. */
    @Override
    public void run()
    {
@@ -415,19 +369,14 @@
      }
    }
    /**
     * Return the start which should be used for the next connection attempt.
     *
     * @return The start which should be used for the next connection attempt.
     */
    abstract int getStartIndex();
  }
  /**
   * A factory which returns pre-authenticated connections for searches.
   * <p>
@@ -436,13 +385,10 @@
  static final class AuthenticatedConnectionFactory implements
      ConnectionFactory
  {
    private final ConnectionFactory factory;
    private final DN username;
    private final String password;
    /**
     * Creates a new authenticated connection factory which will bind on
     * connect.
@@ -463,18 +409,12 @@
      this.password = password;
    }
    /** {@inheritDoc} */
    @Override
    public void close()
    {
      factory.close();
    }
    /** {@inheritDoc} */
    @Override
    public Connection getConnection() throws DirectoryException
    {
@@ -495,26 +435,15 @@
      }
      return connection;
    }
  }
  /**
   * An LDAP connection which will be used in order to search for or
   * authenticate users.
   */
  /** An LDAP connection which will be used in order to search for or authenticate users. */
  static interface Connection extends Closeable
  {
    /**
     * Closes this connection.
     */
    /** Closes this connection. */
    @Override
    void close();
    /**
     * Returns the name of the user whose entry matches the provided search
     * criteria. This will return CLIENT_SIDE_NO_RESULTS_RETURNED/NO_SUCH_OBJECT
@@ -536,8 +465,6 @@
    ByteString search(DN baseDN, SearchScope scope, SearchFilter filter)
        throws DirectoryException;
    /**
     * Performs a simple bind for the user.
     *
@@ -553,8 +480,6 @@
        throws DirectoryException;
  }
  /**
   * An interface for obtaining connections: users of this interface will obtain
   * a connection, perform a single operation (search or bind), and then close
@@ -570,8 +495,6 @@
    @Override
    void close();
    /**
     * Returns a connection which can be used in order to search for or
     * authenticate users.
@@ -593,26 +516,17 @@
   */
  static final class ConnectionPool implements ConnectionFactory
  {
    /**
     * Pooled connection's intercept close and release connection back to the
     * pool.
     */
    /** Pooled connection's intercept close and release connection back to the pool. */
    private final class PooledConnection implements Connection
    {
      private Connection connection;
      private boolean connectionIsClosed;
      private PooledConnection(final Connection connection)
      {
        this.connection = connection;
      }
      /** {@inheritDoc} */
      @Override
      public void close()
      {
@@ -635,9 +549,6 @@
        }
      }
      /** {@inheritDoc} */
      @Override
      public ByteString search(final DN baseDN, final SearchScope scope,
          final SearchFilter filter) throws DirectoryException
@@ -668,9 +579,6 @@
        }
      }
      /** {@inheritDoc} */
      @Override
      public void simpleBind(final ByteString username,
          final ByteString password) throws DirectoryException
@@ -701,8 +609,6 @@
        }
      }
      private void closeIfConnectionFailure(final DirectoryException e)
          throws DirectoryException
      {
@@ -715,8 +621,6 @@
        }
      }
      private void reconnectIfConnectionFailure(final DirectoryException e)
          throws DirectoryException
      {
@@ -743,8 +647,6 @@
      }
    }
    /** Guarded by PolicyImpl.lock. */
    private boolean poolIsClosed;
@@ -753,8 +655,6 @@
    private final Semaphore availableConnections = new Semaphore(poolSize);
    private final Queue<Connection> connectionPool = new ConcurrentLinkedQueue<>();
    /**
     * Creates a new connection pool for the provided factory.
     *
@@ -767,11 +667,7 @@
      this.factory = factory;
    }
    /**
     * Release all connections: do we want to block?
     */
    /** Release all connections: do we want to block? */
    @Override
    public void close()
    {
@@ -796,9 +692,6 @@
      }
    }
    /** {@inheritDoc} */
    @Override
    public Connection getConnection() throws DirectoryException
    {
@@ -830,8 +723,6 @@
    }
  }
  /**
   * A simplistic two-way fail-over connection factory implementation.
   * <p>
@@ -839,7 +730,6 @@
   */
  static final class FailoverLoadBalancer extends AbstractLoadBalancer
  {
    /**
     * Creates a new fail-over connection factory which will always try the
     * primary connection factory first, before trying the second.
@@ -858,20 +748,14 @@
      super(new ConnectionFactory[] { primary, secondary }, scheduler);
    }
    /** {@inheritDoc} */
    @Override
    int getStartIndex()
    {
      // Always start with the primaries.
      return 0;
    }
  }
  /**
   * The PTA design guarantees that connections are only used by a single thread
   * at a time, so we do not need to perform any synchronization.
@@ -880,9 +764,7 @@
   */
  static final class LDAPConnectionFactory implements ConnectionFactory
  {
    /**
     * LDAP connection implementation.
     */
    /** LDAP connection implementation. */
    private final class LDAPConnection implements Connection
    {
      private final Socket plainSocket;
@@ -892,8 +774,6 @@
      private int nextMessageID = 1;
      private boolean isClosed;
      private LDAPConnection(final Socket plainSocket, final Socket ldapSocket,
          final LDAPReader reader, final LDAPWriter writer)
      {
@@ -903,9 +783,6 @@
        this.writer = writer;
      }
      /** {@inheritDoc} */
      @Override
      public void close()
      {
@@ -938,9 +815,6 @@
        StaticUtils.close(ldapSocket, plainSocket);
      }
      /** {@inheritDoc} */
      @Override
      public ByteString search(final DN baseDN, final SearchScope scope,
          final SearchFilter filter) throws DirectoryException
@@ -1040,9 +914,6 @@
        return username;
      }
      /** {@inheritDoc} */
      @Override
      public void simpleBind(final ByteString username,
          final ByteString password) throws DirectoryException
@@ -1085,17 +956,12 @@
        }
      }
      /** {@inheritDoc} */
      @Override
      protected void finalize()
      {
        close();
      }
      private void handleUnexpectedResponse(final LDAPMessage responseMessage)
          throws DirectoryException
      {
@@ -1136,8 +1002,6 @@
                cfg.dn(), responseMessage.getProtocolOp()));
      }
      /** Reads a response message and adapts errors to directory exceptions. */
      private LDAPMessage readResponse() throws DirectoryException
      {
@@ -1190,8 +1054,6 @@
        return responseMessage;
      }
      /** Sends a request message and adapts errors to directory exceptions. */
      private void sendRequest(final ProtocolOp request)
          throws DirectoryException
@@ -1210,15 +1072,11 @@
      }
    }
    private final String host;
    private final int port;
    private final LDAPPassThroughAuthenticationPolicyCfg cfg;
    private final int timeoutMS;
    /**
     * LDAP connection factory implementation is package private so that it can
     * be tested.
@@ -1243,18 +1101,12 @@
          Integer.MAX_VALUE);
    }
    /** {@inheritDoc} */
    @Override
    public void close()
    {
      // Nothing to do.
    }
    /** {@inheritDoc} */
    @Override
    public Connection getConnection() throws DirectoryException
    {
@@ -1390,8 +1242,6 @@
    }
  }
  /**
   * An interface for obtaining a connection factory for LDAP connections to a
   * named LDAP server and the monitoring scheduler.
@@ -1414,8 +1264,6 @@
    ConnectionFactory getLDAPConnectionFactory(String host, int port,
        LDAPPassThroughAuthenticationPolicyCfg cfg);
    /**
     * Returns the scheduler which should be used to periodically ping
     * connection factories to determine when they are online.
@@ -1425,8 +1273,6 @@
     */
    ScheduledExecutorService getScheduledExecutorService();
    /**
     * Returns the current time in order to perform cached password expiration
     * checks. The returned string will be formatted as a a generalized time
@@ -1436,8 +1282,6 @@
     */
    String getCurrentTime();
    /**
     * Returns the current time in order to perform cached password expiration
     * checks.
@@ -1447,8 +1291,6 @@
    long getCurrentTimeMS();
  }
  /**
   * A simplistic load-balancer connection factory implementation using
   * approximately round-robin balancing.
@@ -1458,8 +1300,6 @@
    private final AtomicInteger nextIndex = new AtomicInteger();
    private final int maxIndex;
    /**
     * Creates a new load-balancer which will distribute connection requests
     * across a set of underlying connection factories.
@@ -1476,9 +1316,6 @@
      this.maxIndex = factories.length;
    }
    /** {@inheritDoc} */
    @Override
    int getStartIndex()
    {
@@ -1508,32 +1345,20 @@
      // connection factory.
      return oldNextIndex;
    }
  }
  /**
   * LDAP PTA policy implementation.
   */
  /** LDAP PTA policy implementation. */
  private final class PolicyImpl extends AuthenticationPolicy implements
      ConfigurationChangeListener<LDAPPassThroughAuthenticationPolicyCfg>
  {
    /**
     * LDAP PTA policy state implementation.
     */
    /** LDAP PTA policy state implementation. */
    private final class StateImpl extends AuthenticationPolicyState
    {
      private final AttributeType cachedPasswordAttribute;
      private final AttributeType cachedPasswordTimeAttribute;
      private ByteString newCachedPassword;
      private StateImpl(final Entry userEntry)
      {
        super(userEntry);
@@ -1542,9 +1367,6 @@
        this.cachedPasswordTimeAttribute = DirectoryServer.getAttributeType(OP_ATTR_PTAPOLICY_CACHED_PASSWORD_TIME);
      }
      /** {@inheritDoc} */
      @Override
      public void finalizeStateAfterBind() throws DirectoryException
      {
@@ -1593,18 +1415,12 @@
        }
      }
      /** {@inheritDoc} */
      @Override
      public AuthenticationPolicy getAuthenticationPolicy()
      {
        return PolicyImpl.this;
      }
      /** {@inheritDoc} */
      @Override
      public boolean passwordMatches(final ByteString password)
          throws DirectoryException
@@ -1738,9 +1554,7 @@
            if (username == null)
            {
              /*
               * No matching entries were found in the remote directory.
               */
              /* No matching entries were found in the remote directory. */
              throw new DirectoryException(ResultCode.INVALID_CREDENTIALS,
                  ERR_LDAP_PTA_MAPPED_SEARCH_NO_CANDIDATES.get(
                      userEntry.getName(), cfg.dn(), filter));
@@ -1783,8 +1597,6 @@
        }
      }
      private boolean passwordMatchesCachedPassword(ByteString password)
      {
        if (!cfg.isUsePasswordCaching())
@@ -1872,9 +1684,7 @@
      }
    }
    // Guards against configuration changes.
    /** Guards against configuration changes. */
    private final ReentrantReadWriteLock lock = new ReentrantReadWriteLock();
    private final ReadLock sharedLock = lock.readLock();
    private final WriteLock exclusiveLock = lock.writeLock();
@@ -1887,17 +1697,12 @@
    private PasswordStorageScheme<?> pwdStorageScheme;
    private PolicyImpl(
        final LDAPPassThroughAuthenticationPolicyCfg configuration)
    {
      initializeConfiguration(configuration);
    }
    /** {@inheritDoc} */
    @Override
    public ConfigChangeResult applyConfigurationChange(
        final LDAPPassThroughAuthenticationPolicyCfg cfg)
@@ -1915,9 +1720,6 @@
      return new ConfigChangeResult();
    }
    /** {@inheritDoc} */
    @Override
    public AuthenticationPolicyState createAuthenticationPolicyState(
        final Entry userEntry, final long time) throws DirectoryException
@@ -1926,9 +1728,6 @@
      return new StateImpl(userEntry);
    }
    /** {@inheritDoc} */
    @Override
    public void finalizeAuthenticationPolicy()
    {
@@ -1944,18 +1743,12 @@
      }
    }
    /** {@inheritDoc} */
    @Override
    public DN getDN()
    {
      return cfg.dn();
    }
    /** {@inheritDoc} */
    @Override
    public boolean isConfigurationChangeAcceptable(
        final LDAPPassThroughAuthenticationPolicyCfg cfg,
@@ -1965,8 +1758,6 @@
          .isConfigurationAcceptable(cfg, unacceptableReasons);
    }
    private void closeConnections()
    {
      exclusiveLock.lock();
@@ -1983,7 +1774,6 @@
          bindFactory.close();
          bindFactory = null;
        }
      }
      finally
      {
@@ -1991,8 +1781,6 @@
      }
    }
    private void initializeConfiguration(
        final LDAPPassThroughAuthenticationPolicyCfg cfg)
    {
@@ -2080,19 +1868,14 @@
      }
    }
    private ConnectionFactory newLDAPConnectionFactory(final String hostPort)
    {
      // Validation already performed by admin framework.
      final HostPort hp = HostPort.valueOf(hostPort);
      return provider.getLDAPConnectionFactory(hp.getHost(), hp.getPort(), cfg);
    }
  }
  /** Debug tracer for this class. */
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
@@ -2130,8 +1913,6 @@
          }
        });
    @Override
    public ConnectionFactory getLDAPConnectionFactory(final String host,
        final int port, final LDAPPassThroughAuthenticationPolicyCfg cfg)
@@ -2139,8 +1920,6 @@
      return new LDAPConnectionFactory(host, port, cfg);
    }
    @Override
    public ScheduledExecutorService getScheduledExecutorService()
    {
@@ -2161,8 +1940,6 @@
  };
  /**
   * Determines whether or no a result code is expected to trigger the
   * associated connection to be closed immediately.
@@ -2198,8 +1975,6 @@
    }
  }
  /**
   * Get the search bind password performing mapped searches.
   * We will offer several places to look for the password, and we will
@@ -2278,8 +2053,6 @@
    return password;
  }
  private static boolean isServerAddressValid(
      final LDAPPassThroughAuthenticationPolicyCfg configuration,
      final List<LocalizableMessage> unacceptableReasons, final String hostPort)
@@ -2300,8 +2073,6 @@
    }
  }
  private static String mappedAttributesAsString(
      final Collection<AttributeType> attributes)
  {
@@ -2324,8 +2095,6 @@
    }
  }
  /**
   * Public default constructor used by the admin framework. This will use the
   * default LDAP connection factory provider.
@@ -2359,9 +2128,6 @@
    this.provider = provider;
  }
  /** {@inheritDoc} */
  @Override
  public AuthenticationPolicy createAuthenticationPolicy(
      final LDAPPassThroughAuthenticationPolicyCfg configuration)
@@ -2372,9 +2138,6 @@
    return policy;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(
      final LDAPPassThroughAuthenticationPolicyCfg cfg,
opendj-server-legacy/src/main/java/org/opends/server/extensions/LengthBasedPasswordValidator.java
@@ -42,11 +42,7 @@
  /** The current configuration for this password validator. */
  private LengthBasedPasswordValidatorCfg currentConfig;
  /**
   * Creates a new instance of this password validator.
   */
  /** Creates a new instance of this password validator. */
  public LengthBasedPasswordValidator()
  {
    super();
@@ -55,9 +51,6 @@
    // method.
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordValidator(
                   LengthBasedPasswordValidatorCfg configuration)
@@ -79,18 +72,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void finalizePasswordValidator()
  {
    currentConfig.removeLengthBasedChangeListener(this);
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordIsAcceptable(ByteString newPassword,
                                      Set<ByteString> currentPasswords,
@@ -118,9 +105,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(PasswordValidatorCfg configuration,
                                           List<LocalizableMessage> unacceptableReasons)
@@ -130,9 +114,7 @@
    return isConfigurationChangeAcceptable(config, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      LengthBasedPasswordValidatorCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -152,9 +134,7 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
              LengthBasedPasswordValidatorCfg configuration)
  {
opendj-server-legacy/src/main/java/org/opends/server/extensions/MD5PasswordStorageScheme.java
@@ -16,8 +16,6 @@
 */
package org.opends.server.extensions;
import java.security.MessageDigest;
import java.util.Arrays;
@@ -37,8 +35,6 @@
import static org.opends.server.extensions.ExtensionsConstants.*;
import static org.opends.server.util.StaticUtils.*;
/**
 * This class defines a Directory Server password storage scheme based on the
 * MD5 algorithm defined in RFC 1321.  This is a one-way digest algorithm
@@ -53,22 +49,16 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * The fully-qualified name of this class.
   */
  /** The fully-qualified name of this class. */
  private static final String CLASS_NAME =
       "org.opends.server.extensions.MD5PasswordStorageScheme";
  /** The message digest that will actually be used to generate the MD5 hashes. */
  private MessageDigest messageDigest;
  /** The lock used to provide threadsafe access to the message digest. */
  private Object digestLock;
  /**
   * Creates a new instance of this password storage scheme.  Note that no
   * initialization should be performed here, as all initialization should be
@@ -77,12 +67,8 @@
  public MD5PasswordStorageScheme()
  {
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordStorageScheme(
                   MD5PasswordStorageSchemeCfg configuration)
@@ -104,18 +90,12 @@
    digestLock = new Object();
  }
  /** {@inheritDoc} */
  @Override
  public String getStorageSchemeName()
  {
    return STORAGE_SCHEME_NAME_MD5;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePassword(ByteSequence plaintext)
         throws DirectoryException
@@ -152,9 +132,6 @@
    return ByteString.valueOfUtf8(Base64.encode(digestBytes));
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePasswordWithScheme(ByteSequence plaintext)
         throws DirectoryException
@@ -195,13 +172,9 @@
    buffer.append(Base64.encode(digestBytes));
    return ByteString.valueOfUtf8(buffer);
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordMatches(ByteSequence plaintextPassword,
                                 ByteSequence storedPassword)
@@ -249,9 +222,6 @@
    return userPWDigestBytes.equals(storedPWDigestBytes);
  }
  /** {@inheritDoc} */
  @Override
  public boolean supportsAuthPasswordSyntax()
  {
@@ -259,9 +229,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodeAuthPassword(ByteSequence plaintext)
         throws DirectoryException
@@ -271,9 +238,6 @@
    throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean authPasswordMatches(ByteSequence plaintextPassword,
                                     String authInfo, String authValue)
@@ -282,18 +246,12 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isReversible()
  {
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getPlaintextValue(ByteSequence storedPassword)
         throws DirectoryException
@@ -302,9 +260,6 @@
    throw new DirectoryException(ResultCode.CONSTRAINT_VIOLATION, message);
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getAuthPasswordPlaintextValue(String authInfo,
                                                  String authValue)
@@ -315,9 +270,6 @@
    throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isStorageSchemeSecure()
  {
@@ -325,4 +277,3 @@
    return true;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/MemberVirtualAttributeProvider.java
@@ -55,11 +55,7 @@
  /** The current configuration for this member virtual attribute. */
  private MemberVirtualAttributeCfg currentConfig;
  /**
   * Creates a new instance of this member virtual attribute provider.
   */
  /** Creates a new instance of this member virtual attribute provider. */
  public MemberVirtualAttributeProvider()
  {
    super();
@@ -68,9 +64,6 @@
    // initializeVirtualAttributeProvider method.
  }
  /** {@inheritDoc} */
  @Override
  public void initializeVirtualAttributeProvider(
                            MemberVirtualAttributeCfg configuration)
@@ -80,18 +73,12 @@
    currentConfig = configuration;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isMultiValued()
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public Attribute getValues(Entry entry, VirtualAttributeRule rule)
  {
@@ -138,9 +125,6 @@
    return builder.toAttribute();
  }
  /** {@inheritDoc} */
  @Override
  public boolean hasValue(Entry entry, VirtualAttributeRule rule)
  {
@@ -182,9 +166,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public boolean hasValue(Entry entry, VirtualAttributeRule rule, ByteString value)
  {
@@ -207,9 +188,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult matchesSubstring(Entry entry,
                                          VirtualAttributeRule rule,
@@ -221,9 +199,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult greaterThanOrEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -233,9 +208,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult lessThanOrEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -245,9 +217,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult approximatelyEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -257,9 +226,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isSearchable(VirtualAttributeRule rule,
                              SearchOperation searchOperation,
@@ -268,9 +234,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public void processSearch(VirtualAttributeRule rule,
                            SearchOperation searchOperation)
@@ -279,9 +242,6 @@
    return;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      MemberVirtualAttributeCfg configuration,
@@ -291,9 +251,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                                 MemberVirtualAttributeCfg configuration)
@@ -302,4 +259,3 @@
    return new ConfigChangeResult();
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/NotificationMessageNotificationMessageTemplateElement.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2008 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.extensions;
@@ -26,21 +26,16 @@
public class NotificationMessageNotificationMessageTemplateElement
       extends NotificationMessageTemplateElement
{
  /**
   * Creates a new notification message notification message template element.
   */
  /** Creates a new notification message notification message template element. */
  public NotificationMessageNotificationMessageTemplateElement()
  {
    // No implementation is required.
  }
  /** {@inheritDoc} */
  @Override
  public void generateValue(LocalizableMessageBuilder buffer,
                            AccountStatusNotification notification)
  {
    buffer.append(notification.getMessage());
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/NotificationPropertyNotificationMessageTemplateElement.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2008 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.extensions;
@@ -32,8 +32,6 @@
  /** The account status notification property for which to obtain the value. */
  private AccountStatusNotificationProperty property;
  /**
   * Creates a new notification property notification message template element.
   *
@@ -45,9 +43,7 @@
    this.property = property;
  }
  /** {@inheritDoc} */
  @Override
  public void generateValue(LocalizableMessageBuilder buffer,
                            AccountStatusNotification notification)
  {
@@ -59,4 +55,3 @@
    }
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/NotificationTypeNotificationMessageTemplateElement.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2008 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.extensions;
@@ -26,21 +26,16 @@
public class NotificationTypeNotificationMessageTemplateElement
       extends NotificationMessageTemplateElement
{
  /**
   * Creates a new notification type notification message template element.
   */
  /** Creates a new notification type notification message template element. */
  public NotificationTypeNotificationMessageTemplateElement()
  {
    // No implementation is required.
  }
  /** {@inheritDoc} */
  @Override
  public void generateValue(LocalizableMessageBuilder buffer,
                            AccountStatusNotification notification)
  {
    buffer.append(notification.getNotificationType().getName());
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/NullKeyManagerProvider.java
@@ -31,9 +31,6 @@
 */
public class NullKeyManagerProvider
       extends KeyManagerProvider<KeyManagerProviderCfg>{
  /**
   * Creates a new instance of this null key manager provider.  The
   * <CODE>initializeKeyManagerProvider</CODE> method must be called on the
@@ -44,9 +41,6 @@
    // No implementation is required.
  }
  /** {@inheritDoc} */
  @Override
  public void initializeKeyManagerProvider(
      KeyManagerProviderCfg configuration) throws ConfigException,
@@ -54,19 +48,12 @@
    // No implementation is required.
  }
  /**
   * Performs any finalization that may be necessary for this key manager
   * provider.
   */
  @Override
  public void finalizeKeyManagerProvider()
  {
    // No implementation is required.
  }
  /**
   * Retrieves a <CODE>KeyManager</CODE> object that may be used for
   * interactions requiring access to a key manager.
@@ -77,10 +64,10 @@
   * @throws  DirectoryException  If a problem occurs while attempting to obtain
   *                              the set of key managers.
   */
  @Override
  public KeyManager[] getKeyManagers()
         throws DirectoryException
  {
    return new KeyManager[0];
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/NullTrustManagerProvider.java
@@ -43,9 +43,7 @@
    // No implementation is required.
  }
  /** {@inheritDoc} */
  @Override
  public void initializeTrustManagerProvider(
                     TrustManagerProviderCfg configuration)
         throws ConfigException, InitializationException
@@ -53,19 +51,12 @@
    // No implementation is required.
  }
  /**
   * Performs any finalization that may be necessary for this trust manager
   * provider.
   */
  @Override
  public void finalizeTrustManagerProvider()
  {
    // No implementation is required.
  }
  /**
   * Retrieves a <CODE>TrustManager</CODE> object that may be used for
   * interactions requiring access to a trust manager.
@@ -76,10 +67,10 @@
   * @throws  DirectoryException  If a problem occurs while attempting to obtain
   *                              the set of trust managers.
   */
  @Override
  public TrustManager[] getTrustManagers()
         throws DirectoryException
  {
    return new TrustManager[0];
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/NumSubordinatesVirtualAttributeProvider.java
@@ -42,9 +42,7 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * Creates a new instance of this NumSubordinates virtual attribute provider.
   */
  /** Creates a new instance of this NumSubordinates virtual attribute provider. */
  public NumSubordinatesVirtualAttributeProvider()
  {
    super();
@@ -53,14 +51,12 @@
    // initializeVirtualAttributeProvider method.
  }
  /** {@inheritDoc} */
  @Override
  public boolean isMultiValued()
  {
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public Attribute getValues(Entry entry, VirtualAttributeRule rule)
  {
@@ -82,7 +78,6 @@
    return Attributes.empty(rule.getAttributeType());
  }
  /** {@inheritDoc} */
  @Override
  public boolean hasValue(Entry entry, VirtualAttributeRule rule)
  {
@@ -99,7 +94,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean hasValue(Entry entry, VirtualAttributeRule rule, ByteString value)
  {
@@ -116,7 +110,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult matchesSubstring(Entry entry,
                                          VirtualAttributeRule rule,
@@ -128,7 +121,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult approximatelyEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -138,7 +130,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isSearchable(VirtualAttributeRule rule,
                              SearchOperation searchOperation,
@@ -147,7 +138,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public void processSearch(VirtualAttributeRule rule,
                            SearchOperation searchOperation)
@@ -159,4 +149,3 @@
    searchOperation.appendErrorMessage(message);
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/PBKDF2PasswordStorageScheme.java
@@ -82,7 +82,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordStorageScheme(PBKDF2PasswordStorageSchemeCfg configuration)
      throws ConfigException, InitializationException
@@ -102,7 +101,6 @@
    config.addPBKDF2ChangeListener(this);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(PBKDF2PasswordStorageSchemeCfg configuration,
                                                 List<LocalizableMessage> unacceptableReasons)
@@ -110,7 +108,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(PBKDF2PasswordStorageSchemeCfg configuration)
  {
@@ -118,14 +115,12 @@
    return new ConfigChangeResult();
  }
  /** {@inheritDoc} */
  @Override
  public String getStorageSchemeName()
  {
    return STORAGE_SCHEME_NAME_PBKDF2;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePassword(ByteSequence plaintext)
      throws DirectoryException
@@ -139,7 +134,6 @@
    return ByteString.valueOfUtf8(iterations + ":" + Base64.encode(hashPlusSalt));
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePasswordWithScheme(ByteSequence plaintext)
      throws DirectoryException
@@ -147,7 +141,6 @@
    return ByteString.valueOfUtf8('{' + STORAGE_SCHEME_NAME_PBKDF2 + '}' + encodePassword(plaintext));
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordMatches(ByteSequence plaintextPassword, ByteSequence storedPassword) {
    // Split the iterations from the stored value (separated by a ':')
@@ -185,21 +178,18 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean supportsAuthPasswordSyntax()
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public String getAuthPasswordSchemeName()
  {
    return AUTH_PASSWORD_SCHEME_NAME_PBKDF2;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodeAuthPassword(ByteSequence plaintext)
      throws DirectoryException
@@ -213,7 +203,6 @@
        + iterations + ':' + Base64.encode(saltBytes) + '$' + Base64.encode(digestBytes));
  }
  /** {@inheritDoc} */
  @Override
  public boolean authPasswordMatches(ByteSequence plaintextPassword, String authInfo, String authValue)
  {
@@ -236,14 +225,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isReversible()
  {
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getPlaintextValue(ByteSequence storedPassword)
      throws DirectoryException
@@ -252,7 +239,6 @@
    throw new DirectoryException(ResultCode.CONSTRAINT_VIOLATION, message);
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getAuthPasswordPlaintextValue(String authInfo, String authValue)
      throws DirectoryException
@@ -261,14 +247,12 @@
    throw new DirectoryException(ResultCode.CONSTRAINT_VIOLATION, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isStorageSchemeSecure()
  {
    return true;
  }
  /**
   * Generates an encoded password string from the given clear-text password.
   * This method is primarily intended for use when it is necessary to generate a password with the server
@@ -364,5 +348,4 @@
    System.arraycopy(saltBytes, 0, hashPlusSalt, digestBytes.length, NUM_SALT_BYTES);
    return hashPlusSalt;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/PKCS11KeyManagerProvider.java
@@ -15,9 +15,9 @@
 * Portions Copyright 2011-2016 ForgeRock AS.
 */
package org.opends.server.extensions;
import org.forgerock.i18n.LocalizableMessage;
import static org.opends.messages.ExtensionMessages.*;
import static org.opends.server.util.StaticUtils.*;
import java.io.BufferedReader;
import java.io.File;
@@ -25,25 +25,24 @@
import java.io.IOException;
import java.security.KeyStore;
import java.util.List;
import javax.net.ssl.KeyManager;
import javax.net.ssl.KeyManagerFactory;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.i18n.slf4j.LocalizedLogger;
import org.forgerock.opendj.config.server.ConfigChangeResult;
import org.forgerock.opendj.config.server.ConfigException;
import org.forgerock.opendj.config.server.ConfigurationChangeListener;
import org.forgerock.opendj.ldap.DN;
import org.forgerock.opendj.ldap.ResultCode;
import org.forgerock.opendj.server.config.server.PKCS11KeyManagerProviderCfg;
import org.opends.server.api.KeyManagerProvider;
import org.forgerock.opendj.config.server.ConfigException;
import org.opends.server.core.DirectoryServer;
import org.forgerock.opendj.config.server.ConfigChangeResult;
import org.opends.server.types.DirectoryException;
import org.forgerock.opendj.ldap.DN;
import org.opends.server.types.InitializationException;
import org.forgerock.opendj.ldap.ResultCode;
import org.opends.server.util.StaticUtils;
import org.forgerock.i18n.slf4j.LocalizedLogger;
import static org.opends.messages.ExtensionMessages.*;
import static org.opends.server.util.StaticUtils.*;
/**
 * This class defines a key manager provider that will access keys stored on a
 * PKCS#11 device.  It will use the Java PKCS#11 interface, which may need to be
@@ -55,15 +54,9 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * The keystore type to use when accessing the PKCS#11 keystore.
   */
  /** The keystore type to use when accessing the PKCS#11 keystore. */
  public static final String PKCS11_KEYSTORE_TYPE = "PKCS11";
  /** The DN of the configuration entry for this key manager provider. */
  private DN configEntryDN;
@@ -73,8 +66,6 @@
  /** The current configuration for this key manager provider. */
  private PKCS11KeyManagerProviderCfg currentConfig;
  /**
   * Creates a new instance of this PKCS#11 key manager provider.  The
   * <CODE>initializeKeyManagerProvider</CODE> method must be called on the
@@ -85,9 +76,6 @@
    // No implementation is required.
  }
  /** {@inheritDoc} */
  @Override
  public void initializeKeyManagerProvider(
                    PKCS11KeyManagerProviderCfg configuration)
@@ -168,29 +156,13 @@
    }
  }
  /**
   * Performs any finalization that may be necessary for this key
   * manager provider.
   */
  @Override
  public void finalizeKeyManagerProvider()
  {
    currentConfig.removePKCS11ChangeListener(this);
  }
  /**
   * Retrieves a set of <CODE>KeyManager</CODE> objects that may be used for
   * interactions requiring access to a key manager.
   *
   * @return  A set of <CODE>KeyManager</CODE> objects that may be used for
   *          interactions requiring access to a key manager.
   *
   * @throws  DirectoryException  If a problem occurs while attempting to obtain
   *                              the set of key managers.
   */
  @Override
  public KeyManager[] getKeyManagers()
         throws DirectoryException
  {
@@ -210,7 +182,6 @@
                                   message, e);
    }
    try
    {
      String keyManagerAlgorithm = KeyManagerFactory.getDefaultAlgorithm();
@@ -230,9 +201,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(
                        PKCS11KeyManagerProviderCfg configuration,
@@ -241,9 +209,7 @@
    return isConfigurationChangeAcceptable(configuration, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      PKCS11KeyManagerProviderCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -339,9 +305,7 @@
    return configAcceptable;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                                 PKCS11KeyManagerProviderCfg configuration)
  {
opendj-server-legacy/src/main/java/org/opends/server/extensions/PKCS5S2PasswordStorageScheme.java
@@ -79,7 +79,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordStorageScheme(PKCS5S2PasswordStorageSchemeCfg configuration)
      throws InitializationException
@@ -96,14 +95,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public String getStorageSchemeName()
  {
    return STORAGE_SCHEME_NAME_PKCS5S2;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePassword(ByteSequence plaintext)
      throws DirectoryException
@@ -115,7 +112,6 @@
    return ByteString.valueOfUtf8(Base64.encode(hashPlusSalt));
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePasswordWithScheme(ByteSequence plaintext)
      throws DirectoryException
@@ -123,7 +119,6 @@
    return ByteString.valueOfUtf8('{' + STORAGE_SCHEME_NAME_PKCS5S2 + '}' + encodePassword(plaintext));
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordMatches(ByteSequence plaintextPassword, ByteSequence storedPassword)
  {
@@ -154,21 +149,18 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean supportsAuthPasswordSyntax()
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public String getAuthPasswordSchemeName()
  {
    return AUTH_PASSWORD_SCHEME_NAME_PKCS5S2;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodeAuthPassword(ByteSequence plaintext)
      throws DirectoryException
@@ -180,7 +172,6 @@
        + ':' + Base64.encode(saltBytes) + '$' + Base64.encode(digestBytes));
  }
  /** {@inheritDoc} */
  @Override
  public boolean authPasswordMatches(ByteSequence plaintextPassword, String authInfo, String authValue)
  {
@@ -203,14 +194,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isReversible()
  {
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getPlaintextValue(ByteSequence storedPassword)
      throws DirectoryException
@@ -219,7 +208,6 @@
    throw new DirectoryException(ResultCode.CONSTRAINT_VIOLATION, message);
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getAuthPasswordPlaintextValue(String authInfo, String authValue)
      throws DirectoryException
@@ -228,15 +216,12 @@
    throw new DirectoryException(ResultCode.CONSTRAINT_VIOLATION, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isStorageSchemeSecure()
  {
    return true;
  }
  /**
   * Generates an encoded password string from the given clear-text password.
   * This method is primarily intended for use when it is necessary to generate a password with the server
@@ -328,5 +313,4 @@
    System.arraycopy(digestBytes, 0, hashPlusSalt, NUM_SALT_BYTES, digestBytes.length);
    return hashPlusSalt;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/ParallelWorkQueue.java
@@ -51,24 +51,16 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * The maximum number of times to retry getting the next operation from the
   * queue if an unexpected failure occurs.
   */
  private static final int MAX_RETRY_COUNT = 5;
  /** The set of worker threads that will be used to process this work queue. */
  private ArrayList<ParallelWorkerThread> workerThreads;
  /**
   * The number of operations that have been submitted to the work queue for
   * processing.
   */
  /** The number of operations that have been submitted to the work queue for processing. */
  private AtomicLong opsSubmitted;
  /**
@@ -95,10 +87,8 @@
  /** The lock used to provide threadsafe access for the queue. */
  private final Object queueLock = new Object();
  private final Semaphore queueSemaphore = new Semaphore(0, false);
  /**
   * Creates a new instance of this work queue.  All initialization should be
   * performed in the <CODE>initializeWorkQueue</CODE> method.
@@ -108,9 +98,6 @@
    // No implementation should be performed here.
  }
  /** {@inheritDoc} */
  @Override
  public void initializeWorkQueue(ParallelWorkQueueCfg configuration)
         throws ConfigException, InitializationException
@@ -140,7 +127,6 @@
      workerThreads.add(t);
    }
    // Create and register a monitor provider for the work queue.
    try
    {
@@ -156,15 +142,11 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void finalizeWorkQueue(LocalizableMessage reason)
  {
    shutdownRequested = true;
    // Send responses to any operations in the pending queue to indicate that
    // they won't be processed because the server is shutting down.
    CancelRequest cancelRequest = new CancelRequest(true, reason);
@@ -188,7 +170,6 @@
      }
    }
    // Notify all the worker threads of the shutdown.
    for (ParallelWorkerThread t : workerThreads)
    {
@@ -204,8 +185,6 @@
    }
  }
  /**
   * Indicates whether this work queue has received a request to shut down.
   *
@@ -217,8 +196,6 @@
    return shutdownRequested;
  }
  /**
   * Submits an operation to be processed by one of the worker threads
   * associated with this work queue.
@@ -245,7 +222,6 @@
    opsSubmitted.incrementAndGet();
  }
  /** {@inheritDoc} */
  @Override
  public boolean trySubmitOperation(Operation operation)
      throws DirectoryException
@@ -254,7 +230,6 @@
    return true;
  }
  /**
   * Retrieves the next operation that should be processed by one of the worker
   * threads, blocking if necessary until a new request arrives.  This method
@@ -271,8 +246,6 @@
    return retryNextOperation(workerThread, 0);
  }
  /**
   * Retrieves the next operation that should be processed by one of the worker
   * threads following a previous failure attempt.  A maximum of five
@@ -400,8 +373,6 @@
    }
  }
  /**
   * Attempts to remove the specified operation from this queue if it has not
   * yet been picked up for processing by one of the worker threads.
@@ -416,8 +387,6 @@
    return opQueue.remove(operation);
  }
  /**
   * Retrieves the total number of operations that have been successfully
   * submitted to this work queue for processing since server startup.  This
@@ -432,8 +401,6 @@
    return opsSubmitted.longValue();
  }
  /**
   * Retrieves the number of pending operations in the queue that have not yet
   * been picked up for processing.  Note that this method is not a
@@ -448,9 +415,6 @@
    return opQueue.size();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      ParallelWorkQueueCfg configuration,
@@ -459,9 +423,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                                 ParallelWorkQueueCfg configuration)
@@ -506,9 +467,6 @@
    return new ConfigChangeResult();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isIdle()
  {
opendj-server-legacy/src/main/java/org/opends/server/extensions/PasswordExpirationTimeVirtualAttributeProvider.java
@@ -29,34 +29,25 @@
import static org.opends.messages.ExtensionMessages.*;
/**
 * Provider for the password expiration time virtual attribute.
 */
/** Provider for the password expiration time virtual attribute. */
public class PasswordExpirationTimeVirtualAttributeProvider
  extends VirtualAttributeProvider<PasswordExpirationTimeVirtualAttributeCfg>
{
  /**
   * Debug tracer to log debugging information.
   */
  /** Debug tracer to log debugging information. */
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * Default constructor.
   */
  /** Default constructor. */
  public PasswordExpirationTimeVirtualAttributeProvider()
  {
    super();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isMultiValued()
  {
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public Attribute getValues(Entry entry, VirtualAttributeRule rule)
  {
@@ -76,7 +67,6 @@
    return Attributes.empty(rule.getAttributeType());
  }
  /** {@inheritDoc} */
  @Override
  public boolean isSearchable(VirtualAttributeRule rule,
                              SearchOperation searchOperation,
@@ -85,7 +75,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public void processSearch(VirtualAttributeRule rule,
                            SearchOperation searchOperation)
@@ -98,7 +87,6 @@
    searchOperation.appendErrorMessage(message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean hasValue(Entry entry, VirtualAttributeRule rule)
  {
@@ -156,7 +144,6 @@
      }
      return pwpState.getPasswordExpirationTime();
    }
    else
    {
opendj-server-legacy/src/main/java/org/opends/server/extensions/PasswordPolicyStateExtendedOperation.java
@@ -123,7 +123,6 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /** The enumerated value for the getPasswordPolicyDN operation. */
  public static final int OP_GET_PASSWORD_POLICY_DN = 0;
  /** The enumerated value for the getAccountDisabledState operation. */
@@ -138,9 +137,7 @@
  public static final int OP_SET_ACCOUNT_EXPIRATION_TIME = 5;
  /** The enumerated value for the clearAccountExpirationTime operation. */
  public static final int OP_CLEAR_ACCOUNT_EXPIRATION_TIME = 6;
  /**
   * The enumerated value for the getSecondsUntilAccountExpiration operation.
   */
  /** The enumerated value for the getSecondsUntilAccountExpiration operation. */
  public static final int OP_GET_SECONDS_UNTIL_ACCOUNT_EXPIRATION = 7;
  /** The enumerated value for the getPasswordChangedTime operation. */
  public static final int OP_GET_PASSWORD_CHANGED_TIME = 8;
@@ -152,18 +149,11 @@
  public static final int OP_GET_PASSWORD_EXPIRATION_WARNED_TIME = 11;
  /** The enumerated value for the setPasswordExpirationWarnedTime operation. */
  public static final int OP_SET_PASSWORD_EXPIRATION_WARNED_TIME = 12;
  /**
   * The enumerated value for the clearPasswordExpirationWarnedTime operation.
   */
  /** The enumerated value for the clearPasswordExpirationWarnedTime operation. */
  public static final int OP_CLEAR_PASSWORD_EXPIRATION_WARNED_TIME = 13;
  /**
   * The enumerated value for the getSecondsUntilPasswordExpiration operation.
   */
  /** The enumerated value for the getSecondsUntilPasswordExpiration operation. */
  public static final int OP_GET_SECONDS_UNTIL_PASSWORD_EXPIRATION = 14;
  /**
   * The enumerated value for the getSecondsUntilPasswordExpirationWarning
   * operation.
   */
  /** The enumerated value for the getSecondsUntilPasswordExpirationWarning operation. */
  public static final int OP_GET_SECONDS_UNTIL_PASSWORD_EXPIRATION_WARNING = 15;
  /** The enumerated value for the getAuthenticationFailureTimes operation. */
  public static final int OP_GET_AUTHENTICATION_FAILURE_TIMES = 16;
@@ -173,16 +163,10 @@
  public static final int OP_SET_AUTHENTICATION_FAILURE_TIMES = 18;
  /** The enumerated value for the clearAuthenticationFailureTimes operation. */
  public static final int OP_CLEAR_AUTHENTICATION_FAILURE_TIMES = 19;
  /**
   * The enumerated value for the getSecondsUntilAuthenticationFailureUnlock
   * operation.
   */
  /** The enumerated value for the getSecondsUntilAuthenticationFailureUnlock operation. */
  public static final int OP_GET_SECONDS_UNTIL_AUTHENTICATION_FAILURE_UNLOCK =
       20;
  /**
   * The enumerated value for the getRemainingAuthenticationFailureCount
   * operation.
   */
  /** The enumerated value for the getRemainingAuthenticationFailureCount operation. */
  public static final int OP_GET_REMAINING_AUTHENTICATION_FAILURE_COUNT = 21;
  /** The enumerated value for the getLastLoginTime operation. */
  public static final int OP_GET_LAST_LOGIN_TIME = 22;
@@ -198,9 +182,7 @@
  public static final int OP_SET_PASSWORD_RESET_STATE = 27;
  /** The enumerated value for the clearPasswordResetState operation. */
  public static final int OP_CLEAR_PASSWORD_RESET_STATE = 28;
  /**
   * The enumerated value for the getSecondsUntilPasswordResetLockout operation.
   */
  /** The enumerated value for the getSecondsUntilPasswordResetLockout operation. */
  public static final int OP_GET_SECONDS_UNTIL_PASSWORD_RESET_LOCKOUT = 29;
  /** The enumerated value for the getGraceLoginUseTimes operation. */
  public static final int OP_GET_GRACE_LOGIN_USE_TIMES = 30;
@@ -212,28 +194,19 @@
  public static final int OP_CLEAR_GRACE_LOGIN_USE_TIMES = 33;
  /** The enumerated value for the getRemainingGraceLoginCount operation. */
  public static final int OP_GET_REMAINING_GRACE_LOGIN_COUNT = 34;
  /**
   * The enumerated value for the getPasswordChangedByRequiredTime operation.
   */
  /** The enumerated value for the getPasswordChangedByRequiredTime operation. */
  public static final int OP_GET_PASSWORD_CHANGED_BY_REQUIRED_TIME = 35;
  /**
   * The enumerated value for the setPasswordChangedByRequiredTime operation.
   */
  /** The enumerated value for the setPasswordChangedByRequiredTime operation. */
  public static final int OP_SET_PASSWORD_CHANGED_BY_REQUIRED_TIME = 36;
  /**
   * The enumerated value for the clearPasswordChangedByRequiredTime operation.
   */
  /** The enumerated value for the clearPasswordChangedByRequiredTime operation. */
  public static final int OP_CLEAR_PASSWORD_CHANGED_BY_REQUIRED_TIME = 37;
  /**
   * The enumerated value for the getSecondsUntilRequiredChangeTime operation.
   */
  /** The enumerated value for the getSecondsUntilRequiredChangeTime operation. */
  public static final int OP_GET_SECONDS_UNTIL_REQUIRED_CHANGE_TIME = 38;
  /** The enumerated value for the getPasswordHistory operation. */
  public static final int OP_GET_PASSWORD_HISTORY = 39;
  /** The enumerated value for the clearPasswordHistory operation. */
  public static final int OP_CLEAR_PASSWORD_HISTORY = 40;
  /** The set of attributes to request when retrieving a user's entry. */
  private LinkedHashSet<String> requestAttributes;
@@ -253,7 +226,6 @@
    super();
  }
  /**
   * Initializes this extended operation handler based on the information in the
   * provided configuration entry.  It should also register itself with the
@@ -292,7 +264,6 @@
  {
    operation.setResultCode(ResultCode.UNDEFINED);
    // The user must have the password-reset privilege in order to be able to do
    // anything with this extended operation.
    ClientConnection clientConnection = operation.getClientConnection();
@@ -304,7 +275,6 @@
      return;
    }
    // There must be a request value, and it must be a sequence.  Decode it
    // into its components.
    ByteString requestValue = operation.getRequestValue();
@@ -334,7 +304,6 @@
      return;
    }
    // Decode the DN and get the corresponding user entry.
    DN targetDN;
    try
@@ -456,7 +425,6 @@
      }
      reader.readEndSequence();
      // If there are any modifications that need to be made to the password
      // policy state, then apply them now.
      List<Modification> stateMods = pwpState.getModifications();
@@ -530,7 +498,6 @@
            userEntry, INFO_MODIFY_ACCOUNT_DISABLED.get(),
            AccountStatusNotification.createProperties(pwpState, false, -1,
                 null, null));
    }
    if (isAccountSetEnabled)
    {
@@ -613,8 +580,6 @@
    writer.writeEndSequence();
  }
  /**
   * Encodes the provided information in a form suitable for including in the
   * response value.
@@ -1021,7 +986,6 @@
          {
            secondsStr =
                 String.valueOf((policyRequiredChangeTime-currentTime) / 1000);
          }
        }
      }
@@ -1572,14 +1536,12 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public String getExtendedOperationOID()
  {
    return OID_PASSWORD_POLICY_STATE_EXTOP;
  }
  /** {@inheritDoc} */
  @Override
  public String getExtendedOperationName()
  {
opendj-server-legacy/src/main/java/org/opends/server/extensions/PasswordPolicySubentryVirtualAttributeProvider.java
@@ -38,10 +38,7 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * Creates a new instance of this pwdPolicySubentry
   * virtual attribute provider.
   */
  /** Creates a new instance of this pwdPolicySubentry virtual attribute provider. */
  public PasswordPolicySubentryVirtualAttributeProvider()
  {
    super();
@@ -50,14 +47,12 @@
    // initializeVirtualAttributeProvider method.
  }
  /** {@inheritDoc} */
  @Override
  public boolean isMultiValued()
  {
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public Attribute getValues(Entry entry, VirtualAttributeRule rule)
  {
@@ -104,7 +99,6 @@
    return Attributes.empty(rule.getAttributeType());
  }
  /** {@inheritDoc} */
  @Override
  public boolean isSearchable(VirtualAttributeRule rule,
                              SearchOperation searchOperation,
@@ -113,7 +107,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public void processSearch(VirtualAttributeRule rule,
                            SearchOperation searchOperation)
opendj-server-legacy/src/main/java/org/opends/server/extensions/PlainSASLMechanismHandler.java
@@ -64,14 +64,12 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /** The identity mapper that will be used to map ID strings to user entries.*/
  /** The identity mapper that will be used to map ID strings to user entries. */
  private IdentityMapper<?> identityMapper;
  /** The current configuration for this SASL mechanism handler. */
  private PlainSASLMechanismHandlerCfg currentConfig;
  /**
   * Creates a new instance of this SASL mechanism handler.  No initialization
   * should be done in this method, as it should all be performed in the
@@ -82,9 +80,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializeSASLMechanismHandler(
                   PlainSASLMechanismHandlerCfg configuration)
@@ -93,18 +88,13 @@
    configuration.addPlainChangeListener(this);
    currentConfig = configuration;
    // Get the identity mapper that should be used to find users.
    DN identityMapperDN = configuration.getIdentityMapperDN();
    identityMapper = DirectoryServer.getIdentityMapper(identityMapperDN);
    DirectoryServer.registerSASLMechanismHandler(SASL_MECHANISM_PLAIN, this);
  }
  /** {@inheritDoc} */
  @Override
  public void finalizeSASLMechanismHandler()
  {
@@ -112,10 +102,6 @@
    DirectoryServer.deregisterSASLMechanismHandler(SASL_MECHANISM_PLAIN);
  }
  /** {@inheritDoc} */
  @Override
  public void processSASLBind(BindOperation bindOperation)
  {
@@ -151,7 +137,6 @@
      authzID = credString.substring(0, nullPos1);
    }
    int nullPos2 = credString.indexOf('\u0000', nullPos1+1);
    if (nullPos2 < 0)
    {
@@ -183,7 +168,6 @@
    authcID  = credString.substring(nullPos1+1, nullPos2);
    password = credString.substring(nullPos2+1);
    // Get the user entry for the authentication ID.  Allow for an
    // authentication ID that is just a username (as per the SASL PLAIN spec),
    // but also allow a value in the authzid form specified in RFC 2829.
@@ -259,7 +243,6 @@
      }
    }
    // At this point, we should have a user entry.  If we don't then fail.
    if (userEntry == null)
    {
@@ -274,7 +257,6 @@
      bindOperation.setSASLAuthUserEntry(userEntry);
    }
    // If an authorization ID was provided, then make sure that it is
    // acceptable.
    Entry authZEntry = userEntry;
@@ -413,7 +395,6 @@
      }
    }
    // Get the password policy for the user and use it to determine if the
    // provided password was correct.
    try
@@ -452,7 +433,6 @@
      return;
    }
    // If we've gotten here, then the authentication was successful.
    bindOperation.setResultCode(ResultCode.SUCCESS);
@@ -464,9 +444,6 @@
    return;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isPasswordBased(String mechanism)
  {
@@ -474,9 +451,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isSecure(String mechanism)
  {
@@ -484,9 +458,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(
                      SASLMechanismHandlerCfg configuration,
@@ -497,9 +468,6 @@
    return isConfigurationChangeAcceptable(config, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      PlainSASLMechanismHandlerCfg configuration,
@@ -508,9 +476,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
              PlainSASLMechanismHandlerCfg configuration)
opendj-server-legacy/src/main/java/org/opends/server/extensions/RC4PasswordStorageScheme.java
@@ -16,8 +16,6 @@
 */
package org.opends.server.extensions;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.opendj.server.config.server.RC4PasswordStorageSchemeCfg;
import org.opends.server.api.PasswordStorageScheme;
@@ -36,7 +34,6 @@
import static org.opends.server.extensions.ExtensionsConstants.*;
import static org.opends.server.util.StaticUtils.*;
/**
 * This class defines a Directory Server password storage scheme that will
 * encode values using the RC4 reversible encryption algorithm.  This
@@ -48,16 +45,12 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * The reference to the Directory Server crypto manager that we will use to
   * handle the encryption/decryption.
   */
  private CryptoManager cryptoManager;
  /**
   * Creates a new instance of this password storage scheme.  Note that no
   * initialization should be performed here, as all initialization should be
@@ -68,9 +61,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordStorageScheme(
                   RC4PasswordStorageSchemeCfg configuration)
@@ -79,18 +69,12 @@
    cryptoManager = DirectoryServer.getCryptoManager();
  }
  /** {@inheritDoc} */
  @Override
  public String getStorageSchemeName()
  {
    return STORAGE_SCHEME_NAME_RC4;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePassword(ByteSequence plaintext)
         throws DirectoryException
@@ -123,9 +107,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePasswordWithScheme(ByteSequence plaintext)
         throws DirectoryException
@@ -165,9 +146,6 @@
    return ByteString.valueOfUtf8(buffer);
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordMatches(ByteSequence plaintextPassword,
                                 ByteSequence storedPassword)
@@ -187,18 +165,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isReversible()
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getPlaintextValue(ByteSequence storedPassword)
         throws DirectoryException
@@ -220,9 +192,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean supportsAuthPasswordSyntax()
  {
@@ -230,9 +199,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodeAuthPassword(ByteSequence plaintext)
         throws DirectoryException
@@ -242,9 +208,6 @@
    throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean authPasswordMatches(ByteSequence plaintextPassword,
                                     String authInfo, String authValue)
@@ -253,9 +216,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getAuthPasswordPlaintextValue(String authInfo,
                                                  String authValue)
@@ -266,9 +226,6 @@
    throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isStorageSchemeSecure()
  {
@@ -276,4 +233,3 @@
    return true;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/RandomPasswordGenerator.java
@@ -50,7 +50,6 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /** The current configuration for this password validator. */
  private RandomPasswordGeneratorCfg currentConfig;
@@ -63,10 +62,7 @@
  /** The total length of the password that will be generated. */
  private int totalLength;
  /**
   * The numbers of characters of each type that should be used to generate the
   * passwords.
   */
  /** The numbers of characters of each type that should be used to generate the passwords. */
  private int[] characterCounts;
  /** The character sets that should be used to generate the passwords. */
@@ -81,9 +77,6 @@
  /** The character set format string for this password generator. */
  private String formatString;
  /** {@inheritDoc} */
  @Override
  public void initializePasswordGenerator(
      RandomPasswordGeneratorCfg configuration)
@@ -132,7 +125,6 @@
      throw new InitializationException(message, e);
    }
    // Get the value that describes which character set(s) and how many
    // characters from each should be used.
@@ -206,17 +198,12 @@
    currentConfig = configuration;
  }
  /** {@inheritDoc} */
  @Override
  public void finalizePasswordGenerator()
  {
    currentConfig.removeRandomChangeListener(this);
  }
  /**
   * Generates a password for the user whose account is contained in the
   * specified entry.
@@ -246,9 +233,6 @@
    return ByteString.valueOfUtf8(buffer);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(PasswordGeneratorCfg configuration,
                                           List<LocalizableMessage> unacceptableReasons)
@@ -258,9 +242,6 @@
    return isConfigurationChangeAcceptable(config, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
      RandomPasswordGeneratorCfg configuration,
@@ -308,7 +289,6 @@
      return false;
    }
    // Get the value that describes which character set(s) and how many
    // characters from each should be used.
    try
@@ -351,21 +331,16 @@
      return false;
    }
    // If we've gotten here, then everything looks OK.
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
      RandomPasswordGeneratorCfg configuration)
  {
    final ConfigChangeResult ccr = new ConfigChangeResult();
    // Get the character sets for use in generating the password.  At least one
    // must have been provided.
    SortedSet<String> newEncodedCharacterSets = null;
@@ -408,7 +383,6 @@
      ccr.setResultCodeIfSuccess(DirectoryServer.getServerErrorResultCode());
    }
    // Get the value that describes which character set(s) and how many
    // characters from each should be used.
    ArrayList<NamedCharacterSet> newSetList = new ArrayList<>();
@@ -459,7 +433,6 @@
      ccr.setResultCodeIfSuccess(DirectoryServer.getServerErrorResultCode());
    }
    // If everything looks OK, then apply the changes.
    if (ccr.getResultCode() == ResultCode.SUCCESS)
    {
opendj-server-legacy/src/main/java/org/opends/server/extensions/RedirectingByteChannel.java
@@ -12,19 +12,14 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2006-2009 Sun Microsystems, Inc.
 * Portions Copyright 2012-2015 ForgeRock AS.
 * Portions Copyright 2012-2016 ForgeRock AS.
 */
package org.opends.server.extensions;
import java.io.IOException;
import java.nio.ByteBuffer;
import java.nio.channels.ByteChannel;
/**
 * This class redirects read and write requests either to a child byte channel,
 * or a byte channel to be redirected to.
@@ -45,21 +40,15 @@
    return new RedirectingByteChannel(bc);
  }
  private final ByteChannel child;
  private volatile ByteChannel redirect;
  private RedirectingByteChannel(final ByteChannel child)
  {
    this.child = child;
  }
  /** {@inheritDoc} */
  @Override
  public void close() throws IOException
  {
    final ByteChannel tmp = redirect;
@@ -73,19 +62,13 @@
    }
  }
  /**
   * Disable redirection.
   */
  /** Disable redirection. */
  public final void disable()
  {
    redirect = null;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isOpen()
  {
    final ByteChannel tmp = redirect;
@@ -99,9 +82,7 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public int read(final ByteBuffer buffer) throws IOException
  {
    final ByteChannel tmp = redirect;
@@ -115,8 +96,6 @@
    }
  }
  /**
   * Redirects a byte channel to a byte channel associated with the specified
   * provider.
@@ -129,9 +108,7 @@
    redirect = provider.getChannel();
  }
  /** {@inheritDoc} */
  @Override
  public int write(final ByteBuffer buffer) throws IOException
  {
    final ByteChannel tmp = redirect;
opendj-server-legacy/src/main/java/org/opends/server/extensions/RegularExpressionIdentityMapper.java
@@ -84,8 +84,6 @@
  /** The replacement string to use for the pattern. */
  private String replacePattern;
  /**
   * Creates a new instance of this regular expression identity mapper.  All
   * initialization should be performed in the {@code initializeIdentityMapper}
@@ -98,9 +96,6 @@
    // Don't do any initialization here.
  }
  /** {@inheritDoc} */
  @Override
  public void initializeIdentityMapper(
                   RegularExpressionIdentityMapperCfg configuration)
@@ -128,7 +123,6 @@
      replacePattern = "";
    }
    // Get the attribute types to use for the searches.  Ensure that they are
    // all indexed for equality.
    attributeTypes =
@@ -153,24 +147,17 @@
      }
    }
    // Create the attribute list to include in search requests.  We want to
    // include all user and operational attributes.
    requestedAttributes = newLinkedHashSet("*", "+");
  }
  /** {@inheritDoc} */
  @Override
  public void finalizeIdentityMapper()
  {
    currentConfig.removeRegularExpressionChangeListener(this);
  }
  /** {@inheritDoc} */
  @Override
  public Entry getEntryForID(String id)
         throws DirectoryException
@@ -178,13 +165,11 @@
    RegularExpressionIdentityMapperCfg config = currentConfig;
    AttributeType[] attributeTypes = this.attributeTypes;
    // Run the provided identifier string through the regular expression pattern
    // matcher and make the appropriate replacement.
    Matcher matcher = matchPattern.matcher(id);
    String processedID = matcher.replaceAll(replacePattern);
    // Construct the search filter to use to make the determination.
    SearchFilter filter;
    if (attributeTypes.length == 1)
@@ -204,7 +189,6 @@
      filter = SearchFilter.createORFilter(filterComps);
    }
    // Iterate through the set of search bases and process an internal search
    // to find any matching entries.  Since we'll only allow a single match,
    // then use size and time limits to constrain costly searches resulting from
@@ -242,7 +226,6 @@
          throw new DirectoryException(
                  ResultCode.CONSTRAINT_VIOLATION, message);
        case TIME_LIMIT_EXCEEDED:
        case ADMIN_LIMIT_EXCEEDED:
          // The search criteria was too inefficient.
@@ -280,9 +263,6 @@
    return matchingEntry;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(IdentityMapperCfg configuration,
                                           List<LocalizableMessage> unacceptableReasons)
@@ -292,9 +272,6 @@
    return isConfigurationChangeAcceptable(config, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      RegularExpressionIdentityMapperCfg configuration,
@@ -336,13 +313,9 @@
      configAcceptable = false;
    }
    return configAcceptable;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
              RegularExpressionIdentityMapperCfg configuration)
@@ -366,11 +339,9 @@
      newReplacePattern = "";
    }
    AttributeType[] newAttributeTypes =
         configuration.getMatchAttribute().toArray(new AttributeType[0]);
    if (ccr.getResultCode() == ResultCode.SUCCESS)
    {
      attributeTypes = newAttributeTypes;
opendj-server-legacy/src/main/java/org/opends/server/extensions/RepeatedCharactersPasswordValidator.java
@@ -45,11 +45,7 @@
  /** The current configuration for this password validator. */
  private RepeatedCharactersPasswordValidatorCfg currentConfig;
  /**
   * Creates a new instance of this repeated characters password validator.
   */
  /** Creates a new instance of this repeated characters password validator. */
  public RepeatedCharactersPasswordValidator()
  {
    super();
@@ -58,9 +54,6 @@
    // performed in the initializePasswordValidator() method.
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordValidator(
                   RepeatedCharactersPasswordValidatorCfg configuration)
@@ -69,18 +62,12 @@
    currentConfig = configuration;
  }
  /** {@inheritDoc} */
  @Override
  public void finalizePasswordValidator()
  {
    currentConfig.removeRepeatedCharactersChangeListener(this);
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordIsAcceptable(ByteString newPassword,
                                      Set<ByteString> currentPasswords,
@@ -97,7 +84,6 @@
      return true;
    }
    // Get the password as a string.  If we should use case-insensitive
    // validation, then convert it to use all lowercase characters.
    String passwordString = newPassword.toString();
@@ -106,13 +92,11 @@
      passwordString = passwordString.toLowerCase();
    }
    // Create variables to keep track of the last character we've seen and how
    // many times we have seen it.
    char lastCharacter    = '\u0000';
    int  consecutiveCount = 0;
    // Iterate through the characters in the password.  If the consecutive
    // count ever gets too high, then fail.
    for (int i=0; i < passwordString.length(); i++)
@@ -140,9 +124,7 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      RepeatedCharactersPasswordValidatorCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -152,9 +134,7 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                      RepeatedCharactersPasswordValidatorCfg configuration)
  {
opendj-server-legacy/src/main/java/org/opends/server/extensions/SASLByteChannel.java
@@ -12,7 +12,7 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2008-2009 Sun Microsystems, Inc.
 * Portions Copyright 2012-2015 ForgeRock AS.
 * Portions Copyright 2012-2016 ForgeRock AS.
 */
package org.opends.server.extensions;
@@ -29,12 +29,9 @@
 */
public final class SASLByteChannel implements ConnectionSecurityProvider
{
  /** Private implementation. */
  private final class ByteChannelImpl implements ByteChannel
  {
    /** {@inheritDoc} */
    @Override
    public void close() throws IOException
    {
@@ -48,18 +45,12 @@
      }
    }
    /** {@inheritDoc} */
    @Override
    public boolean isOpen()
    {
      return saslContext != null;
    }
    /** {@inheritDoc} */
    @Override
    public int read(final ByteBuffer unwrappedData) throws IOException
    {
@@ -97,9 +88,6 @@
      }
    }
    /** {@inheritDoc} */
    @Override
    public int write(final ByteBuffer unwrappedData) throws IOException
    {
@@ -154,8 +142,6 @@
      return bytesWritten;
    }
    /** Attempt to read and unwrap the next SASL packet. */
    private int doRecvAndUnwrap() throws IOException
    {
@@ -240,8 +226,6 @@
    }
  }
  /**
   * Return a SASL byte channel instance created using the specified parameters.
   *
@@ -259,8 +243,6 @@
    return new SASLByteChannel(c, name, context);
  }
  private final String name;
  private final ByteChannel channel;
  private final ByteChannelImpl pimpl = new ByteChannelImpl();
@@ -279,8 +261,6 @@
  private final Object readLock = new Object();
  private final Object writeLock = new Object();
  /**
   * Create a SASL byte channel with the specified parameters that is capable of
   * processing a confidentiality/integrity SASL connection.
@@ -308,49 +288,33 @@
    sendWrappedBuffer = ByteBuffer.allocate(sendUnwrappedBufferSize + 64);
  }
  /** {@inheritDoc} */
  @Override
  public ByteChannel getChannel()
  {
    return pimpl;
  }
  /** {@inheritDoc} */
  @Override
  public Certificate[] getClientCertificateChain()
  {
    return new Certificate[0];
  }
  /** {@inheritDoc} */
  @Override
  public String getName()
  {
    return name;
  }
  /** {@inheritDoc} */
  @Override
  public int getSSF()
  {
    return saslContext.getSSF();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isSecure()
  {
    return true;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/SHA1PasswordStorageScheme.java
@@ -16,8 +16,6 @@
 */
package org.opends.server.extensions;
import java.security.MessageDigest;
import java.util.Arrays;
@@ -37,8 +35,6 @@
import static org.opends.server.extensions.ExtensionsConstants.*;
import static org.opends.server.util.StaticUtils.*;
/**
 * This class defines a Directory Server password storage scheme based on the
 * SHA-1 algorithm defined in FIPS 180-1.  This is a one-way digest algorithm
@@ -53,22 +49,16 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * The fully-qualified name of this class.
   */
  /** The fully-qualified name of this class. */
  private static final String CLASS_NAME =
       "org.opends.server.extensions.SHA1PasswordStorageScheme";
  /** The message digest that will actually be used to generate the SHA-1 hashes. */
  private MessageDigest messageDigest;
  /** The lock used to provide threadsafe access to the message digest. */
  private Object digestLock;
  /**
   * Creates a new instance of this password storage scheme.  Note that no
   * initialization should be performed here, as all initialization should be
@@ -79,9 +69,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordStorageScheme(
                   SHA1PasswordStorageSchemeCfg configuration)
@@ -103,18 +90,12 @@
    digestLock = new Object();
  }
  /** {@inheritDoc} */
  @Override
  public String getStorageSchemeName()
  {
    return STORAGE_SCHEME_NAME_SHA_1;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePassword(ByteSequence plaintext)
         throws DirectoryException
@@ -151,9 +132,6 @@
    return ByteString.valueOfUtf8(Base64.encode(digestBytes));
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePasswordWithScheme(ByteSequence plaintext)
         throws DirectoryException
@@ -197,9 +175,6 @@
    return ByteString.valueOfUtf8(buffer);
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordMatches(ByteSequence plaintextPassword,
                                 ByteSequence storedPassword)
@@ -247,9 +222,6 @@
    return userPWDigestBytes.equals(storedPWDigestBytes);
  }
  /** {@inheritDoc} */
  @Override
  public boolean supportsAuthPasswordSyntax()
  {
@@ -257,9 +229,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodeAuthPassword(ByteSequence plaintext)
         throws DirectoryException
@@ -269,9 +238,6 @@
    throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean authPasswordMatches(ByteSequence plaintextPassword,
                                     String authInfo, String authValue)
@@ -280,18 +246,12 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isReversible()
  {
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getPlaintextValue(ByteSequence storedPassword)
         throws DirectoryException
@@ -301,9 +261,6 @@
    throw new DirectoryException(ResultCode.CONSTRAINT_VIOLATION, message);
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getAuthPasswordPlaintextValue(String authInfo,
                                                  String authValue)
@@ -314,9 +271,6 @@
    throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isStorageSchemeSecure()
  {
@@ -324,4 +278,3 @@
    return true;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/SMTPAccountStatusNotificationHandler.java
@@ -87,8 +87,6 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /** A mapping between the notification types and the message template. */
  private HashMap<AccountStatusNotificationType,
                  List<NotificationMessageTemplateElement>> templateMap;
@@ -99,20 +97,12 @@
  /** The current configuration for this account status notification handler. */
  private SMTPAccountStatusNotificationHandlerCfg currentConfig;
  /**
   * Creates a new, uninitialized instance of this account status notification
   * handler.
   */
  /** Creates a new, uninitialized instance of this account status notification handler. */
  public SMTPAccountStatusNotificationHandler()
  {
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializeStatusNotificationHandler(
                   SMTPAccountStatusNotificationHandlerCfg configuration)
@@ -143,8 +133,6 @@
    }
  }
  /**
   * Examines the provided configuration and parses the message subject
   * information from it.
@@ -197,8 +185,6 @@
    return map;
  }
  /**
   * Examines the provided configuration and parses the message template
   * information from it.
@@ -266,8 +252,6 @@
    return map;
  }
  /**
   * Parses the specified template file into a list of notification message
   * template elements.
@@ -439,7 +423,6 @@
          }
        }
        // We need to put a CRLF at the end of the line, as per the SMTP spec.
        elementList.add(new TextNotificationMessageTemplateElement("\r\n"));
      }
@@ -459,9 +442,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(
                      AccountStatusNotificationHandlerCfg
@@ -473,9 +453,6 @@
    return isConfigurationChangeAcceptable(config, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public void handleStatusNotification(AccountStatusNotification notification)
  {
@@ -484,7 +461,6 @@
    HashMap<AccountStatusNotificationType,
            List<NotificationMessageTemplateElement>> templates = templateMap;
    // First, see if the notification type is one that we handle.  If not, then
    // return without doing anything.
    AccountStatusNotificationType notificationType =
@@ -502,7 +478,6 @@
      return;
    }
    // It is a notification that should be handled, so we can start generating
    // the e-mail message.  First, check to see if there are any mail attributes
    // that would cause us to send a message to the end user.
@@ -553,7 +528,6 @@
      }
    }
    // Next, add any explicitly-defined recipients.
    if (recipientAddrs != null)
    {
@@ -568,7 +542,6 @@
      recipients.addAll(recipientAddrs);
    }
    // Get the message subject to use.  If none is defined, then use a generic
    // subject.
    String subject = subjects.get(notificationType);
@@ -586,8 +559,6 @@
      logger.trace("Using per-type subject of " + subject);
    }
    // Generate the message body.
    LocalizableMessageBuilder messageBody = new LocalizableMessageBuilder();
    for (NotificationMessageTemplateElement e : templateElements)
@@ -595,7 +566,6 @@
      e.generateValue(messageBody, notification);
    }
    // Create and send the e-mail message.
    EMailMessage message = new EMailMessage(config.getSenderAddress(),
                                            recipients, subject);
@@ -610,7 +580,6 @@
      logger.trace("Set message body of " + messageBody);
    }
    try
    {
      message.send();
@@ -629,9 +598,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      SMTPAccountStatusNotificationHandlerCfg configuration,
@@ -639,7 +605,6 @@
  {
    boolean configAcceptable = true;
    // Make sure that the Directory Server is configured with information about
    // one or more mail servers.
    List<Properties> propList = DirectoryServer.getMailServerPropertySets();
@@ -649,7 +614,6 @@
      configAcceptable = false;
    }
    // Make sure that either an explicit recipient list or a set of email
    // address attributes were provided.
    Set<AttributeType> mailAttrs = configuration.getEmailAddressAttributeType();
@@ -688,9 +652,6 @@
    return configAcceptable;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
              SMTPAccountStatusNotificationHandlerCfg configuration)
opendj-server-legacy/src/main/java/org/opends/server/extensions/SMTPAlertHandler.java
@@ -36,8 +36,6 @@
import org.opends.server.types.InitializationException;
import org.opends.server.util.EMailMessage;
/**
 * This class implements a Directory Server alert handler that may be used to
 * send administrative alerts via SMTP.
@@ -48,16 +46,10 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /** The current configuration for this alert handler. */
  private SMTPAlertHandlerCfg currentConfig;
  /**
   * Creates a new instance of this SMTP alert handler.
   */
  /** Creates a new instance of this SMTP alert handler. */
  public SMTPAlertHandler()
  {
    super();
@@ -65,9 +57,7 @@
    // All initialization should be done in the initializeAlertHandler method.
  }
  /** {@inheritDoc} */
  @Override
  public void initializeAlertHandler(SMTPAlertHandlerCfg configuration)
       throws ConfigException, InitializationException
  {
@@ -83,34 +73,26 @@
    currentConfig = configuration;
  }
  /** {@inheritDoc} */
  @Override
  public AlertHandlerCfg getAlertHandlerConfiguration()
  {
    return currentConfig;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(AlertHandlerCfg configuration,
                                           List<LocalizableMessage> unacceptableReasons)
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public void finalizeAlertHandler()
  {
    // No action is required.
  }
  /** {@inheritDoc} */
  @Override
  public void sendAlertNotification(AlertGenerator generator, String alertType,
                                    LocalizableMessage alertMessage)
  {
@@ -150,8 +132,6 @@
    }
  }
  /**
   * Replaces any occurrences of special tokens in the given string with the
   * appropriate value.  Tokens supported include:
@@ -181,9 +161,7 @@
             replace("\\n", "\r\n");
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      SMTPAlertHandlerCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -191,9 +169,7 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                                 SMTPAlertHandlerCfg configuration)
  {
opendj-server-legacy/src/main/java/org/opends/server/extensions/SaltedMD5PasswordStorageScheme.java
@@ -16,8 +16,6 @@
 */
package org.opends.server.extensions;
import java.security.MessageDigest;
import java.util.Arrays;
import java.util.Random;
@@ -38,8 +36,6 @@
import static org.opends.server.extensions.ExtensionsConstants.*;
import static org.opends.server.util.StaticUtils.*;
/**
 * This class defines a Directory Server password storage scheme based on the
 * MD5 algorithm defined in RFC 1321.  This is a one-way digest algorithm so
@@ -56,24 +52,16 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * The fully-qualified name of this class.
   */
  /** The fully-qualified name of this class. */
  private static final String CLASS_NAME =
       "org.opends.server.extensions.SaltedMD5PasswordStorageScheme";
  /**
   * The number of bytes of random data to use as the salt when generating the
   * hashes.
   */
  /** The number of bytes of random data to use as the salt when generating the hashes. */
  private static final int NUM_SALT_BYTES = 8;
  /** The number of bytes MD5 algorithm produces. */
  private static final int MD5_LENGTH = 16;
  /** The message digest that will actually be used to generate the MD5 hashes. */
  private MessageDigest messageDigest;
@@ -83,8 +71,6 @@
  /** The secure random number generator to use to generate the salt values. */
  private Random random;
  /**
   * Creates a new instance of this password storage scheme.  Note that no
   * initialization should be performed here, as all initialization should be
@@ -95,9 +81,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordStorageScheme(
                   SaltedMD5PasswordStorageSchemeCfg configuration)
@@ -115,23 +98,16 @@
      throw new InitializationException(message, e);
    }
    digestLock = new Object();
    random     = new Random();
  }
  /** {@inheritDoc} */
  @Override
  public String getStorageSchemeName()
  {
    return STORAGE_SCHEME_NAME_SALTED_MD5;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePassword(ByteSequence plaintext)
         throws DirectoryException
@@ -181,9 +157,6 @@
    return ByteString.valueOfUtf8(Base64.encode(hashPlusSalt));
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePasswordWithScheme(ByteSequence plaintext)
         throws DirectoryException
@@ -239,9 +212,6 @@
    return ByteString.valueOfUtf8(buffer);
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordMatches(ByteSequence plaintextPassword,
                                 ByteSequence storedPassword)
@@ -272,7 +242,6 @@
      return false;
    }
    // Use the salt to generate a digest based on the provided plain-text value.
    int plainBytesLength = plaintextPassword.length();
    byte[] plainPlusSalt = new byte[plainBytesLength + saltLength];
@@ -303,9 +272,6 @@
    return Arrays.equals(digestBytes, userDigestBytes);
  }
  /** {@inheritDoc} */
  @Override
  public boolean supportsAuthPasswordSyntax()
  {
@@ -313,18 +279,12 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public String getAuthPasswordSchemeName()
  {
    return AUTH_PASSWORD_SCHEME_NAME_SALTED_MD5;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodeAuthPassword(ByteSequence plaintext)
         throws DirectoryException
@@ -364,7 +324,6 @@
      }
    }
    // Encode and return the value.
    StringBuilder authPWValue = new StringBuilder();
    authPWValue.append(AUTH_PASSWORD_SCHEME_NAME_SALTED_MD5);
@@ -376,9 +335,6 @@
    return ByteString.valueOfUtf8(authPWValue);
  }
  /** {@inheritDoc} */
  @Override
  public boolean authPasswordMatches(ByteSequence plaintextPassword,
                                     String authInfo, String authValue)
@@ -397,7 +353,6 @@
      return false;
    }
    int plainBytesLength = plaintextPassword.length();
    byte[] plainPlusSaltBytes = new byte[plainBytesLength + saltBytes.length];
    plaintextPassword.copyTo(plainPlusSaltBytes);
@@ -418,18 +373,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isReversible()
  {
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getPlaintextValue(ByteSequence storedPassword)
         throws DirectoryException
@@ -439,9 +388,6 @@
    throw new DirectoryException(ResultCode.CONSTRAINT_VIOLATION, message);
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getAuthPasswordPlaintextValue(String authInfo,
                                                  String authValue)
@@ -452,9 +398,6 @@
    throw new DirectoryException(ResultCode.CONSTRAINT_VIOLATION, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isStorageSchemeSecure()
  {
@@ -462,4 +405,3 @@
    return true;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/SaltedSHA1PasswordStorageScheme.java
@@ -16,8 +16,6 @@
 */
package org.opends.server.extensions;
import java.security.MessageDigest;
import java.util.Arrays;
import java.util.Random;
@@ -38,8 +36,6 @@
import static org.opends.server.extensions.ExtensionsConstants.*;
import static org.opends.server.util.StaticUtils.*;
/**
 * This class defines a Directory Server password storage scheme based on the
 * SHA-1 algorithm defined in FIPS 180-1.  This is a one-way digest algorithm
@@ -56,24 +52,16 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * The fully-qualified name of this class.
   */
  /** The fully-qualified name of this class. */
  private static final String CLASS_NAME =
       "org.opends.server.extensions.SaltedSHA1PasswordStorageScheme";
  /**
   * The number of bytes of random data to use as the salt when generating the
   * hashes.
   */
  /** The number of bytes of random data to use as the salt when generating the hashes. */
  private static final int NUM_SALT_BYTES = 8;
  /** The number of bytes SHA algorithm produces. */
  private static final int SHA1_LENGTH = 20;
  /** The message digest that will actually be used to generate the SHA-1 hashes. */
  private MessageDigest messageDigest;
@@ -83,8 +71,6 @@
  /** The secure random number generator to use to generate the salt values. */
  private Random random;
  /**
   * Creates a new instance of this password storage scheme.  Note that no
   * initialization should be performed here, as all initialization should be
@@ -95,9 +81,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordStorageScheme(
                   SaltedSHA1PasswordStorageSchemeCfg configuration)
@@ -119,18 +102,12 @@
    random     = new Random();
  }
  /** {@inheritDoc} */
  @Override
  public String getStorageSchemeName()
  {
    return STORAGE_SCHEME_NAME_SALTED_SHA_1;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePassword(ByteSequence plaintext)
         throws DirectoryException
@@ -180,9 +157,6 @@
    return ByteString.valueOfUtf8(Base64.encode(hashPlusSalt));
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePasswordWithScheme(ByteSequence plaintext)
         throws DirectoryException
@@ -238,9 +212,6 @@
    return ByteString.valueOfUtf8(buffer);
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordMatches(ByteSequence plaintextPassword,
                                 ByteSequence storedPassword)
@@ -271,7 +242,6 @@
      return false;
    }
    // Use the salt to generate a digest based on the provided plain-text value.
    int plainBytesLength = plaintextPassword.length();
    byte[] plainPlusSalt = new byte[plainBytesLength + saltLength];
@@ -302,9 +272,6 @@
    return Arrays.equals(digestBytes, userDigestBytes);
  }
  /** {@inheritDoc} */
  @Override
  public boolean supportsAuthPasswordSyntax()
  {
@@ -312,18 +279,12 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public String getAuthPasswordSchemeName()
  {
    return AUTH_PASSWORD_SCHEME_NAME_SALTED_SHA_1;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodeAuthPassword(ByteSequence plaintext)
         throws DirectoryException
@@ -363,7 +324,6 @@
      }
    }
    // Encode and return the value.
    StringBuilder authPWValue = new StringBuilder();
    authPWValue.append(AUTH_PASSWORD_SCHEME_NAME_SALTED_SHA_1);
@@ -375,9 +335,6 @@
    return ByteString.valueOfUtf8(authPWValue);
  }
  /** {@inheritDoc} */
  @Override
  public boolean authPasswordMatches(ByteSequence plaintextPassword,
                                     String authInfo, String authValue)
@@ -396,7 +353,6 @@
      return false;
    }
    int plainBytesLength = plaintextPassword.length();
    byte[] plainPlusSaltBytes = new byte[plainBytesLength + saltBytes.length];
    plaintextPassword.copyTo(plainPlusSaltBytes);
@@ -417,18 +373,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isReversible()
  {
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getPlaintextValue(ByteSequence storedPassword)
         throws DirectoryException
@@ -438,9 +388,6 @@
    throw new DirectoryException(ResultCode.CONSTRAINT_VIOLATION, message);
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getAuthPasswordPlaintextValue(String authInfo,
                                                  String authValue)
@@ -451,9 +398,6 @@
    throw new DirectoryException(ResultCode.CONSTRAINT_VIOLATION, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isStorageSchemeSecure()
  {
@@ -461,8 +405,6 @@
    return true;
  }
  /**
   * Generates an encoded password string from the given clear-text password.
   * This method is primarily intended for use when it is necessary to generate
@@ -500,7 +442,6 @@
      throw new DirectoryException(ResultCode.OTHER, message, e);
    }
    byte[] digestBytes    = messageDigest.digest(passwordPlusSalt);
    byte[] digestPlusSalt = new byte[digestBytes.length + NUM_SALT_BYTES];
    System.arraycopy(digestBytes, 0, digestPlusSalt, 0, digestBytes.length);
@@ -512,4 +453,3 @@
           Base64.encode(digestPlusSalt);
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/SaltedSHA256PasswordStorageScheme.java
@@ -16,8 +16,6 @@
 */
package org.opends.server.extensions;
import java.security.MessageDigest;
import java.util.Arrays;
import java.util.Random;
@@ -38,8 +36,6 @@
import static org.opends.server.extensions.ExtensionsConstants.*;
import static org.opends.server.util.StaticUtils.*;
/**
 * This class defines a Directory Server password storage scheme based on the
 * 256-bit SHA-2 algorithm defined in FIPS 180-2.  This is a one-way digest
@@ -56,27 +52,17 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * The fully-qualified name of this class.
   */
  /** The fully-qualified name of this class. */
  private static final String CLASS_NAME =
       "org.opends.server.extensions.SaltedSHA256PasswordStorageScheme";
  /**
   * The number of bytes of random data to use as the salt when generating the
   * hashes.
   */
  /** The number of bytes of random data to use as the salt when generating the hashes. */
  private static final int NUM_SALT_BYTES = 8;
  /** Size of the dgiest in bytes. */
  private static final int SHA256_LENGTH = 256 / 8;
  /**
   * The message digest that will actually be used to generate the 256-bit SHA-2
   * hashes.
   */
  /** The message digest that will actually be used to generate the 256-bit SHA-2 hashes. */
  private MessageDigest messageDigest;
  /** The lock used to provide threadsafe access to the message digest. */
@@ -85,8 +71,6 @@
  /** The secure random number generator to use to generate the salt values. */
  private Random random;
  /**
   * Creates a new instance of this password storage scheme.  Note that no
   * initialization should be performed here, as all initialization should be
@@ -97,9 +81,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordStorageScheme(
                   SaltedSHA256PasswordStorageSchemeCfg configuration)
@@ -119,23 +100,16 @@
      throw new InitializationException(message, e);
    }
    digestLock = new Object();
    random     = new Random();
  }
  /** {@inheritDoc} */
  @Override
  public String getStorageSchemeName()
  {
    return STORAGE_SCHEME_NAME_SALTED_SHA_256;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePassword(ByteSequence plaintext)
         throws DirectoryException
@@ -185,9 +159,6 @@
    return ByteString.valueOfUtf8(Base64.encode(hashPlusSalt));
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePasswordWithScheme(ByteSequence plaintext)
         throws DirectoryException
@@ -243,9 +214,6 @@
    return ByteString.valueOfUtf8(buffer);
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordMatches(ByteSequence plaintextPassword,
                                 ByteSequence storedPassword)
@@ -278,7 +246,6 @@
      return false;
    }
    // Use the salt to generate a digest based on the provided plain-text value.
    int plainBytesLength = plaintextPassword.length();
    byte[] plainPlusSalt = new byte[plainBytesLength + saltLength];
@@ -309,9 +276,6 @@
    return Arrays.equals(digestBytes, userDigestBytes);
  }
  /** {@inheritDoc} */
  @Override
  public boolean supportsAuthPasswordSyntax()
  {
@@ -319,18 +283,12 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public String getAuthPasswordSchemeName()
  {
    return AUTH_PASSWORD_SCHEME_NAME_SALTED_SHA_256;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodeAuthPassword(ByteSequence plaintext)
         throws DirectoryException
@@ -370,7 +328,6 @@
      }
    }
    // Encode and return the value.
    StringBuilder authPWValue = new StringBuilder();
    authPWValue.append(AUTH_PASSWORD_SCHEME_NAME_SALTED_SHA_256);
@@ -382,9 +339,6 @@
    return ByteString.valueOfUtf8(authPWValue);
  }
  /** {@inheritDoc} */
  @Override
  public boolean authPasswordMatches(ByteSequence plaintextPassword,
                                     String authInfo, String authValue)
@@ -403,7 +357,6 @@
      return false;
    }
    int plainBytesLength = plaintextPassword.length();
    byte[] plainPlusSaltBytes = new byte[plainBytesLength + saltBytes.length];
    plaintextPassword.copyTo(plainPlusSaltBytes);
@@ -424,18 +377,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isReversible()
  {
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getPlaintextValue(ByteSequence storedPassword)
         throws DirectoryException
@@ -445,9 +392,6 @@
    throw new DirectoryException(ResultCode.CONSTRAINT_VIOLATION, message);
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getAuthPasswordPlaintextValue(String authInfo,
                                                  String authValue)
@@ -458,9 +402,6 @@
    throw new DirectoryException(ResultCode.CONSTRAINT_VIOLATION, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isStorageSchemeSecure()
  {
@@ -468,4 +409,3 @@
    return true;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/SaltedSHA384PasswordStorageScheme.java
@@ -16,8 +16,6 @@
 */
package org.opends.server.extensions;
import java.security.MessageDigest;
import java.util.Arrays;
import java.util.Random;
@@ -38,8 +36,6 @@
import static org.opends.server.extensions.ExtensionsConstants.*;
import static org.opends.server.util.StaticUtils.*;
/**
 * This class defines a Directory Server password storage scheme based on the
 * 384-bit SHA-2 algorithm defined in FIPS 180-2.  This is a one-way digest
@@ -56,28 +52,17 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * The fully-qualified name of this class.
   */
  /** The fully-qualified name of this class. */
  private static final String CLASS_NAME =
       "org.opends.server.extensions.SaltedSHA384PasswordStorageScheme";
  /**
   * The number of bytes of random data to use as the salt when generating the
   * hashes.
   */
  /** The number of bytes of random data to use as the salt when generating the hashes. */
  private static final int NUM_SALT_BYTES = 8;
  /** The size of the digest in bytes. */
  private static final int SHA384_LENGTH = 384 / 8;
  /**
   * The message digest that will actually be used to generate the 384-bit SHA-2
   * hashes.
   */
  /** The message digest that will actually be used to generate the 384-bit SHA-2 hashes. */
  private MessageDigest messageDigest;
  /** The lock used to provide threadsafe access to the message digest. */
@@ -86,8 +71,6 @@
  /** The secure random number generator to use to generate the salt values. */
  private Random random;
  /**
   * Creates a new instance of this password storage scheme.  Note that no
   * initialization should be performed here, as all initialization should be
@@ -98,9 +81,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordStorageScheme(
                   SaltedSHA384PasswordStorageSchemeCfg configuration)
@@ -120,23 +100,16 @@
      throw new InitializationException(message, e);
    }
    digestLock = new Object();
    random     = new Random();
  }
  /** {@inheritDoc} */
  @Override
  public String getStorageSchemeName()
  {
    return STORAGE_SCHEME_NAME_SALTED_SHA_384;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePassword(ByteSequence plaintext)
         throws DirectoryException
@@ -186,9 +159,6 @@
    return ByteString.valueOfUtf8(Base64.encode(hashPlusSalt));
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePasswordWithScheme(ByteSequence plaintext)
         throws DirectoryException
@@ -244,9 +214,6 @@
    return ByteString.valueOfUtf8(buffer);
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordMatches(ByteSequence plaintextPassword,
                                 ByteSequence storedPassword)
@@ -279,7 +246,6 @@
      return false;
    }
    // Use the salt to generate a digest based on the provided plain-text value.
    int plainBytesLength = plaintextPassword.length();
    byte[] plainPlusSalt = new byte[plainBytesLength + saltLength];
@@ -310,9 +276,6 @@
    return Arrays.equals(digestBytes, userDigestBytes);
  }
  /** {@inheritDoc} */
  @Override
  public boolean supportsAuthPasswordSyntax()
  {
@@ -320,18 +283,12 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public String getAuthPasswordSchemeName()
  {
    return AUTH_PASSWORD_SCHEME_NAME_SALTED_SHA_384;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodeAuthPassword(ByteSequence plaintext)
         throws DirectoryException
@@ -371,7 +328,6 @@
      }
    }
    // Encode and return the value.
    StringBuilder authPWValue = new StringBuilder();
    authPWValue.append(AUTH_PASSWORD_SCHEME_NAME_SALTED_SHA_384);
@@ -383,9 +339,6 @@
    return ByteString.valueOfUtf8(authPWValue);
  }
  /** {@inheritDoc} */
  @Override
  public boolean authPasswordMatches(ByteSequence plaintextPassword,
                                     String authInfo, String authValue)
@@ -404,7 +357,6 @@
      return false;
    }
    int plainBytesLength = plaintextPassword.length();
    byte[] plainPlusSaltBytes = new byte[plainBytesLength + saltBytes.length];
    plaintextPassword.copyTo(plainPlusSaltBytes);
@@ -425,18 +377,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isReversible()
  {
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getPlaintextValue(ByteSequence storedPassword)
         throws DirectoryException
@@ -446,9 +392,6 @@
    throw new DirectoryException(ResultCode.CONSTRAINT_VIOLATION, message);
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getAuthPasswordPlaintextValue(String authInfo,
                                                  String authValue)
@@ -459,9 +402,6 @@
    throw new DirectoryException(ResultCode.CONSTRAINT_VIOLATION, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isStorageSchemeSecure()
  {
@@ -469,4 +409,3 @@
    return true;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/SaltedSHA512PasswordStorageScheme.java
@@ -16,8 +16,6 @@
 */
package org.opends.server.extensions;
import java.security.MessageDigest;
import java.util.Arrays;
import java.util.Random;
@@ -38,8 +36,6 @@
import static org.opends.server.extensions.ExtensionsConstants.*;
import static org.opends.server.util.StaticUtils.*;
/**
 * This class defines a Directory Server password storage scheme based on the
 * 512-bit SHA-2 algorithm defined in FIPS 180-2.  This is a one-way digest
@@ -56,28 +52,17 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * The fully-qualified name of this class.
   */
  /** The fully-qualified name of this class. */
  private static final String CLASS_NAME =
       "org.opends.server.extensions.SaltedSHA512PasswordStorageScheme";
  /**
   * The number of bytes of random data to use as the salt when generating the
   * hashes.
   */
  /** The number of bytes of random data to use as the salt when generating the hashes. */
  private static final int NUM_SALT_BYTES = 8;
  /** The size of the digest in bytes. */
  private static final int SHA512_LENGTH = 512 / 8;
  /**
   * The message digest that will actually be used to generate the 512-bit SHA-2
   * hashes.
   */
  /** The message digest that will actually be used to generate the 512-bit SHA-2 hashes. */
  private MessageDigest messageDigest;
  /** The lock used to provide threadsafe access to the message digest. */
@@ -86,8 +71,6 @@
  /** The secure random number generator to use to generate the salt values. */
  private Random random;
  /**
   * Creates a new instance of this password storage scheme.  Note that no
   * initialization should be performed here, as all initialization should be
@@ -98,9 +81,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordStorageScheme(
                   SaltedSHA512PasswordStorageSchemeCfg configuration)
@@ -124,18 +104,12 @@
    random     = new Random();
  }
  /** {@inheritDoc} */
  @Override
  public String getStorageSchemeName()
  {
    return STORAGE_SCHEME_NAME_SALTED_SHA_512;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePassword(ByteSequence plaintext)
         throws DirectoryException
@@ -185,9 +159,6 @@
    return ByteString.valueOfUtf8(Base64.encode(hashPlusSalt));
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePasswordWithScheme(ByteSequence plaintext)
         throws DirectoryException
@@ -243,9 +214,6 @@
    return ByteString.valueOfUtf8(buffer);
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordMatches(ByteSequence plaintextPassword,
                                 ByteSequence storedPassword)
@@ -278,7 +246,6 @@
      return false;
    }
    // Use the salt to generate a digest based on the provided plain-text value.
    int plainBytesLength = plaintextPassword.length();
    byte[] plainPlusSalt = new byte[plainBytesLength + saltLength];
@@ -309,9 +276,6 @@
    return Arrays.equals(digestBytes, userDigestBytes);
  }
  /** {@inheritDoc} */
  @Override
  public boolean supportsAuthPasswordSyntax()
  {
@@ -319,18 +283,12 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public String getAuthPasswordSchemeName()
  {
    return AUTH_PASSWORD_SCHEME_NAME_SALTED_SHA_512;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodeAuthPassword(ByteSequence plaintext)
         throws DirectoryException
@@ -370,7 +328,6 @@
      }
    }
    // Encode and return the value.
    StringBuilder authPWValue = new StringBuilder();
    authPWValue.append(AUTH_PASSWORD_SCHEME_NAME_SALTED_SHA_512);
@@ -382,9 +339,6 @@
    return ByteString.valueOfUtf8(authPWValue);
  }
  /** {@inheritDoc} */
  @Override
  public boolean authPasswordMatches(ByteSequence plaintextPassword,
                                     String authInfo, String authValue)
@@ -403,7 +357,6 @@
      return false;
    }
    int plainBytesLength = plaintextPassword.length();
    byte[] plainPlusSaltBytes = new byte[plainBytesLength + saltBytes.length];
    plaintextPassword.copyTo(plainPlusSaltBytes);
@@ -424,18 +377,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isReversible()
  {
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getPlaintextValue(ByteSequence storedPassword)
         throws DirectoryException
@@ -445,9 +392,6 @@
    throw new DirectoryException(ResultCode.CONSTRAINT_VIOLATION, message);
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getAuthPasswordPlaintextValue(String authInfo,
                                                  String authValue)
@@ -458,9 +402,6 @@
    throw new DirectoryException(ResultCode.CONSTRAINT_VIOLATION, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isStorageSchemeSecure()
  {
@@ -468,8 +409,6 @@
    return true;
  }
  /**
   * Generates an encoded password string from the given clear-text password.
   * This method is primarily intended for use when it is necessary to generate
@@ -508,7 +447,6 @@
      throw new DirectoryException(ResultCode.OTHER, message, e);
    }
    byte[] digestBytes    = messageDigest.digest(passwordPlusSalt);
    byte[] digestPlusSalt = new byte[digestBytes.length + NUM_SALT_BYTES];
    System.arraycopy(digestBytes, 0, digestPlusSalt, 0, digestBytes.length);
@@ -520,4 +458,3 @@
           Base64.encode(digestPlusSalt);
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/SimilarityBasedPasswordValidator.java
@@ -40,24 +40,18 @@
    PasswordValidator<SimilarityBasedPasswordValidatorCfg> implements
    ConfigurationChangeListener<SimilarityBasedPasswordValidatorCfg>
{
  /** The current configuration for this password validator. */
  private SimilarityBasedPasswordValidatorCfg currentConfig;
  /**
   * Creates a new instance of this password validator.
   */
  /** Creates a new instance of this password validator. */
  public SimilarityBasedPasswordValidator()
  {
    super();
    // All initialization must be done in the initializePasswordValidator
    // method.
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordValidator(
                   SimilarityBasedPasswordValidatorCfg configuration)
@@ -68,22 +62,17 @@
    currentConfig = configuration;
  }
  /** {@inheritDoc} */
  @Override
  public void finalizePasswordValidator()
  {
    currentConfig.removeSimilarityBasedChangeListener(this);
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordIsAcceptable(ByteString newPassword,
                                      Set<ByteString> currentPasswords,
                                      Operation operation, Entry userEntry,
                                      LocalizableMessageBuilder invalidReason)  {
    int minDifference = currentConfig.getMinPasswordDifference();
    ByteString passwd = newPassword == null
                        ? ByteString.empty()
@@ -115,7 +104,7 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      SimilarityBasedPasswordValidatorCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -123,7 +112,7 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
              SimilarityBasedPasswordValidatorCfg configuration)
  {
opendj-server-legacy/src/main/java/org/opends/server/extensions/SimpleStaticGroupMemberList.java
@@ -17,9 +17,6 @@
package org.opends.server.extensions;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.i18n.LocalizedIllegalArgumentException;
import java.util.Iterator;
@@ -38,8 +35,6 @@
import static org.opends.server.extensions.StaticGroup.*;
import static org.forgerock.util.Reject.*;
/**
 * This class provides an implementation of the {@code MemberList} class that
 * may be used in conjunction when static groups when no additional criteria is
@@ -71,14 +66,12 @@
    this.memberDNIterator = memberDNs.iterator();
  }
  /** {@inheritDoc} */
  @Override
  public boolean hasMoreMembers()
  {
    return memberDNIterator.hasNext();
  }
  /** {@inheritDoc} */
  @Override
  public DN nextMemberDN()
         throws MembershipException
@@ -102,7 +95,6 @@
    return dn;
  }
  /** {@inheritDoc} */
  @Override
  public Entry nextMemberEntry() throws MembershipException
  {
@@ -132,11 +124,9 @@
    return null;
  }
  /** {@inheritDoc} */
  @Override
  public void close()
  {
    // No implementation is required.
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/SoftReferenceEntryCache.java
@@ -67,10 +67,7 @@
  /** The mapping between backend+ID and their corresponding entries. */
  private ConcurrentMap<String, ConcurrentMap<Long, Reference<CacheEntry>>> idMap;
  /**
   * The reference queue that will be used to notify us whenever a soft
   * reference is freed.
   */
  /** The reference queue that will be used to notify us whenever a soft reference is freed. */
  private ReferenceQueue<CacheEntry> referenceQueue;
  /** Currently registered configuration object. */
@@ -79,8 +76,6 @@
  private Thread cleanerThread;
  private volatile boolean shutdown;
  /**
   * Creates a new instance of this soft reference entry cache.  All
   * initialization should be performed in the <CODE>initializeEntryCache</CODE>
@@ -98,7 +93,6 @@
    referenceQueue = new ReferenceQueue<>();
  }
  /** {@inheritDoc} */
  @Override
  public void initializeEntryCache(
      SoftReferenceEntryCacheCfg configuration
@@ -129,7 +123,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public synchronized void finalizeEntryCache()
  {
@@ -152,14 +145,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean containsEntry(DN entryDN)
  {
    return entryDN != null && dnMap.containsKey(entryDN);
  }
  /** {@inheritDoc} */
  @Override
  public Entry getEntry(DN entryDN)
  {
@@ -182,7 +173,6 @@
    return cacheEntry.getEntry();
  }
  /** {@inheritDoc} */
  @Override
  public long getEntryID(DN entryDN)
  {
@@ -195,7 +185,6 @@
    return -1;
  }
  /** {@inheritDoc} */
  @Override
  public DN getEntryDN(String backendID, long entryID)
  {
@@ -213,7 +202,6 @@
    return null;
  }
  /** {@inheritDoc} */
  @Override
  public void putEntry(Entry entry, String backendID, long entryID)
  {
@@ -244,7 +232,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean putEntryIfAbsent(Entry entry, String backendID, long entryID)
  {
@@ -254,7 +241,6 @@
      return false;
    }
    // Create the cache entry based on the provided information.
    CacheEntry cacheEntry = new CacheEntry(entry, backendID, entryID);
    Reference<CacheEntry> ref = new SoftReference<>(cacheEntry, referenceQueue);
@@ -276,7 +262,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public void removeEntry(DN entryDN)
  {
@@ -309,7 +294,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void clear()
  {
@@ -317,7 +301,6 @@
    idMap.clear();
  }
  /** {@inheritDoc} */
  @Override
  public void clearBackend(String backendID)
  {
@@ -340,7 +323,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void clearSubtree(DN baseDN)
  {
@@ -356,7 +338,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void handleLowMemory()
  {
@@ -365,7 +346,6 @@
    // FIXME -- Do we need to do anything at all here?
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(EntryCacheCfg configuration,
                                           List<LocalizableMessage> unacceptableReasons)
@@ -375,7 +355,6 @@
    return isConfigurationChangeAcceptable(config, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
      SoftReferenceEntryCacheCfg configuration,
@@ -393,7 +372,6 @@
    return errorHandler.getIsAcceptable();
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(SoftReferenceEntryCacheCfg configuration)
  {
@@ -415,8 +393,6 @@
    return changeResult;
  }
  /**
   * Parses the provided configuration and configure the entry cache.
   *
@@ -555,7 +531,6 @@
    return Long.valueOf(dnMap.size());
  }
  /** {@inheritDoc} */
  @Override
  public String toVerboseString()
  {
opendj-server-legacy/src/main/java/org/opends/server/extensions/StartTLSExtendedOperation.java
@@ -37,7 +37,6 @@
public class StartTLSExtendedOperation
       extends ExtendedOperationHandler<StartTLSExtendedOperationHandlerCfg>
{
  /**
   * Create an instance of this StartTLS extended operation handler.  All
   * initialization should be performed in the
@@ -48,7 +47,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializeExtendedOperationHandler(
                   StartTLSExtendedOperationHandlerCfg config)
@@ -70,7 +68,6 @@
    // happen.
    operation.setResponseOID(OID_START_TLS_REQUEST);
    // Get the reference to the client connection.  If there is none, then fail.
    ClientConnection clientConnection = operation.getClientConnection();
    if (clientConnection == null)
@@ -80,7 +77,6 @@
      return;
    }
    // Make sure that the client connection is capable of enabling TLS.  If not,
    // then fail.
    TLSCapableConnection tlsCapableConnection;
@@ -108,14 +104,12 @@
    operation.setResultCode(ResultCode.SUCCESS);
  }
  /** {@inheritDoc} */
  @Override
  public String getExtendedOperationOID()
  {
    return OID_START_TLS_REQUEST;
  }
  /** {@inheritDoc} */
  @Override
  public String getExtendedOperationName()
  {
opendj-server-legacy/src/main/java/org/opends/server/extensions/StaticGroup.java
@@ -131,7 +131,6 @@
    this.memberDNs           = memberDNs;
  }
  /** {@inheritDoc} */
  @Override
  public void initializeGroupImplementation(StaticGroupImplementationCfg configuration)
         throws ConfigException, InitializationException
@@ -139,7 +138,6 @@
    // No additional initialization is required.
  }
  /** {@inheritDoc} */
  @Override
  public StaticGroup newInstance(ServerContext serverContext, Entry groupEntry) throws DirectoryException
  {
@@ -216,7 +214,6 @@
    return new StaticGroup(serverContext, groupEntry.getName(), someMemberAttributeType, someMemberDNs);
  }
  /** {@inheritDoc} */
  @Override
  public SearchFilter getGroupDefinitionFilter()
         throws DirectoryException
@@ -229,7 +226,6 @@
    return SearchFilter.createFilterFromString(filterString);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isGroupDefinition(Entry entry)
  {
@@ -264,28 +260,24 @@
    return entry.hasObjectClass(DirectoryConfig.getObjectClass(ocName, true));
  }
  /** {@inheritDoc} */
  @Override
  public DN getGroupDN()
  {
    return groupEntryDN;
  }
  /** {@inheritDoc} */
  @Override
  public void setGroupDN(DN groupDN)
  {
    groupEntryDN = groupDN;
  }
  /** {@inheritDoc} */
  @Override
  public boolean supportsNestedGroups()
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public List<DN> getNestedGroupDNs()
  {
@@ -308,7 +300,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void addNestedGroup(DN nestedGroupDN)
         throws UnsupportedOperationException, DirectoryException
@@ -347,7 +338,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void removeNestedGroup(DN nestedGroupDN)
         throws UnsupportedOperationException, DirectoryException
@@ -386,7 +376,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isMember(DN userDN, Set<DN> examinedGroups) throws DirectoryException
  {
@@ -422,7 +411,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isMember(Entry userEntry, Set<DN> examinedGroups)
         throws DirectoryException
@@ -486,7 +474,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public MemberList getMembers() throws DirectoryException
  {
@@ -502,7 +489,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public MemberList getMembers(DN baseDN, SearchScope scope, SearchFilter filter) throws DirectoryException
  {
@@ -522,14 +508,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean mayAlterMemberList()
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public void updateMembers(List<Modification> modifications)
         throws UnsupportedOperationException, DirectoryException
@@ -597,7 +581,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void addMember(Entry userEntry) throws UnsupportedOperationException, DirectoryException
  {
@@ -633,7 +616,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void removeMember(DN userDN) throws UnsupportedOperationException, DirectoryException
  {
@@ -684,7 +666,6 @@
        newLinkedList(control), groupEntryDN, mods);
  }
  /** {@inheritDoc} */
  @Override
  public void toString(StringBuilder buffer)
  {
@@ -717,4 +698,3 @@
    return compactDn.toDn();
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/StructuralObjectClassVirtualAttributeProvider.java
@@ -39,10 +39,7 @@
public class StructuralObjectClassVirtualAttributeProvider
     extends VirtualAttributeProvider<StructuralObjectClassVirtualAttributeCfg>
{
  /**
   * Creates a new instance of this structuralObjectClass virtual attribute
   * provider.
   */
  /** Creates a new instance of this structuralObjectClass virtual attribute provider. */
  public StructuralObjectClassVirtualAttributeProvider()
  {
    super();
@@ -51,14 +48,12 @@
    // initializeVirtualAttributeProvider method.
  }
  /** {@inheritDoc} */
  @Override
  public boolean isMultiValued()
  {
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public Attribute getValues(Entry entry, VirtualAttributeRule rule)
  {
@@ -66,14 +61,12 @@
        .getStructuralObjectClass().getNameOrOID());
  }
  /** {@inheritDoc} */
  @Override
  public boolean hasValue(Entry entry, VirtualAttributeRule rule)
  {
    return entry.getStructuralObjectClass() != null;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult matchesSubstring(Entry entry,
                                          VirtualAttributeRule rule,
@@ -85,7 +78,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult greaterThanOrEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -95,7 +87,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult lessThanOrEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -105,7 +96,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult approximatelyEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -115,7 +105,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isSearchable(VirtualAttributeRule rule,
                              SearchOperation searchOperation,
@@ -126,7 +115,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public void processSearch(VirtualAttributeRule rule,
                            SearchOperation searchOperation)
@@ -138,4 +126,3 @@
    searchOperation.appendErrorMessage(message);
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/SubjectDNToUserAttributeCertificateMapper.java
@@ -73,7 +73,6 @@
  /** The set of attributes to return in search result entries. */
  private LinkedHashSet<String> requestedAttributes;
  /**
   * Creates a new instance of this certificate mapper.  Note that all actual
   * initialization should be done in the
@@ -84,9 +83,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializeCertificateMapper(
                   SubjectDNToUserAttributeCertificateMapperCfg
@@ -98,7 +94,6 @@
    currentConfig = configuration;
    configEntryDN = configuration.dn();
    // Make sure that the subject attribute is configured for equality in all
    // appropriate backends.
    Set<DN> cfgBaseDNs = configuration.getUserBaseDN();
@@ -123,18 +118,12 @@
    requestedAttributes = newLinkedHashSet("*", "+");
  }
  /** {@inheritDoc} */
  @Override
  public void finalizeCertificateMapper()
  {
    currentConfig.removeSubjectDNToUserAttributeChangeListener(this);
  }
  /** {@inheritDoc} */
  @Override
  public Entry mapCertificateToUser(Certificate[] certificateChain)
         throws DirectoryException
@@ -143,7 +132,6 @@
         currentConfig;
    AttributeType subjectAttributeType = config.getSubjectAttribute();
    // Make sure that a peer certificate was provided.
    if (certificateChain == null || certificateChain.length == 0)
    {
@@ -151,7 +139,6 @@
      throw new DirectoryException(ResultCode.INVALID_CREDENTIALS, message);
    }
    // Get the first certificate in the chain.  It must be an X.509 certificate.
    X509Certificate peerCertificate;
    try
@@ -166,7 +153,6 @@
      throw new DirectoryException(ResultCode.INVALID_CREDENTIALS, message);
    }
    // Get the subject from the peer certificate and use it to create a search
    // filter.
    X500Principal peerPrincipal = peerCertificate.getSubjectX500Principal();
@@ -174,7 +160,6 @@
    SearchFilter filter = SearchFilter.createEqualityFilter(
        subjectAttributeType, ByteString.valueOfUtf8(peerName));
    // If we have an explicit set of base DNs, then use it.  Otherwise, use the
    // set of public naming contexts in the server.
    Collection<DN> baseDNs = config.getUserBaseDN();
@@ -183,7 +168,6 @@
      baseDNs = DirectoryServer.getPublicNamingContexts().keySet();
    }
    // For each base DN, issue an internal search in an attempt to map the
    // certificate.
    Entry userEntry = null;
@@ -213,7 +197,6 @@
          throw new DirectoryException(
                  ResultCode.INVALID_CREDENTIALS, message);
        case TIME_LIMIT_EXCEEDED:
        case ADMIN_LIMIT_EXCEEDED:
          // The search criteria was too inefficient.
@@ -241,15 +224,11 @@
      }
    }
    // If we've gotten here, then we either found exactly one user entry or we
    // didn't find any.  Either way, return the entry or null to the caller.
    return userEntry;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationAcceptable(CertificateMapperCfg configuration,
                                           List<LocalizableMessage> unacceptableReasons)
@@ -259,9 +238,6 @@
    return isConfigurationChangeAcceptable(config, unacceptableReasons);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      SubjectDNToUserAttributeCertificateMapperCfg
@@ -271,9 +247,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
              SubjectDNToUserAttributeCertificateMapperCfg
@@ -283,4 +256,3 @@
    return new ConfigChangeResult();
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/SubjectEqualsDNCertificateMapper.java
@@ -16,8 +16,6 @@
 */
package org.opends.server.extensions;
import java.security.cert.Certificate;
import java.security.cert.X509Certificate;
import javax.security.auth.x500.X500Principal;
@@ -54,9 +52,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializeCertificateMapper(SubjectEqualsDNCertificateMapperCfg
                                               configuration)
@@ -65,8 +60,6 @@
    // No initialization is required.
  }
  /**
   * Establishes a mapping between the information in the provided certificate
   * chain to the DN of a single user in the Directory Server.
@@ -98,7 +91,6 @@
      throw new DirectoryException(ResultCode.INVALID_CREDENTIALS, message);
    }
    // Get the first certificate in the chain.  It must be an X.509 certificate.
    X509Certificate peerCertificate;
    try
@@ -113,7 +105,6 @@
      throw new DirectoryException(ResultCode.INVALID_CREDENTIALS, message);
    }
    // Get the subject from the peer certificate and decode it as a DN.
    X500Principal peerPrincipal = peerCertificate.getSubjectX500Principal();
    DN subjectDN;
@@ -161,4 +152,3 @@
    }
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/SubschemaSubentryVirtualAttributeProvider.java
@@ -38,10 +38,7 @@
public class SubschemaSubentryVirtualAttributeProvider
       extends VirtualAttributeProvider<SubschemaSubentryVirtualAttributeCfg>
{
  /**
   * Creates a new instance of this subschemaSubentry virtual attribute
   * provider.
   */
  /** Creates a new instance of this subschemaSubentry virtual attribute provider. */
  public SubschemaSubentryVirtualAttributeProvider()
  {
    super();
@@ -50,14 +47,12 @@
    // initializeVirtualAttributeProvider method.
  }
  /** {@inheritDoc} */
  @Override
  public boolean isMultiValued()
  {
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public Attribute getValues(Entry entry, VirtualAttributeRule rule)
  {
@@ -69,7 +64,6 @@
    return Attributes.create(rule.getAttributeType(), schemaDN.toString());
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult matchesSubstring(Entry entry,
                                          VirtualAttributeRule rule,
@@ -81,7 +75,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult greaterThanOrEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -91,7 +84,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult lessThanOrEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -101,7 +93,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public ConditionResult approximatelyEqualTo(Entry entry,
                              VirtualAttributeRule rule,
@@ -111,7 +102,6 @@
    return ConditionResult.UNDEFINED;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isSearchable(VirtualAttributeRule rule,
                              SearchOperation searchOperation,
@@ -122,7 +112,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public void processSearch(VirtualAttributeRule rule,
                            SearchOperation searchOperation)
@@ -134,4 +123,3 @@
    searchOperation.appendErrorMessage(message);
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/TLSByteChannel.java
@@ -12,12 +12,10 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2008-2009 Sun Microsystems, Inc.
 * Portions Copyright 2012-2015 ForgeRock AS.
 * Portions Copyright 2012-2016 ForgeRock AS.
 */
package org.opends.server.extensions;
import java.io.IOException;
import java.nio.ByteBuffer;
import java.nio.channels.ByteChannel;
@@ -36,20 +34,12 @@
import org.forgerock.i18n.slf4j.LocalizedLogger;
/**
 * A class that provides a TLS byte channel implementation.
 */
/** A class that provides a TLS byte channel implementation. */
public final class TLSByteChannel implements ConnectionSecurityProvider
{
  /**
   * Private implementation.
   */
  /** Private implementation. */
  private final class ByteChannelImpl implements ByteChannel
  {
    /** {@inheritDoc} */
    @Override
    public void close() throws IOException
    {
@@ -98,18 +88,12 @@
      }
    }
    /** {@inheritDoc} */
    @Override
    public boolean isOpen()
    {
      return !sslEngine.isOutboundDone() || !sslEngine.isInboundDone();
    }
    /** {@inheritDoc} */
    @Override
    public int read(final ByteBuffer unwrappedData) throws IOException
    {
@@ -147,9 +131,6 @@
      }
    }
    /** {@inheritDoc} */
    @Override
    public int write(final ByteBuffer unwrappedData) throws IOException
    {
@@ -176,8 +157,6 @@
      return bytesWritten;
    }
    /**
     * It seems that the SSL engine does not remember if an error has already
     * occurred so we must cache it here and rethrow. See OPENDJ-652.
@@ -190,8 +169,6 @@
      }
    }
    private void doHandshake(final boolean isReading) throws IOException
    {
      // This lock is probably unnecessary since tasks can be run in parallel,
@@ -234,8 +211,6 @@
      }
    }
    /** Attempt to read and unwrap the next SSL packet. */
    private int doRecvAndUnwrap() throws IOException
    {
@@ -323,8 +298,6 @@
      }
    }
    /** Attempt to wrap and send the next SSL packet. */
    private int doWrapAndSend(final ByteBuffer unwrappedData)
        throws IOException
@@ -382,17 +355,12 @@
      }
    }
    private boolean isHandshaking(final HandshakeStatus status)
    {
      return status != HandshakeStatus.NOT_HANDSHAKING;
    }
  }
  /**
   * Map of cipher phrases to effective key size (bits). Taken from the
   * following RFCs: 5289, 4346, 3268,4132 and 4162 and the IANA Transport Layer
@@ -445,8 +413,6 @@
  private final Object readLock = new Object();
  private final Object writeLock = new Object();
  /**
   * Creates an TLS byte channel instance using the specified LDAP connection
   * configuration, client connection, SSL context and socket channel
@@ -476,18 +442,12 @@
    recvUnwrappedBuffer.flip();
  }
  /** {@inheritDoc} */
  @Override
  public ByteChannel getChannel()
  {
    return pimpl;
  }
  /** {@inheritDoc} */
  @Override
  public Certificate[] getClientCertificateChain()
  {
@@ -502,18 +462,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public String getName()
  {
    return "TLS";
  }
  /** {@inheritDoc} */
  @Override
  public int getSSF()
  {
@@ -546,13 +500,9 @@
    return null;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isSecure()
  {
    return true;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/TextNotificationMessageTemplateElement.java
@@ -12,17 +12,13 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2008 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.extensions;
import org.forgerock.i18n.LocalizableMessageBuilder;
import org.opends.server.types.AccountStatusNotification;
/**
 * This class implements a notification message template element that will
 * generate a value using static text.
@@ -33,8 +29,6 @@
  /** The static text associated with this element. */
  private final String text;
  /**
   * Creates a new text notification message template element from the provided
   * string.
@@ -46,13 +40,10 @@
    this.text = text;
  }
  /** {@inheritDoc} */
  @Override
  public void generateValue(LocalizableMessageBuilder buffer,
                            AccountStatusNotification notification)
  {
    buffer.append(text);
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/TraditionalWorkQueue.java
@@ -16,8 +16,6 @@
 */
package org.opends.server.extensions;
import static org.opends.messages.ConfigMessages.*;
import static org.opends.messages.CoreMessages.*;
@@ -45,8 +43,6 @@
import org.opends.server.types.InitializationException;
import org.opends.server.types.Operation;
/**
 * This class defines a data structure for storing and interacting with the
 * Directory Server work queue.
@@ -112,16 +108,10 @@
  /** The queue that will be used to actually hold the pending operations. */
  private LinkedBlockingQueue<Operation> opQueue;
  /**
   * The lock used to provide threadsafe access for the queue, used for
   * non-config changes.
   */
  /** The lock used to provide threadsafe access for the queue, used for non-config changes. */
  private final ReadLock queueReadLock;
  /**
   * The lock used to provide threadsafe access for the queue, used for config
   * changes.
   */
  /** The lock used to provide threadsafe access for the queue, used for config changes. */
  private final WriteLock queueWriteLock;
  {
    ReentrantReadWriteLock lock = new ReentrantReadWriteLock();
@@ -129,8 +119,6 @@
    queueWriteLock = lock.writeLock();
  }
  /**
   * Creates a new instance of this work queue. All initialization should be
   * performed in the <CODE>initializeWorkQueue</CODE> method.
@@ -140,9 +128,6 @@
    // No implementation should be performed here.
  }
  /** {@inheritDoc} */
  @Override
  public void initializeWorkQueue(TraditionalWorkQueueCfg configuration)
      throws ConfigException, InitializationException
@@ -206,9 +191,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public void finalizeWorkQueue(LocalizableMessage reason)
  {
@@ -262,8 +244,6 @@
    }
  }
  /**
   * Indicates whether this work queue has received a request to shut down.
   *
@@ -283,8 +263,6 @@
    }
  }
  /**
   * Submits an operation to be processed by one of the worker threads
   * associated with this work queue.
@@ -302,7 +280,6 @@
    submitOperation(operation, isBlocking);
  }
  /** {@inheritDoc} */
  @Override
  public boolean trySubmitOperation(Operation operation)
      throws DirectoryException
@@ -389,8 +366,6 @@
    }
  }
  /**
   * Retrieves the next operation that should be processed by one of the worker
   * threads, blocking if necessary until a new request arrives. This method
@@ -407,8 +382,6 @@
    return retryNextOperation(workerThread, 0);
  }
  /**
   * Retrieves the next operation that should be processed by one of the worker
   * threads following a previous failure attempt. A maximum of five consecutive
@@ -512,8 +485,6 @@
    return retryNextOperation(workerThread, numFailures + 1);
  }
  /**
   * Kills this worker thread if needed. This method assumes that the read lock
   * is already taken and ensure that it is taken on exit.
@@ -568,8 +539,6 @@
    return false;
  }
  /**
   * Retrieves the total number of operations that have been successfully
   * submitted to this work queue for processing since server startup. This does
@@ -584,8 +553,6 @@
    return opsSubmitted.longValue();
  }
  /**
   * Retrieves the total number of operations that have been rejected because
   * the work queue was already at its maximum capacity.
@@ -598,8 +565,6 @@
    return queueFullRejects.longValue();
  }
  /**
   * Retrieves the number of pending operations in the queue that have not yet
   * been picked up for processing. Note that this method is not a constant-time
@@ -622,9 +587,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
      TraditionalWorkQueueCfg configuration, List<LocalizableMessage> unacceptableReasons)
@@ -632,9 +594,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
      TraditionalWorkQueueCfg configuration)
@@ -680,7 +639,6 @@
      }
    }
    // Apply a change to the maximum capacity if appropriate. Since we can't
    // change capacity on the fly, then we'll have to create a new queue and
    // transfer any remaining items into it. Any thread that is waiting on the
@@ -753,9 +711,6 @@
    return new ConfigChangeResult();
  }
  /** {@inheritDoc} */
  @Override
  public boolean isIdle()
  {
opendj-server-legacy/src/main/java/org/opends/server/extensions/TripleDESPasswordStorageScheme.java
@@ -16,8 +16,6 @@
 */
package org.opends.server.extensions;
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.opendj.server.config.server.TripleDESPasswordStorageSchemeCfg;
import org.opends.server.api.PasswordStorageScheme;
@@ -36,8 +34,6 @@
import static org.opends.server.extensions.ExtensionsConstants.*;
import static org.opends.server.util.StaticUtils.*;
/**
 * This class defines a Directory Server password storage scheme that will
 * encode values using the triple-DES (DES/EDE) reversible encryption algorithm.
@@ -49,16 +45,12 @@
{
  private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  /**
   * The reference to the Directory Server crypto manager that we will use to
   * handle the encryption/decryption.
   */
  private CryptoManager cryptoManager;
  /**
   * Creates a new instance of this password storage scheme.  Note that no
   * initialization should be performed here, as all initialization should be
@@ -69,9 +61,6 @@
    super();
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordStorageScheme(
                   TripleDESPasswordStorageSchemeCfg configuration)
@@ -80,18 +69,12 @@
    cryptoManager = DirectoryServer.getCryptoManager();
  }
  /** {@inheritDoc} */
  @Override
  public String getStorageSchemeName()
  {
    return STORAGE_SCHEME_NAME_3DES;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePassword(ByteSequence plaintext)
         throws DirectoryException
@@ -124,9 +107,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodePasswordWithScheme(ByteSequence plaintext)
         throws DirectoryException
@@ -166,9 +146,6 @@
    return ByteString.valueOfUtf8(buffer);
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordMatches(ByteSequence plaintextPassword,
                                 ByteSequence storedPassword)
@@ -188,18 +165,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isReversible()
  {
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getPlaintextValue(ByteSequence storedPassword)
         throws DirectoryException
@@ -221,9 +192,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean supportsAuthPasswordSyntax()
  {
@@ -231,9 +199,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString encodeAuthPassword(ByteSequence plaintext)
         throws DirectoryException
@@ -243,9 +208,6 @@
    throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean authPasswordMatches(ByteSequence plaintextPassword,
                                     String authInfo, String authValue)
@@ -254,9 +216,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public ByteString getAuthPasswordPlaintextValue(String authInfo,
                                                  String authValue)
@@ -267,9 +226,6 @@
    throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM, message);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isStorageSchemeSecure()
  {
@@ -277,4 +233,3 @@
    return true;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/UniqueCharactersPasswordValidator.java
@@ -44,11 +44,7 @@
  /** The current configuration for this password validator. */
  private UniqueCharactersPasswordValidatorCfg currentConfig;
  /**
   * Creates a new instance of this unique characters password validator.
   */
  /** Creates a new instance of this unique characters password validator. */
  public UniqueCharactersPasswordValidator()
  {
    super();
@@ -57,9 +53,6 @@
    // performed in the initializePasswordValidator() method.
  }
  /** {@inheritDoc} */
  @Override
  public void initializePasswordValidator(
                   UniqueCharactersPasswordValidatorCfg configuration)
@@ -68,18 +61,12 @@
    currentConfig = configuration;
  }
  /** {@inheritDoc} */
  @Override
  public void finalizePasswordValidator()
  {
    currentConfig.removeUniqueCharactersChangeListener(this);
  }
  /** {@inheritDoc} */
  @Override
  public boolean passwordIsAcceptable(ByteString newPassword,
                                      Set<ByteString> currentPasswords,
@@ -96,8 +83,6 @@
      return true;
    }
    // Create a set that will be used to keep track of the unique characters
    // contained in the proposed password.
    HashSet<Character> passwordCharacters = new HashSet<>();
@@ -129,9 +114,7 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      UniqueCharactersPasswordValidatorCfg configuration,
                      List<LocalizableMessage> unacceptableReasons)
@@ -141,9 +124,7 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                      UniqueCharactersPasswordValidatorCfg configuration)
  {
@@ -156,4 +137,3 @@
    return ccr;
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/UserDNNotificationMessageTemplateElement.java
@@ -12,17 +12,13 @@
 * information: "Portions Copyright [year] [name of copyright owner]".
 *
 * Copyright 2008 Sun Microsystems, Inc.
 * Portions Copyright 2014-2015 ForgeRock AS.
 * Portions Copyright 2014-2016 ForgeRock AS.
 */
package org.opends.server.extensions;
import org.forgerock.i18n.LocalizableMessageBuilder;
import org.opends.server.types.AccountStatusNotification;
/**
 * This class implements a notification message template element that will
 * generate a value that is the string representation of the target user's DN.
@@ -30,21 +26,16 @@
public class UserDNNotificationMessageTemplateElement
       extends NotificationMessageTemplateElement
{
  /**
   * Creates a new user DN notification message template element.
   */
  /** Creates a new user DN notification message template element. */
  public UserDNNotificationMessageTemplateElement()
  {
    // No implementation is required.
  }
  /** {@inheritDoc} */
  @Override
  public void generateValue(LocalizableMessageBuilder buffer,
                            AccountStatusNotification notification)
  {
    buffer.append(notification.getUserDN());
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/UserDefinedVirtualAttributeProvider.java
@@ -43,11 +43,7 @@
  /** The current configuration for this virtual attribute provider. */
  private UserDefinedVirtualAttributeCfg currentConfig;
  /**
   * Creates a new instance of this member virtual attribute provider.
   */
  /** Creates a new instance of this member virtual attribute provider. */
  public UserDefinedVirtualAttributeProvider()
  {
    super();
@@ -56,9 +52,6 @@
    // initializeVirtualAttributeProvider method.
  }
  /** {@inheritDoc} */
  @Override
  public void initializeVirtualAttributeProvider(
                            UserDefinedVirtualAttributeCfg configuration)
@@ -68,27 +61,18 @@
    configuration.addUserDefinedChangeListener(this);
  }
  /** {@inheritDoc} */
  @Override
  public void finalizeVirtualAttributeProvider()
  {
    currentConfig.removeUserDefinedChangeListener(this);
  }
  /** {@inheritDoc} */
  @Override
  public boolean isMultiValued()
  {
    return currentConfig == null || currentConfig.getValue().size() > 1;
  }
  /** {@inheritDoc} */
  @Override
  public Attribute getValues(Entry entry, VirtualAttributeRule rule)
  {
@@ -107,9 +91,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isSearchable(VirtualAttributeRule rule,
                              SearchOperation searchOperation,
@@ -119,9 +100,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public void processSearch(VirtualAttributeRule rule,
                            SearchOperation searchOperation)
@@ -130,9 +108,6 @@
    return;
  }
  /** {@inheritDoc} */
  @Override
  public boolean isConfigurationChangeAcceptable(
                      UserDefinedVirtualAttributeCfg configuration,
@@ -142,9 +117,6 @@
    return true;
  }
  /** {@inheritDoc} */
  @Override
  public ConfigChangeResult applyConfigurationChange(
                                 UserDefinedVirtualAttributeCfg configuration)
@@ -155,4 +127,3 @@
    return new ConfigChangeResult();
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/VirtualStaticGroup.java
@@ -62,8 +62,6 @@
  /** The DN of the target group that will provide membership information. */
  private DN targetGroupDN;
  /**
   * Creates a new, uninitialized virtual static group instance.  This is
   * intended for internal use only.
@@ -75,8 +73,6 @@
    // No initialization is required here.
  }
  /**
   * Creates a new virtual static group instance with the provided information.
   *
@@ -96,9 +92,6 @@
    this.targetGroupDN = targetGroupDN;
  }
  /** {@inheritDoc} */
  @Override
  public void initializeGroupImplementation(
                   VirtualStaticGroupImplementationCfg configuration)
@@ -107,17 +100,12 @@
    // No additional initialization is required.
  }
  /** {@inheritDoc} */
  @Override
  public VirtualStaticGroup newInstance(ServerContext serverContext, Entry groupEntry)
         throws DirectoryException
  {
    ifNull(groupEntry);
    // Get the target group DN attribute from the entry, if there is one.
    DN targetDN = null;
    AttributeType targetType = DirectoryServer.getAttributeType(ATTR_TARGET_GROUP_DN);
@@ -155,9 +143,6 @@
    return new VirtualStaticGroup(groupEntry.getName(), targetDN);
  }
  /** {@inheritDoc} */
  @Override
  public SearchFilter getGroupDefinitionFilter()
         throws DirectoryException
@@ -168,9 +153,6 @@
                                               OC_VIRTUAL_STATIC_GROUP + ")");
  }
  /** {@inheritDoc} */
  @Override
  public boolean isGroupDefinition(Entry entry)
  {
@@ -183,26 +165,18 @@
    return entry.hasObjectClass(virtualStaticGroupClass);
  }
  /** {@inheritDoc} */
  @Override
  public DN getGroupDN()
  {
    return groupEntryDN;
  }
  /** {@inheritDoc} */
  @Override
  public void setGroupDN(DN groupDN)
  {
    groupEntryDN = groupDN;
  }
  /**
   * Retrieves the DN of the target group for this virtual static group.
   *
@@ -213,9 +187,6 @@
    return targetGroupDN;
  }
  /** {@inheritDoc} */
  @Override
  public boolean supportsNestedGroups()
  {
@@ -223,9 +194,6 @@
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public List<DN> getNestedGroupDNs()
  {
@@ -233,9 +201,6 @@
    return Collections.<DN>emptyList();
  }
  /** {@inheritDoc} */
  @Override
  public void addNestedGroup(DN nestedGroupDN)
         throws UnsupportedOperationException, DirectoryException
@@ -245,9 +210,6 @@
    throw new UnsupportedOperationException(message.toString());
  }
  /** {@inheritDoc} */
  @Override
  public void removeNestedGroup(DN nestedGroupDN)
         throws UnsupportedOperationException, DirectoryException
@@ -257,9 +219,6 @@
    throw new UnsupportedOperationException(message.toString());
  }
  /** {@inheritDoc} */
  @Override
  public boolean isMember(DN userDN, Set<DN> examinedGroups)
         throws DirectoryException
@@ -287,9 +246,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean isMember(Entry userEntry, Set<DN> examinedGroups)
         throws DirectoryException
@@ -317,9 +273,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public MemberList getMembers()
         throws DirectoryException
@@ -342,9 +295,6 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public MemberList getMembers(DN baseDN, SearchScope scope,
                               SearchFilter filter)
@@ -368,16 +318,12 @@
    }
  }
  /** {@inheritDoc} */
  @Override
  public boolean mayAlterMemberList()
  {
    return false;
  }
  /** {@inheritDoc} */
  @Override
  public void updateMembers(List<Modification> modifications)
         throws UnsupportedOperationException, DirectoryException
@@ -387,7 +333,6 @@
    throw new UnsupportedOperationException(message.toString());
  }
  /** {@inheritDoc} */
  @Override
  public void addMember(Entry userEntry)
         throws UnsupportedOperationException, DirectoryException
@@ -397,9 +342,6 @@
    throw new UnsupportedOperationException(message.toString());
  }
  /** {@inheritDoc} */
  @Override
  public void removeMember(DN userDN)
         throws UnsupportedOperationException, DirectoryException
@@ -409,9 +351,6 @@
    throw new UnsupportedOperationException(message.toString());
  }
  /** {@inheritDoc} */
  @Override
  public void toString(StringBuilder buffer)
  {
@@ -422,4 +361,3 @@
    buffer.append(")");
  }
}
opendj-server-legacy/src/main/java/org/opends/server/extensions/WhoAmIExtendedOperation.java
@@ -54,7 +54,6 @@
    super(newHashSet(OID_PROXIED_AUTH_V1, OID_PROXIED_AUTH_V2));
  }
  /** {@inheritDoc} */
  @Override
  public void initializeExtendedOperationHandler(
                   WhoAmIExtendedOperationHandlerCfg config)
@@ -63,7 +62,6 @@
    super.initializeExtendedOperationHandler(config);
  }
  /** {@inheritDoc} */
  @Override
  public void processExtendedOperation(ExtendedOperation operation)
  {
@@ -123,7 +121,6 @@
      return;
    }
    // Get the authorization DN for the operation and add it to the response
    // value.
    String authzID;
@@ -143,14 +140,12 @@
    operation.setResultCode(ResultCode.SUCCESS);
  }
  /** {@inheritDoc} */
  @Override
  public String getExtendedOperationOID()
  {
    return OID_WHO_AM_I_REQUEST;
  }
  /** {@inheritDoc} */
  @Override
  public String getExtendedOperationName()
  {
opendj-server-legacy/src/main/java/org/opends/server/loggers/AbstractTextAccessLogPublisher.java
@@ -70,9 +70,7 @@
abstract class AbstractTextAccessLogPublisher
    <T extends AccessLogPublisherCfg> extends AccessLogPublisher<T>
{
  /**
   * Criteria based filter.
   */
  /** Criteria based filter. */
  static final class CriteriaFilter implements Filter
  {
    private final AccessLogFilteringCriteriaCfg cfg;
@@ -221,7 +219,6 @@
    /** {@inheritDoc} */
    @Override
    public boolean isConnectLoggable(final ClientConnection connection)
    {
@@ -230,7 +227,6 @@
    /** {@inheritDoc} */
    @Override
    public boolean isDisconnectLoggable(final ClientConnection connection)
    {
@@ -241,7 +237,6 @@
    /** {@inheritDoc} */
    @Override
    public boolean isRequestLoggable(final Operation operation)
    {
@@ -259,7 +254,6 @@
    /** {@inheritDoc} */
    @Override
    public boolean isResponseLoggable(final Operation operation)
    {
@@ -627,9 +621,7 @@
  /**
   * Log message filter predicate.
   */
  /** Log message filter predicate. */
  private static interface Filter
  {
    /**
@@ -677,9 +669,7 @@
  /**
   * A filter which performs a logical OR over a set of sub-filters.
   */
  /** A filter which performs a logical OR over a set of sub-filters. */
  private static final class OrFilter implements Filter
  {
    private final Filter[] subFilters;
@@ -699,7 +689,6 @@
    /** {@inheritDoc} */
    @Override
    public boolean isConnectLoggable(final ClientConnection connection)
    {
@@ -716,7 +705,6 @@
    /** {@inheritDoc} */
    @Override
    public boolean isDisconnectLoggable(final ClientConnection connection)
    {
@@ -733,7 +721,6 @@
    /** {@inheritDoc} */
    @Override
    public boolean isRequestLoggable(final Operation operation)
    {
@@ -750,7 +737,6 @@
    /** {@inheritDoc} */
    @Override
    public boolean isResponseLoggable(final Operation operation)
    {
@@ -806,7 +792,6 @@
    /** {@inheritDoc} */
    @Override
    public boolean isConnectLoggable(final ClientConnection connection)
    {
@@ -830,7 +815,6 @@
    /** {@inheritDoc} */
    @Override
    public boolean isDisconnectLoggable(final ClientConnection connection)
    {
@@ -854,7 +838,6 @@
    /** {@inheritDoc} */
    @Override
    public boolean isRequestLoggable(final Operation operation)
    {
@@ -878,7 +861,6 @@
    /** {@inheritDoc} */
    @Override
    public boolean isResponseLoggable(final Operation operation)
    {
@@ -925,13 +907,10 @@
  /**
   * Configuration change listener.
   */
  /** Configuration change listener. */
  private final class ChangeListener implements
      ConfigurationChangeListener<AccessLogPublisherCfg>
  {
    /** {@inheritDoc} */
    @Override
    public final ConfigChangeResult applyConfigurationChange(
        final AccessLogPublisherCfg configuration)
@@ -947,7 +926,6 @@
    /** {@inheritDoc} */
    @Override
    public final boolean isConfigurationChangeAcceptable(
        final AccessLogPublisherCfg configuration,
@@ -959,16 +937,13 @@
  /**
   * Filter criteria configuration listener.
   */
  /** Filter criteria configuration listener. */
  private final class FilterListener implements
      ConfigurationChangeListener<AccessLogFilteringCriteriaCfg>,
      ConfigurationAddListener<AccessLogFilteringCriteriaCfg>,
      ConfigurationDeleteListener<AccessLogFilteringCriteriaCfg>
  {
    /** {@inheritDoc} */
    @Override
    public ConfigChangeResult applyConfigurationAdd(
        final AccessLogFilteringCriteriaCfg configuration)
@@ -981,7 +956,6 @@
    /** {@inheritDoc} */
    @Override
    public ConfigChangeResult applyConfigurationChange(
        final AccessLogFilteringCriteriaCfg configuration)
@@ -993,7 +967,6 @@
    /** {@inheritDoc} */
    @Override
    public ConfigChangeResult applyConfigurationDelete(
        final AccessLogFilteringCriteriaCfg configuration)
@@ -1005,7 +978,6 @@
    /** {@inheritDoc} */
    @Override
    public boolean isConfigurationAddAcceptable(
        final AccessLogFilteringCriteriaCfg configuration,
@@ -1016,7 +988,6 @@
    /** {@inheritDoc} */
    @Override
    public boolean isConfigurationChangeAcceptable(
        final AccessLogFilteringCriteriaCfg configuration,
@@ -1027,7 +998,6 @@
    /** {@inheritDoc} */
    @Override
    public boolean isConfigurationDeleteAcceptable(
        final AccessLogFilteringCriteriaCfg configuration,
@@ -1058,9 +1028,7 @@
  /**
   * The tracer object for the debug logger.
   */
  /** The tracer object for the debug logger. */
  protected static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
  private AccessLogPublisherCfg cfg;
  private Filter filter;
@@ -1069,7 +1037,6 @@
  /** {@inheritDoc} */
  @Override
  public final void close()
  {
@@ -1102,7 +1069,6 @@
  /** {@inheritDoc} */
  @Override
  public final DN getDN()
  {
@@ -1124,9 +1090,7 @@
  /**
   * Release any resources owned by the sub-implementation.
   */
  /** Release any resources owned by the sub-implementation. */
  protected abstract void close0();
Diff truncated after the above file
opendj-server-legacy/src/main/java/org/opends/server/loggers/AccessLogPublisher.java opendj-server-legacy/src/main/java/org/opends/server/loggers/AccessLogger.java opendj-server-legacy/src/main/java/org/opends/server/loggers/ActionType.java opendj-server-legacy/src/main/java/org/opends/server/loggers/AsynchronousTextWriter.java opendj-server-legacy/src/main/java/org/opends/server/loggers/ConsoleDebugLogPublisher.java opendj-server-legacy/src/main/java/org/opends/server/loggers/DebugLogPublisher.java opendj-server-legacy/src/main/java/org/opends/server/loggers/DebugLogger.java opendj-server-legacy/src/main/java/org/opends/server/loggers/DebugStackTraceFormatter.java opendj-server-legacy/src/main/java/org/opends/server/loggers/EncryptAction.java opendj-server-legacy/src/main/java/org/opends/server/loggers/ErrorLogPublisher.java opendj-server-legacy/src/main/java/org/opends/server/loggers/ErrorLogger.java opendj-server-legacy/src/main/java/org/opends/server/loggers/FileComparator.java opendj-server-legacy/src/main/java/org/opends/server/loggers/FileNumberRetentionPolicy.java opendj-server-legacy/src/main/java/org/opends/server/loggers/FixedTimeRotationPolicy.java opendj-server-legacy/src/main/java/org/opends/server/loggers/FreeDiskSpaceRetentionPolicy.java opendj-server-legacy/src/main/java/org/opends/server/loggers/GZIPAction.java opendj-server-legacy/src/main/java/org/opends/server/loggers/HTTPAccessLogPublisher.java opendj-server-legacy/src/main/java/org/opends/server/loggers/HTTPAccessLogger.java opendj-server-legacy/src/main/java/org/opends/server/loggers/JDKLogging.java opendj-server-legacy/src/main/java/org/opends/server/loggers/JDKLoggingFormater.java opendj-server-legacy/src/main/java/org/opends/server/loggers/LogFileFilter.java opendj-server-legacy/src/main/java/org/opends/server/loggers/MeteredStream.java opendj-server-legacy/src/main/java/org/opends/server/loggers/MultifileTextWriter.java opendj-server-legacy/src/main/java/org/opends/server/loggers/RotationActionThread.java opendj-server-legacy/src/main/java/org/opends/server/loggers/SizeBasedRetentionPolicy.java opendj-server-legacy/src/main/java/org/opends/server/loggers/SizeBasedRotationPolicy.java opendj-server-legacy/src/main/java/org/opends/server/loggers/TextWriter.java opendj-server-legacy/src/main/java/org/opends/server/loggers/ThreadFilterTextErrorLogPublisher.java opendj-server-legacy/src/main/java/org/opends/server/loggers/TimeLimitRotationPolicy.java opendj-server-legacy/src/main/java/org/opends/server/loggers/TimeStampNaming.java opendj-server-legacy/src/main/java/org/opends/server/loggers/ZIPAction.java opendj-server-legacy/src/main/java/org/opends/server/loggers/slf4j/OpenDJLoggerFactory.java opendj-server-legacy/src/main/java/org/opends/server/plugins/AttributeCleanupPlugin.java opendj-server-legacy/src/main/java/org/opends/server/plugins/ChangeNumberControlPlugin.java opendj-server-legacy/src/main/java/org/opends/server/plugins/LDAPADListPlugin.java opendj-server-legacy/src/main/java/org/opends/server/plugins/LastModPlugin.java opendj-server-legacy/src/main/java/org/opends/server/plugins/ReferentialIntegrityPlugin.java opendj-server-legacy/src/main/java/org/opends/server/plugins/SambaPasswordPlugin.java opendj-server-legacy/src/main/java/org/opends/server/plugins/UniqueAttributePlugin.java opendj-server-legacy/src/main/java/org/opends/server/plugins/profiler/ProfileStack.java opendj-server-legacy/src/main/java/org/opends/server/plugins/profiler/ProfilerThread.java opendj-server-legacy/src/main/java/org/opends/server/protocols/LDIFConnectionHandler.java opendj-server-legacy/src/main/java/org/opends/server/protocols/jmx/DirectoryRMIServerSocketFactory.java opendj-server-legacy/src/main/java/org/opends/server/protocols/jmx/OpendsJmxPrincipal.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/ASN1ByteChannelReader.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/AbandonRequestProtocolOp.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/BindRequestProtocolOp.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/CompareRequestProtocolOp.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/DeleteRequestProtocolOp.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/DeleteResponseProtocolOp.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/ExtendedRequestProtocolOp.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/IntermediateResponseProtocolOp.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPClientConnection.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPConnectionHandler.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPConstants.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPControl.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPMessage.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPModification.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPRequestHandler.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPResultCode.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/LDAPStatistics.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/ModifyDNRequestProtocolOp.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/ProtocolOp.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/SearchResultReferenceProtocolOp.java opendj-server-legacy/src/main/java/org/opends/server/protocols/ldap/UnbindRequestProtocolOp.java opendj-server-legacy/src/main/java/org/opends/server/replication/common/ServerStatus.java opendj-server-legacy/src/main/java/org/opends/server/replication/plugin/GenerationIdChecksum.java opendj-server-legacy/src/main/java/org/opends/server/replication/plugin/ReplLDIFOutputStream.java opendj-server-legacy/src/main/java/org/opends/server/replication/plugin/ReplicationRepairRequestControl.java opendj-server-legacy/src/main/java/org/opends/server/replication/protocol/NotSupportedOldVersionPDUException.java opendj-server-legacy/src/main/java/org/opends/server/replication/protocol/RoutableMsg.java opendj-server-legacy/src/main/java/org/opends/server/tasks/EnterLockdownModeTask.java opendj-server-legacy/src/main/java/org/opends/server/tasks/LeaveLockdownModeTask.java opendj-server-legacy/src/main/java/org/opends/server/tasks/RestartTaskThread.java opendj-server-legacy/src/main/java/org/opends/server/tasks/ShutdownTask.java opendj-server-legacy/src/main/java/org/opends/server/tasks/ShutdownTaskThread.java opendj-server-legacy/src/main/java/org/opends/server/tools/PromptTrustManager.java opendj-server-legacy/src/main/java/org/opends/server/tools/dsreplication/PurgeHistoricalScheduleInformation.java opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/AttributeValueTag.java opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/FileTag.java opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/FirstNameTag.java opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/GUIDTag.java opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/IfAbsentTag.java opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/IfPresentTag.java opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/LastNameTag.java opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/ListTag.java opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/MakeLDIFInputStream.java opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/MakeLDIFInputStreamThread.java opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/ParentDNTag.java opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/PresenceTag.java opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/RDNTag.java opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/RandomTag.java opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/SequentialTag.java opendj-server-legacy/src/main/java/org/opends/server/tools/makeldif/StaticTextTag.java opendj-server-legacy/src/main/java/org/opends/server/tools/upgrade/FileManager.java opendj-server-legacy/src/main/java/org/opends/server/types/AcceptRejectWarn.java opendj-server-legacy/src/main/java/org/opends/server/types/AccountStatusNotificationProperty.java opendj-server-legacy/src/main/java/org/opends/server/types/AccountStatusNotificationType.java opendj-server-legacy/src/main/java/org/opends/server/types/AuthenticationType.java opendj-server-legacy/src/main/java/org/opends/server/types/BackupInfo.java opendj-server-legacy/src/main/java/org/opends/server/types/DisconnectReason.java opendj-server-legacy/src/main/java/org/opends/server/types/EntryEncodeConfig.java opendj-server-legacy/src/main/java/org/opends/server/types/ExistingFileBehavior.java opendj-server-legacy/src/main/java/org/opends/server/types/FilterType.java opendj-server-legacy/src/main/java/org/opends/server/types/IndexType.java opendj-server-legacy/src/main/java/org/opends/server/types/IntermediateResponse.java opendj-server-legacy/src/main/java/org/opends/server/types/LDIFImportResult.java opendj-server-legacy/src/main/java/org/opends/server/types/LockType.java opendj-server-legacy/src/main/java/org/opends/server/types/OperationType.java opendj-server-legacy/src/main/java/org/opends/server/types/SSLClientAuthPolicy.java opendj-server-legacy/src/main/java/org/opends/server/util/ChangeRecordEntry.java opendj-server-legacy/src/main/java/org/opends/server/util/DeleteChangeRecordEntry.java opendj-server-legacy/src/main/java/org/opends/server/util/ExpirationCheckTrustManager.java opendj-server-legacy/src/main/java/org/opends/server/util/ModifyDNChangeRecordEntry.java opendj-server-legacy/src/main/java/org/opends/server/util/MultiOutputStream.java opendj-server-legacy/src/main/java/org/opends/server/util/SizeLimitInputStream.java opendj-server-legacy/src/test/java/org/opends/server/TestTextWriter.java opendj-server-legacy/src/test/java/org/opends/server/api/AlertHandlerTestCase.java opendj-server-legacy/src/test/java/org/opends/server/api/AuthenticationPolicyTestCase.java opendj-server-legacy/src/test/java/org/opends/server/extensions/AESPasswordStorageSchemeTestCase.java opendj-server-legacy/src/test/java/org/opends/server/extensions/Base64PasswordStorageSchemeTestCase.java opendj-server-legacy/src/test/java/org/opends/server/extensions/BlowfishPasswordStorageSchemeTestCase.java opendj-server-legacy/src/test/java/org/opends/server/extensions/ClearPasswordStorageSchemeTestCase.java opendj-server-legacy/src/test/java/org/opends/server/extensions/MD5PasswordStorageSchemeTestCase.java opendj-server-legacy/src/test/java/org/opends/server/extensions/RC4PasswordStorageSchemeTestCase.java opendj-server-legacy/src/test/java/org/opends/server/extensions/SASLOverTLSTestCase.java opendj-server-legacy/src/test/java/org/opends/server/extensions/SHA1PasswordStorageSchemeTestCase.java opendj-server-legacy/src/test/java/org/opends/server/extensions/SaltedMD5PasswordStorageSchemeTestCase.java opendj-server-legacy/src/test/java/org/opends/server/extensions/TestAccountStatusNotificationHandler.java opendj-server-legacy/src/test/java/org/opends/server/extensions/TestAlertGenerator.java opendj-server-legacy/src/test/java/org/opends/server/extensions/TripleDESPasswordStorageSchemeTestCase.java opendj-server-legacy/src/test/java/org/opends/server/monitors/StackTraceMonitorTestCase.java opendj-server-legacy/src/test/java/org/opends/server/monitors/SystemInfoMonitorTestCase.java opendj-server-legacy/src/test/java/org/opends/server/monitors/TraditionalWorkQueueMonitorTestCase.java opendj-server-legacy/src/test/java/org/opends/server/monitors/VersionMonitorTestCase.java opendj-server-legacy/src/test/java/org/opends/server/protocols/internal/TestInternalSearchListener.java opendj-server-legacy/src/test/java/org/opends/server/protocols/jmx/PostConnectedDisconnectTest.java opendj-server-legacy/src/test/java/org/opends/server/replication/plugin/ExternalChangelogDomainFakeCfg.java opendj-server-legacy/src/test/java/org/opends/server/tasks/LdifFileWriter.java