You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by el...@apache.org on 2018/06/09 22:50:46 UTC

[directory-ldap-api] branch master updated (85a3c1d -> 3c3df9a)

This is an automated email from the ASF dual-hosted git repository.

elecharny pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/directory-ldap-api.git.


    from 85a3c1d  Moved error and debug messages to I18n
     new 46bb4ba  Moved some error messages to I18n
     new 3c3df9a  Merge branch 'master' of https://gitbox.apache.org/repos/asf/directory-ldap-api

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../java/org/apache/directory/api/i18n/I18n.java   | 14 ++++++++++++++
 .../apache/directory/api/i18n/errors.properties    | 22 +++++++++++++++-------
 .../apache/directory/api/i18n/messages.properties  |  2 ++
 .../api/ldap/codec/api/LdapApiServiceFactory.java  | 12 ++++++------
 .../directory/api/ldap/codec/api/LdapDecoder.java  |  8 ++++----
 .../directory/api/ldap/codec/api/LdapEncoder.java  |  2 +-
 .../ldap/codec/osgi/DefaultLdapCodecService.java   | 10 +++++-----
 7 files changed, 47 insertions(+), 23 deletions(-)

-- 
To stop receiving notification emails like this one, please contact
elecharny@apache.org.

[directory-ldap-api] 02/02: Merge branch 'master' of https://gitbox.apache.org/repos/asf/directory-ldap-api

Posted by el...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

elecharny pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/directory-ldap-api.git

commit 3c3df9a04128b45abe701bf73ebfcdc30802e8d9
Merge: 46bb4ba 85a3c1d
Author: Emmanuel Lécharny <el...@symas.com>
AuthorDate: Sun Jun 10 00:50:08 2018 +0200

    Merge branch 'master' of https://gitbox.apache.org/repos/asf/directory-ldap-api

 .../resources/org/apache/directory/api/i18n/errors.properties     | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --cc i18n/src/main/resources/org/apache/directory/api/i18n/errors.properties
index 219127c,e3c1336..26c3aac
--- a/i18n/src/main/resources/org/apache/directory/api/i18n/errors.properties
+++ b/i18n/src/main/resources/org/apache/directory/api/i18n/errors.properties
@@@ -329,25 -329,19 +329,20 @@@ ERR_05155_FLAG_TYPE_INVALID=The types o
  ERR_05156_INVALID_ATTRIBUTE_TYPE=The Attribute type {0} is invalid : {1}
  ERR_05157_INVALID_DN=The Dn {0} is invalid : {1}
  
--
  ERR_04059=Expected either a byte[] or ByteBuffer argument but got a {0}
 -ERR_04060=Ldap decoder failure: {0}
  ERR_04061=Ldap decoder failure!
 -ERR_04062=Ldap decoder failure, PDU does not contain enough data
 -ERR_04063=The input stream does not contain a full PDU
  ERR_04064=Ldap decoder failure: The input stream does not contain a full PDU
  ERR_04065=Ldap encoder failed to encode object: {0}, error: {1}
  
 -
 -
 -
  # api-ldap-codec-core api       5200-5299
 +ERR_05200_NOT_INITIALIZED_YET=Not initialized yet!
 +ERR_05201_INSTANCE_ALREADY_SET=The LdapCodecService is already set to an instance of {0}
 +ERR_05202_FAILED_TO_INSTANCIATE=Failed to instantiate a viable instance, instantiating new instance of {0}
 +ERR_05203_CODEC_ARGS_CANNOT_BE_NULL=Codec argument cannot be null
 +ERR_05204_LDAP_DECODER_FAILURE=Ldap decoder failure: {0}
 +ERR_05205_PDU_DOES_NOT_CONTAIN_ENOUGH_DATA=Ldap decoder failure, PDU does not contain enough data
 +ERR_05206_INPUT_STREAM_TOO_SHORT_PDU=The input stream does not contain a full PDU
 +
- ERR_04060=
- ERR_04062=Ldap decoder failure, PDU does not contain enough data
- ERR_04063=The input stream does not contain a full PDU
- 
  # api-ldap-codec-core controls  5300-5399
  ERR_05300_CANT_DECODE_CHANGE_TYPE=failed to decode the changeType for EntryChangeControl
  ERR_05301_INVALID_PREVIOUS_DN=The previousDN field should not contain anything if the changeType is not MODDN
@@@ -362,10 -356,6 +357,13 @@@ ERR_05309_RETURN_ECS_DECODING_ERROR=fai
  ERR_05310_INVALID_VISIBILITY_FLAG=The visibility flag {0} is invalid: {1}. It should be 0 or 255
  
  # api-ldap-codec-core osgi      5400-5499
++<<<<<<< HEAD
 +ERR_05400_CONTROL_ARGUMENT_WAS_NULL=Control argument was null.
 +ERR_05401_FIGURE_OUT_HOW_TO_TRANSFORM=Figure out how to transform
 +ERR_05402_UNABLE_TO_ENCODE_RESPONSE_VALUE=Unable to decode encoded response value: {0}
 +
++=======
++>>>>>>> 85a3c1dba3cb60248666bde279b64019e217a9af
  # api-ldap-codec-core search    5500-5599
  ERR_05500_NULL_MATCHING_RULE_AND_TYPE=Cannot have a null matching rule and a null type
  ERR_05501_MORE_THAN_ONE_FILTER_FOR_NOT_FILTER=Cannot have more than one Filter within a Not Filter

-- 
To stop receiving notification emails like this one, please contact
elecharny@apache.org.

[directory-ldap-api] 01/02: Moved some error messages to I18n

Posted by el...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

elecharny pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/directory-ldap-api.git

commit 46bb4bad5a36a2047f8110986c94d30345435e17
Author: Emmanuel Lécharny <el...@symas.com>
AuthorDate: Sat Jun 9 18:46:53 2018 +0200

    Moved some error messages to I18n
---
 .../directory/api/dsmlv2/request/NotFilter.java    |   4 +-
 .../java/org/apache/directory/api/i18n/I18n.java   | 272 +++++++++++++++------
 .../apache/directory/api/i18n/errors.properties    | 182 ++++++++------
 .../apache/directory/api/i18n/messages.properties  |  97 ++++++++
 .../ldap/client/api/LdapNetworkConnection.java     |   1 -
 .../api/ldap/codec/actions/AllowGrammarEnd.java    |   3 +-
 .../ldap/codec/actions/controls/AddControl.java    |   1 +
 .../ldap/codec/actions/controls/InitControls.java  |   9 +-
 .../actions/controls/StoreControlCriticality.java  |   1 +
 .../codec/actions/controls/StoreControlValue.java  |   1 +
 .../codec/actions/ldapMessage/InitLdapMessage.java |   5 +-
 .../codec/actions/ldapMessage/StoreMessageId.java  |   9 +-
 .../ldap/codec/actions/ldapResult/AddReferral.java |   9 +-
 .../codec/actions/ldapResult/InitReferrals.java    |   5 +-
 .../actions/ldapResult/StoreErrorMessage.java      |   7 +-
 .../codec/actions/ldapResult/StoreMatchedDN.java   |  10 +-
 .../codec/actions/ldapResult/StoreResultCode.java  |   5 +-
 .../request/abandon/InitAbandonRequest.java        |   7 +-
 .../request/add/AddAddRequestAttributeType.java    |   7 +-
 .../actions/request/add/AddAttributeValue.java     |   6 +-
 .../codec/actions/request/add/InitAddRequest.java  |   3 +-
 .../request/add/StoreAddRequestEntryName.java      |  10 +-
 .../actions/request/bind/InitBindRequest.java      |   3 +-
 .../codec/actions/request/bind/InitSaslBind.java   |   5 +-
 .../ldap/codec/actions/request/bind/StoreName.java |   7 +-
 .../actions/request/bind/StoreSaslCredentials.java |   8 +-
 .../actions/request/bind/StoreSaslMechanism.java   |   4 +-
 .../actions/request/bind/StoreSimpleAuth.java      |   8 +-
 .../codec/actions/request/bind/StoreVersion.java   |   5 +-
 .../request/compare/InitCompareRequest.java        |   4 +-
 .../compare/StoreCompareRequestAssertionValue.java |   8 +-
 .../compare/StoreCompareRequestAttributeDesc.java  |   5 +-
 .../compare/StoreCompareRequestEntryName.java      |  10 +-
 .../codec/actions/request/del/InitDelRequest.java  |   7 +-
 .../request/extended/InitExtendedRequest.java      |   7 +-
 .../request/extended/StoreExtendedRequestName.java |  17 +-
 .../extended/StoreExtendedRequestValue.java        |   7 +-
 .../request/modify/AddModifyRequestAttribute.java  |   5 +-
 .../actions/request/modify/InitAttributeVals.java  |   6 +-
 .../actions/request/modify/InitModifyRequest.java  |   1 +
 .../modify/StoreModifyRequestAttributeValue.java   |   4 +-
 .../modify/StoreModifyRequestObjectName.java       |   9 +-
 .../actions/request/modify/StoreOperationType.java |  11 +-
 .../request/modifydn/InitModifyDnRequest.java      |   4 +-
 .../modifydn/StoreModifyDnRequestDeleteOldRdn.java |   7 +-
 .../modifydn/StoreModifyDnRequestEntryName.java    |  10 +-
 .../modifydn/StoreModifyDnRequestNewRdn.java       |  10 +-
 .../modifydn/StoreModifyDnRequestNewSuperior.java  |  12 +-
 .../actions/request/search/InitSearchRequest.java  |   3 +-
 .../search/InitSearchRequestAttributeDescList.java |   3 +-
 .../search/StoreSearchRequestAttributeDesc.java    |   6 +-
 .../search/StoreSearchRequestBaseObject.java       |   8 +-
 .../search/StoreSearchRequestDerefAlias.java       |  12 +-
 .../request/search/StoreSearchRequestScope.java    |  10 +-
 .../search/StoreSearchRequestSizeLimit.java        |   4 +-
 .../search/StoreSearchRequestTimeLimit.java        |   4 +-
 .../search/StoreSearchRequestTypesOnly.java        |   5 +-
 .../request/search/StoreTypeMatchingRule.java      |   4 +-
 .../request/search/filter/InitAndFilter.java       |   4 +-
 .../search/filter/InitApproxMatchFilter.java       |   3 +-
 .../search/filter/InitAssertionValueFilter.java    |   3 +-
 .../search/filter/InitAttributeDescFilter.java     |   4 +-
 .../search/filter/InitEqualityMatchFilter.java     |   3 +-
 .../search/filter/InitExtensibleMatchFilter.java   |   3 +-
 .../search/filter/InitGreaterOrEqualFilter.java    |   3 +-
 .../search/filter/InitLessOrEqualFilter.java       |   3 +-
 .../request/search/filter/InitNotFilter.java       |   4 +-
 .../request/search/filter/InitOrFilter.java        |   4 +-
 .../request/search/filter/InitPresentFilter.java   |   3 +-
 .../search/filter/InitSubstringsFilter.java        |   4 +-
 .../actions/request/search/filter/StoreAny.java    |   4 +-
 .../actions/request/search/filter/StoreFinal.java  |   4 +-
 .../request/search/filter/StoreInitial.java        |   2 +-
 .../request/search/filter/StoreMatchValue.java     |   6 +-
 .../filter/StoreMatchingRuleDnAttributes.java      |   2 +-
 .../search/filter/StoreSubstringFilterType.java    |   2 +-
 .../actions/request/unbind/InitUnbindRequest.java  |   4 +-
 .../actions/response/add/InitAddResponse.java      |   4 +-
 .../response/bind/StoreServerSASLCreds.java        |   3 +-
 .../response/compare/InitCompareResponse.java      |   4 +-
 .../actions/response/del/InitDelResponse.java      |   3 +-
 .../response/extended/InitExtendedResponse.java    |   6 +-
 .../extended/StoreExtendedResponseName.java        |   4 +-
 .../extended/StoreExtendedResponseValue.java       |   3 +-
 .../intermediate/InitIntermediateResponse.java     |   6 +-
 .../StoreIntermediateResponseName.java             |  11 +-
 .../StoreIntermediateResponseValue.java            |   6 +-
 .../response/modify/InitModifyResponse.java        |   3 +-
 .../response/modifydn/InitModifyDnResponse.java    |   3 +-
 .../response/search/done/InitSearchResultDone.java |   3 +-
 .../response/search/entry/AddAttributeType.java    |   8 +-
 .../entry/StoreSearchResultAttributeValue.java     |   7 +-
 .../entry/StoreSearchResultEntryObjectName.java    |   8 +-
 .../reference/InitSearchResultReference.java       |   3 +-
 .../response/search/reference/StoreReference.java  |   6 +-
 .../api/ldap/codec/api/LdapApiServiceFactory.java  |  12 +-
 .../directory/api/ldap/codec/api/LdapDecoder.java  |   8 +-
 .../directory/api/ldap/codec/api/LdapEncoder.java  |   2 +-
 .../search/entryChange/EntryChangeGrammar.java     |  14 +-
 .../search/pagedSearch/PagedResultsGrammar.java    |   2 +-
 .../persistentSearch/PersistentSearchGrammar.java  |   6 +-
 .../search/subentries/SubentriesGrammar.java       |   2 +-
 .../codec/controls/sort/SortRequestGrammar.java    |   2 -
 .../codec/decorators/ExtendedRequestDecorator.java |   2 +-
 .../ldap/codec/osgi/DefaultLdapCodecService.java   |  10 +-
 .../ldap/codec/search/ExtensibleMatchFilter.java   |   2 +-
 .../directory/api/ldap/codec/search/NotFilter.java |   4 +-
 .../api/ldap/codec/search/SubstringFilter.java     |   2 +-
 108 files changed, 711 insertions(+), 410 deletions(-)

diff --git a/dsml/parser/src/main/java/org/apache/directory/api/dsmlv2/request/NotFilter.java b/dsml/parser/src/main/java/org/apache/directory/api/dsmlv2/request/NotFilter.java
index 8ede580..60bca57 100644
--- a/dsml/parser/src/main/java/org/apache/directory/api/dsmlv2/request/NotFilter.java
+++ b/dsml/parser/src/main/java/org/apache/directory/api/dsmlv2/request/NotFilter.java
@@ -42,7 +42,7 @@ public class NotFilter extends ConnectorFilter
     {
         if ( filterSet != null )
         {
-            throw new DecoderException( I18n.err( I18n.ERR_04057 ) );
+            throw new DecoderException( I18n.err( I18n.ERR_05501_MORE_THAN_ONE_FILTER_FOR_NOT_FILTER ) );
         }
 
         super.addFilter( filter );
@@ -70,7 +70,7 @@ public class NotFilter extends ConnectorFilter
     {
         if ( filterSet != null )
         {
-            throw new DecoderException( I18n.err( I18n.ERR_04057 ) );
+            throw new DecoderException( I18n.err( I18n.ERR_05501_MORE_THAN_ONE_FILTER_FOR_NOT_FILTER ) );
         }
 
         super.addFilter( notFilter );
diff --git a/i18n/src/main/java/org/apache/directory/api/i18n/I18n.java b/i18n/src/main/java/org/apache/directory/api/i18n/I18n.java
index bffc107..1b68b1a 100644
--- a/i18n/src/main/java/org/apache/directory/api/i18n/I18n.java
+++ b/i18n/src/main/java/org/apache/directory/api/i18n/I18n.java
@@ -153,83 +153,14 @@ public enum I18n
     ERR_03208_TIMEOUT( "ERR_03208_TIMEOUT" ),
 
     // ldap
-    ERR_04006( "ERR_04006" ),
-    ERR_04007( "ERR_04007" ),
-    ERR_04008( "ERR_04008" ),
-    ERR_04009( "ERR_04009" ),
-    ERR_04010( "ERR_04010" ),
-    ERR_04011( "ERR_04011" ),
-    ERR_04012( "ERR_04012" ),
-    ERR_04013( "ERR_04013" ),
-    ERR_04014( "ERR_04014" ),
-    ERR_04015( "ERR_04015" ),
-    ERR_04016( "ERR_04016" ),
-    ERR_04017( "ERR_04017" ),
-    ERR_04018( "ERR_04018" ),
-    ERR_04019( "ERR_04019" ),
-    ERR_04020( "ERR_04020" ),
-    ERR_04021( "ERR_04021" ),
-    ERR_04022( "ERR_04022" ),
-    ERR_04043( "ERR_04043" ),
-    ERR_04044( "ERR_04044" ),
-    ERR_04045( "ERR_04045" ),
-    ERR_04046( "ERR_04046" ),
-    ERR_04047( "ERR_04047" ),
-    ERR_04048( "ERR_04048" ),
-    ERR_04049( "ERR_04049" ),
-    ERR_04050( "ERR_04050" ),
-    ERR_04051( "ERR_04051" ),
-    ERR_04052( "ERR_04052" ),
-    ERR_04053( "ERR_04053" ),
-    ERR_04054( "ERR_04054" ),
-    ERR_04056( "ERR_04056" ),
-    ERR_04057( "ERR_04057" ),
-    ERR_04058( "ERR_04058" ),
-    ERR_04059( "ERR_04059" ),
     ERR_04060( "ERR_04060" ),
     ERR_04061( "ERR_04061" ),
     ERR_04062( "ERR_04062" ),
     ERR_04063( "ERR_04063" ),
     ERR_04064( "ERR_04064" ),
     ERR_04065( "ERR_04065" ),
-    ERR_04066( "ERR_04066" ),
-    ERR_04067( "ERR_04067" ),
-    ERR_04068( "ERR_04068" ),
-    ERR_04069( "ERR_04069" ),
     ERR_04070( "ERR_04070" ),
-    ERR_04071( "ERR_04071" ),
-    ERR_04072( "ERR_04072" ),
-    ERR_04073( "ERR_04073" ),
-    ERR_04074( "ERR_04074" ),
-    ERR_04075( "ERR_04075" ),
-    ERR_04076( "ERR_04076" ),
-    ERR_04077( "ERR_04077" ),
-    ERR_04078( "ERR_04078" ),
-    ERR_04079( "ERR_04079" ),
     ERR_04080( "ERR_04080" ),
-    ERR_04081( "ERR_04081" ),
-    ERR_04082( "ERR_04082" ),
-    ERR_04083( "ERR_04083" ),
-    ERR_04084( "ERR_04084" ),
-    ERR_04085( "ERR_04085" ),
-    ERR_04086( "ERR_04086" ),
-    ERR_04087( "ERR_04087" ),
-    ERR_04088( "ERR_04088" ),
-    ERR_04089( "ERR_04089" ),
-    ERR_04090( "ERR_04090" ),
-    ERR_04091( "ERR_04091" ),
-    ERR_04092( "ERR_04092" ),
-    ERR_04093( "ERR_04093" ),
-    ERR_04094( "ERR_04094" ),
-    ERR_04095( "ERR_04095" ),
-    ERR_04101( "ERR_04101" ),
-    ERR_04102( "ERR_04102" ),
-    ERR_04103( "ERR_04103" ),
-    ERR_04104( "ERR_04104" ),
-    ERR_04105( "ERR_04105" ),
-    ERR_04106( "ERR_04106" ),
-    ERR_04107( "ERR_04107" ),
-    ERR_04108( "ERR_04108" ),
     ERR_04109( "ERR_04109" ),
     ERR_04111( "ERR_04111" ),
     ERR_04112( "ERR_04112" ),
@@ -374,6 +305,102 @@ public enum I18n
     
     // ldap-client-api  4100-
     ERR_4100_TLS_HANDSHAKE_ERROR( "ERR_4100_TLS_HANDSHAKE_ERROR" ),
+    
+    // api-ldap-codec-core   5000-5999
+    // api-ldap-codec-core <>        5000-5099
+    ERR_05000_NULL_REQUEST_NAME( "ERR_05000_NULL_REQUEST_NAME" ),
+    
+    // api-ldap-codec-core actions   5100-5199
+    ERR_05100_ZERO_LENGTH_MESSAGE_ID_NOT_ALLOWED( "ERR_05100_ZERO_LENGTH_MESSAGE_ID_NOT_ALLOWED" ),
+    ERR_05101_NULL_MESSAGE_ID_NOT_ALLOWED( "ERR_05101_NULL_MESSAGE_ID_NOT_ALLOWED" ),
+    ERR_05102_INVALID_MESSAGE_ID( "ERR_05102_INVALID_MESSAGE_ID" ),
+    ERR_05103_INVALID_URL( "ERR_05103_INVALID_URL" ),
+    ERR_05104_INVALID_URL( "ERR_05104_INVALID_URL" ),
+    ERR_05105_REFERRAL_MUST_NOT_BE_NULL( "ERR_05105_REFERRAL_MUST_NOT_BE_NULL" ),
+    ERR_05106_INCORRECT_DN_GIVEN_INVALID( "ERR_05106_INCORRECT_DN_GIVEN_INVALID" ),
+    ERR_05107_INCORRECT_DN_GIVEN( "ERR_05107_INCORRECT_DN_GIVEN" ),
+    ERR_05108_INVALID_RESULT_CODE( "ERR_05108_INVALID_RESULT_CODE" ),
+    ERR_05109_ABANDON_REQ_MSG_ID_NULL( "ERR_05109_ABANDON_REQ_MSG_ID_NULL" ),
+    ERR_05110_INVALID_ABANDON_REQ_MSG_ID( "ERR_05110_INVALID_ABANDON_REQ_MSG_ID" ),
+    ERR_05111_NULL_OR_EMPTY_TYPE_NOT_ALLOWED( "ERR_05111_NULL_OR_EMPTY_TYPE_NOT_ALLOWED" ),
+    ERR_05112_ERROR_WITH_ATTRIBUTE_TYPE( "ERR_05112_ERROR_WITH_ATTRIBUTE_TYPE" ),
+    ERR_05113_INVALID_DN( "ERR_05113_INVALID_DN" ),
+    ERR_05114_ERROR_MESSAGE( "ERR_05114_ERROR_MESSAGE" ),
+    ERR_05115_EMTPY_ENTRY_DN_GIVEN( "ERR_05115_EMTPY_ENTRY_DN_GIVEN" ),
+    ERR_05116_SASL_CREDS_CANT_BE_NULL( "ERR_05116_SASL_CREDS_CANT_BE_NULL" ),
+    ERR_05117_INVALID_VERSION( "ERR_05117_INVALID_VERSION" ),
+    ERR_05118_NULL_ATTRIBUTE_DESC( "ERR_05118_NULL_ATTRIBUTE_DESC" ),
+    ERR_05119_NULL_ENTRY( "ERR_05119_NULL_ENTRY" ),
+    ERR_05120_INVALID_DELETE_DN( "ERR_05120_INVALID_DELETE_DN" ),
+    ERR_05121_INVALID_REQUEST_NAME_OID( "ERR_05121_INVALID_REQUEST_NAME_OID" ),
+    ERR_05122_NULL_NAME( "ERR_05122_NULL_NAME" ),
+    ERR_05123_TYPE_CANT_BE_NULL( "ERR_05123_TYPE_CANT_BE_NULL" ),
+    ERR_05124_INVALID_OPERATION( "ERR_05124_INVALID_OPERATION" ),
+    ERR_05125_INVALID_OLD_RDN( "ERR_05125_INVALID_OLD_RDN" ),
+    ERR_05126_RDN_MUST_NOT_BE_NULL( "ERR_05126_RDN_MUST_NOT_BE_NULL" ),
+    ERR_05127_INVALID_NEW_RDN( "ERR_05127_INVALID_NEW_RDN" ),
+    ERR_05128_NULL_SUPERIOR( "ERR_05128_NULL_SUPERIOR" ),
+    ERR_05129_INVALID_NEW_SUPERIOR( "ERR_05129_INVALID_NEW_SUPERIOR" ),
+    ERR_05130_NON_NULL_UNBIND_LENGTH( "ERR_05130_NON_NULL_UNBIND_LENGTH " ),
+    ERR_05131_UNBIND_REQUEST_LENGTH_MUST_BE_NULL( "ERR_05131_UNBIND_REQUEST_LENGTH_MUST_BE_NULL" ),
+    ERR_05132_INVALID_ROOT_DN( "ERR_05132_INVALID_ROOT_DN" ),
+    ERR_05133_INTERMEDIATE_RESPONSE_INVALID_OID( "ERR_05133_INTERMEDIATE_RESPONSE_INVALID_OID" ),
+    ERR_05134_EMPTY_AND_FILTER_PDU( "ERR_05134_EMPTY_AND_FILTER_PDU" ),
+    ERR_05135_EMPTY_ATTRIBUTE_DESCRIPTION( "ERR_05135_EMPTY_ATTRIBUTE_DESCRIPTION" ),
+    ERR_05136_EMPTY_NOT_FILTER_PDU( "ERR_05136_EMPTY_NOT_FILTER_PDU" ),
+    ERR_05137_EMPTY_OR_FILTER_PDU( "ERR_05137_EMPTY_OR_FILTER_PDU" ),
+    ERR_05138_EMPTY_SUBSTRING_FILTER_PDU( "ERR_05138_EMPTY_SUBSTRING_FILTER_PDU" ),
+    ERR_05139_EMPTY_SUBSTRING_ANY_FILTER_PDU( "ERR_05139_EMPTY_SUBSTRING_ANY_FILTER_PDU" ),
+    ERR_05140_EMPTY_SUBSTRING_FINAL_FILTER_PDU( "ERR_05140_EMPTY_SUBSTRING_FINAL_FILTER_PDU" ),
+    ERR_05141_NULL_MATCHING_RULE_ASSERTION_TYPE( "ERR_05141_NULL_MATCHING_RULE_ASSERTION_TYPE" ),
+    ERR_05142_ZERO_LENGTH_MESSAGE( "ERR_05142_ZERO_LENGTH_MESSAGE" ),
+    ERR_05143_EMPTY_MESSAGE( "ERR_05143_EMPTY_MESSAGE" ),
+    ERR_05144_NULL_BIND_REQUEST( "ERR_05144_NULL_BIND_REQUEST" ),
+    ERR_05145_NULL_ADD_REQUEST( "ERR_05145_NULL_ADD_REQUEST" ),
+    ERR_05146_NULL_ADD_RESPONSE( "ERR_05146_NULL_ADD_RESPONSE" ),
+    ERR_05147_NULL_ATTRIBUTE_TYPE( "ERR_05147_NULL_ATTRIBUTE_TYPE" ),
+    ERR_05148_NULL_COMPARE_REQUEST( "ERR_05148_NULL_COMPARE_REQUEST" ),
+    ERR_05149_BAD_SCOPE( "ERR_05149_BAD_SCOPE" ),
+    ERR_05150_BAD_DEREF_ALIAS( "ERR_05150_BAD_DEREF_ALIAS" ),
+    ERR_05151_BAD_SIZE_LIMIT( "ERR_05151_BAD_SIZE_LIMIT" ),
+    ERR_05152_BAD_TIME_LIMIT( "ERR_05152_BAD_TIME_LIMIT" ),
+    ERR_05153_NULL_ATTRIBUTE_DESCRIPTION( "ERR_05153_NULL_ATTRIBUTE_DESCRIPTION" ),
+    ERR_05154_EMPTY_SUBSTRING_INITIAL_FILTER_PDU( "ERR_05154_EMPTY_SUBSTRING_INITIAL_FILTER_PDU" ),
+    ERR_05155_FLAG_TYPE_INVALID( "ERR_05155_FLAG_TYPE_INVALID" ),
+    ERR_05156_INVALID_ATTRIBUTE_TYPE( "ERR_05156_INVALID_ATTRIBUTE_TYPE" ),
+    ERR_05157_INVALID_DN( "ERR_05157_INVALID_DN" ),
+
+    // api-ldap-codec-core api       5200-5299
+    ERR_05200_NOT_INITIALIZED_YET( "ERR_05200_NOT_INITIALIZED_YET" ),
+    ERR_05201_INSTANCE_ALREADY_SET( "ERR_05201_INSTANCE_ALREADY_SET" ),
+    ERR_05202_FAILED_TO_INSTANCIATE( "ERR_05202_FAILED_TO_INSTANCIATE" ),
+    ERR_05203_CODEC_ARGS_CANNOT_BE_NULL( "ERR_05203_CODEC_ARGS_CANNOT_BE_NULL" ),
+    ERR_05204_LDAP_DECODER_FAILURE( "ERR_05204_LDAP_DECODER_FAILURE" ),
+    ERR_05205_PDU_DOES_NOT_CONTAIN_ENOUGH_DATA( "ERR_05205_PDU_DOES_NOT_CONTAIN_ENOUGH_DATA" ),
+    ERR_05206_INPUT_STREAM_TOO_SHORT_PDU( "ERR_05206_INPUT_STREAM_TOO_SHORT_PDU" ),
+
+    // api-ldap-codec-core controls  5300-5399
+    ERR_05300_CANT_DECODE_CHANGE_TYPE( "ERR_05300_CANT_DECODE_CHANGE_TYPE" ),
+    ERR_05301_INVALID_PREVIOUS_DN( "ERR_05301_INVALID_PREVIOUS_DN" ),
+    ERR_05302_PREVIOUS_DN_NOT_ALLOWED( "ERR_05302_PREVIOUS_DN_NOT_ALLOWED" ),
+    ERR_05303_BAD_PREVIOUS_DN( "ERR_05303_BAD_PREVIOUS_DN" ),
+    ERR_05304_FAILED_TO_DECODE_PREVIOUS_DN( "ERR_05304_FAILED_TO_DECODE_PREVIOUS_DN" ),
+    ERR_05305_CHANGE_NUMBER_DECODING_ERROR( "ERR_05305_CHANGE_NUMBER_DECODING_ERROR" ),
+    ERR_05306_PAGED_SEARCH_SIZE_DECODING_ERROR( "ERR_05306_PAGED_SEARCH_SIZE_DECODING_ERROR" ),
+    ERR_05307_CHANGE_TYPES_DECODING_ERROR( "ERR_05307_CHANGE_TYPES_DECODING_ERROR" ),
+    ERR_05308_CHANGE_ONLY_DECODING_ERROR( "ERR_05308_CHANGE_ONLY_DECODING_ERROR" ),
+    ERR_05309_RETURN_ECS_DECODING_ERROR( "ERR_05309_RETURN_ECS_DECODING_ERROR" ),
+    ERR_05310_INVALID_VISIBILITY_FLAG( "ERR_05310_INVALID_VISIBILITY_FLAG" ),
+    
+    // api-ldap-codec-core osgi      5400-5499
+    ERR_05400_CONTROL_ARGUMENT_WAS_NULL( "ERR_05400_CONTROL_ARGUMENT_WAS_NULL" ),
+    ERR_05401_FIGURE_OUT_HOW_TO_TRANSFORM( "ERR_05401_FIGURE_OUT_HOW_TO_TRANSFORM" ),
+    ERR_05402_UNABLE_TO_ENCODE_RESPONSE_VALUE( "ERR_05402_UNABLE_TO_ENCODE_RESPONSE_VALUE" ),
+    
+    // api-ldap-codec-core search    5500-5599
+    ERR_05500_NULL_MATCHING_RULE_AND_TYPE( "ERR_05500_NULL_MATCHING_RULE_AND_TYPE" ),
+    ERR_05501_MORE_THAN_ONE_FILTER_FOR_NOT_FILTER( "ERR_05501_MORE_THAN_ONE_FILTER_FOR_NOT_FILTER" ),
+    ERR_05502_NULL_INITIAL_ANY_OR_FINAL_SUBSTRING( "ERR_05502_NULL_INITIAL_ANY_OR_FINAL_SUBSTRING" ),
 
     // api-ldap-codec-standalone 6000-6999
     ERR_06000_FAILED_TO_LOAD_DEFAULT_CODEC_FACTORY( "ERR_06000_FAILED_TO_LOAD_DEFAULT_CODEC_FACTORY" ),
@@ -1106,6 +1133,104 @@ public enum I18n
     MSG_03244_CONNECTION_RETRYING( "MSG_03244_CONNECTION_RETRYING" ),
     MSG_03245_CONNECTION_ERROR( "MSG_03245_CONNECTION_ERROR" ),
 
+    // api-ldap-codec-core   5000-5999
+    // api-ldap-codec-core <>        5000-5099
+    // api-ldap-codec-core actions   5100-5199
+    MSG_05100_NEW_LIST_CONTROLS_INITIALIZED( "MSG_05100_NEW_LIST_CONTROLS_INITIALIZED" ),
+    MSG_05101_NEW_EMPTY_CONTROLS_INITIALIZED( "MSG_05101_NEW_EMPTY_CONTROLS_INITIALIZED" ),
+    MSG_05102_LDAP_MESSAGE_ID_DECODED( "MSG_05102_LDAP_MESSAGE_ID_DECODED" ),
+    MSG_05103_REFERRAL_ERROR_MESSAGE_NOT_ALLOWED( "MSG_05103_REFERRAL_ERROR_MESSAGE_NOT_ALLOWED" ),
+    MSG_05104_REFERRAL_ERROR_MESSAGE_SET_TO( "MSG_05104_REFERRAL_ERROR_MESSAGE_SET_TO" ),
+    MSG_05105_INITIALISNG_REFERRAL_LIST( "MSG_05105_INITIALISNG_REFERRAL_LIST" ),
+    MSG_05106_ERROR_MESSAGE_IS( "MSG_05106_ERROR_MESSAGE_IS" ),
+    MSG_05107_NO_SUCH_OBJECT_MATCHED_DN_NOT_SET( "MSG_05107_NO_SUCH_OBJECT_MATCHED_DN_NOT_SET" ),
+    MSG_05108_MATCHED_DN_IS( "MSG_05108_MATCHED_DN_IS" ),
+    MSG_05109_RESULT_CODE_IS( "MSG_05109_RESULT_CODE_IS" ),
+    MSG_05110_ABANDON_MSG_ID_DECODED( "MSG_05110_ABANDON_MSG_ID_DECODED" ),
+    MSG_05111_ADDING_TYPE( "MSG_05111_ADDING_TYPE" ),
+    MSG_05112_ADDING_VALUE( "MSG_05112_ADDING_VALUE" ),
+    MSG_05113_ADDING_ENTRY_WITH_DN( "MSG_05113_ADDING_ENTRY_WITH_DN" ),
+    MSG_05114_LDAP_VERSION( "MSG_05114_LDAP_VERSION" ),
+    MSG_05115_SASL_CREDS_CREATED( "MSG_05115_SASL_CREDS_CREATED" ),
+    MSG_05116_BIND_NAME_IS( "MSG_05116_BIND_NAME_IS" ),
+    MSG_05117_SASL_CREDENTIALS_DECODED( "MSG_05117_SASL_CREDENTIALS_DECODED" ),
+    MSG_05118_THE_SASL_MECHANISM_IS( "MSG_05118_THE_SASL_MECHANISM_IS" ),
+    MSG_05119_SIMPLE_CREDENTIAL_DECODED( "MSG_05119_SIMPLE_CREDENTIAL_DECODED" ),
+    MSG_05120_COMPARE_REQUEST( "MSG_05120_COMPARE_REQUEST" ),
+    MSG_05121_COMPARING_ATTRIBUTE_VALUE( "MSG_05121_COMPARING_ATTRIBUTE_VALUE" ),
+    MSG_05122_COMPARING_ATTRIBUTE_DESCRIPTION( "MSG_05122_COMPARING_ATTRIBUTE_DESCRIPTION" ),
+    MSG_05123_COMPARING_DN( "MSG_05123_COMPARING_DN" ),
+    MSG_05124_DELETING_DN( "MSG_05124_DELETING_DN" ),
+    MSG_05125_EXTENDED_REQUEST_PROCESSED( "MSG_05125_EXTENDED_REQUEST_PROCESSED" ),
+    MSG_05126_OID_READ( "MSG_05126_OID_READ" ),
+    MSG_05127_EXTENDED_VALUE( "MSG_05127_EXTENDED_VALUE" ),
+    MSG_05128_MODIFYING_TYPE( "MSG_05128_MODIFYING_TYPE" ),
+    MSG_05129_NO_VALS_FOR_ATTRIBUTE( "MSG_05129_NO_VALS_FOR_ATTRIBUTE" ),
+    MSG_05130_SOME_VALS_NEED_DECODING( "MSG_05130_SOME_VALS_NEED_DECODING" ),
+    MSG_05131_VALUE_MODIFIED( "MSG_05131_VALUE_MODIFIED" ),
+    MSG_05132_DN_MODIFICATION( "MSG_05132_DN_MODIFICATION" ),
+    MSG_05133_MODIFY_OPERATION( "MSG_05133_MODIFY_OPERATION" ),
+    MSG_05134_MODIFY_DN_REQUEST( "MSG_05134_MODIFY_DN_REQUEST" ),
+    MSG_05135_OID_RDN_ATT_WILL_BE_DELETED( "MSG_05135_OID_RDN_ATT_WILL_BE_DELETED" ),
+    MSG_05136_OID_RDN_ATT_WILL_BE_RETAINED( "MSG_05136_OID_RDN_ATT_WILL_BE_RETAINED" ),
+    MSG_05137_MODIFYING_DN( "MSG_05137_MODIFYING_DN" ),
+    MSG_05138_MODIFYING_WITH_NEW_RDN( "MSG_05138_MODIFYING_WITH_NEW_RDN" ),
+    MSG_05139_NULL_NEW_SUPERIOR( "MSG_05139_NULL_NEW_SUPERIOR" ),
+    MSG_05140_NEW_SUPERIOR_DN( "MSG_05140_NEW_SUPERIOR_DN" ),
+    MSG_05141_INITIALIZE_AND_FILTER( "MSG_05141_INITIALIZE_AND_FILTER" ),
+    MSG_05142_INITIALIZE_APPROX_FILTER( "MSG_05142_INITIALIZE_APPROX_FILTER" ),
+    MSG_05143_INITIALIZE_ATT_DESC_FILTER( "MSG_05143_INITIALIZE_ATT_DESC_FILTER" ),
+    MSG_05144_INITIALIZE_ASSERTION_FILTER( "MSG_05144_INITIALIZE_ASSERTION_FILTER" ),
+    MSG_05145_INITIALIZE_EQ_FILTER( "MSG_05145_INITIALIZE_EQ_FILTER" ),
+    MSG_05146_INITIALIZE_EXT_FILTER( "MSG_05146_INITIALIZE_EXT_FILTER" ),
+    MSG_05147_INITIALIZE_GEQ_FILTER( "MSG_05147_INITIALIZE_GEQ_FILTER" ),
+    MSG_05148_INITIALIZE_LEQ_FILTER( "MSG_05148_INITIALIZE_LEQ_FILTER" ),
+    MSG_05149_INITIALIZE_NOT_FILTER( "MSG_05149_INITIALIZE_NOT_FILTER" ),
+    MSG_05150_INITIALIZE_OR_FILTER( "MSG_05150_INITIALIZE_OR_FILTER" ),
+    MSG_05151_INITIALIZE_PRESENT_FILTER( "MSG_05151_INITIALIZE_PRESENT_FILTER" ),
+    MSG_05152_INITIALIZE_SUBSTRING_FILTER( "MSG_05152_INITIALIZE_SUBSTRING_FILTER" ),
+    MSG_05153_STORED_ANY_SUBSTRING( "MSG_05153_STORED_ANY_SUBSTRING" ),
+    MSG_05154_STORED_FINAL_SUBSTRING( "MSG_05154_STORED_FINAL_SUBSTRING" ),
+    MSG_05155_DN_ATTRIBUTES( "MSG_05155_DN_ATTRIBUTES" ),
+    MSG_05156_STORED_MATCH_VALUE( "MSG_05156_STORED_MATCH_VALUE" ),
+    MSG_05157_SEARCH_REQUEST( "MSG_05157_SEARCH_REQUEST" ),
+    MSG_05158_INITIALIZE_ATT_DESC_LIST( "MSG_05158_INITIALIZE_ATT_DESC_LIST" ),
+    MSG_05159_DECODED_ATT_DESC( "MSG_05159_DECODED_ATT_DESC" ),
+    MSG_05160_SEARCHING_WITH_ROOT_DN( "MSG_05160_SEARCHING_WITH_ROOT_DN" ),
+    MSG_05161_HANDLING_OBJECT_STRATEGY( "MSG_05161_HANDLING_OBJECT_STRATEGY" ),
+    MSG_05162_SEARCHING_WITH_SCOPE( "MSG_05162_SEARCHING_WITH_SCOPE" ),
+    MSG_05163_SIZE_LIMIT_SET_TO( "MSG_05163_SIZE_LIMIT_SET_TO" ),
+    MSG_05164_TIME_LIMIT_SET_TO( "MSG_05164_TIME_LIMIT_SET_TO" ),
+    MSG_05165_SEARCH_RETURN_TYPE_ONLY( "MSG_05165_SEARCH_RETURN_TYPE_ONLY" ),
+    MSG_05166_STORED_TYPE_MATCHING_RULE( "MSG_05166_STORED_TYPE_MATCHING_RULE" ),
+    MSG_05167_ADD_RESPONSE( "MSG_05167_ADD_RESPONSE" ),
+    MSG_05168_SASL_CREDENTIALS_VALUE_STORED( "MSG_05168_SASL_CREDENTIALS_VALUE_STORED" ),
+    MSG_05169_COMPARE_RESPONSE( "MSG_05169_COMPARE_RESPONSE" ),
+    MSG_05170_DEL_RESPONSE( "MSG_05170_DEL_RESPONSE" ),
+    MSG_05171_EXTENDED_RESPONSE( "MSG_05171_EXTENDED_RESPONSE" ),
+    MSG_05172_OID_READ( "MSG_05172_OID_READ" ),
+    MSG_05173_EXTENDED_VALUE( "MSG_05173_EXTENDED_VALUE" ),
+    MSG_05174_INTERMEDIATE_RESPONSE( "MSG_05174_INTERMEDIATE_RESPONSE" ),
+    MSG_05175_VALUE_READ( "MSG_05175_VALUE_READ" ),
+    MSG_05176_MODIFY_RESPONSE( "MSG_05176_MODIFY_RESPONSE" ),
+    MSG_05177_MODIFY_DN_RESPONSE( "MSG_05177_MODIFY_DN_RESPONSE" ),
+    MSG_05178_SEARCH_RESULT_DONE( "MSG_05178_SEARCH_RESULT_DONE" ),
+    MSG_05179_ATTRIBUTE_TYPE( "MSG_05179_ATTRIBUTE_TYPE" ),
+    MSG_05180_NULL_ATTRIBUTE_VALUE( "MSG_05180_NULL_ATTRIBUTE_VALUE" ),
+    MSG_05181_ATTRIBUTE_VALUE( "MSG_05181_ATTRIBUTE_VALUE" ),
+    MSG_05182_SEARCH_RESULT_ENTRY_DN( "MSG_05182_SEARCH_RESULT_ENTRY_DN" ),
+    MSG_05183_SEARCH_RESULT_REFERENCE_RESPONSE( "MSG_05183_SEARCH_RESULT_REFERENCE_RESPONSE" ),
+    MSG_05184_SEARCH_REFERENCE_URL( "MSG_05184_SEARCH_REFERENCE_URL" ),
+
+
+    // api-ldap-codec-core api       5200-5299
+    MSG_5200_DECODED_LDAP_MESSAGE( "MSG_5200_DECODED_LDAP_MESSAGE" ),
+    
+    // api-ldap-codec-core controls  5300-5399
+    // api-ldap-codec-core osgi      5400-5499
+    // api-ldap-codec-core search    5500-5599
+
+    
     // api-ldap-codec-standalone 6000-6999
     MSG_06000_REGISTERED_CONTROL_FACTORY( "MSG_06000_REGISTERED_CONTROL_FACTORY" ),
     MSG_06001_REGISTERED_EXTENDED_OP_FACTORY( "MSG_06001_REGISTERED_EXTENDED_OP_FACTORY" ),
@@ -1215,6 +1340,7 @@ public enum I18n
     MSG_13701_SYNTAX_VALID( "MSG_13701_SYNTAX_VALID" ),
     MSG_13702_REMOVED_FROM_REGISTRY( "MSG_13702_REMOVED_FROM_REGISTRY" ),
     
+    
     //   schema        13700 - 13899
     MSG_13703_AT_WITHOUT_EQ_MR( "MSG_13703_AT_WITHOUT_EQ_MR" ),
     MSG_13704_CANT_FIND_AT_WITH_SUPERIOR( "MSG_13704_CANT_FIND_AT_WITH_SUPERIOR" ),
@@ -1271,21 +1397,19 @@ public enum I18n
     MSG_13755_COMPARING_OBJECTS( "MSG_13755_COMPARING_OBJECTS" ),
     MSG_13756_LOOKED_UP_NAME( "MSG_13756_LOOKED_UP_NAME" ),
 
-
-
-
-
-
+    
     // api-ldap-net-mina 14000 - 14999
     MSG_14000_DECODING_PDU( "MSG_14000_DECODING_PDU" ),
     MSG_14001_NULL_BUFFER( "MSG_14001_NULL_BUFFER" ),
     MSG_14002_DECODED_LDAP_MESSAGE( "MSG_14002_DECODED_LDAP_MESSAGE" ),
     MSG_14003_ENCODED_LDAP_MESSAGE( "MSG_14003_ENCODED_LDAP_MESSAGE" ),
 
+    
     // api-ldap-schema-converter 15000 - 15999
     MSG_15000_NO_SCHEMA_DEFINED( "MSG_15000_NO_SCHEMA_DEFINED" ),
     MSG_15001_GENERATING_SCHEMA( "MSG_15001_GENERATING_SCHEMA" ),
     
+    
     // api-ldap-schema-data 16000 - 16999
     MSG_16000_BASE_PATH( "MSG_16000_BASE_PATH" ),
     MSG_16001_CREATING_DIR( "MSG_16001_CREATING_DIR" ),
diff --git a/i18n/src/main/resources/org/apache/directory/api/i18n/errors.properties b/i18n/src/main/resources/org/apache/directory/api/i18n/errors.properties
index f9b9001..219127c 100644
--- a/i18n/src/main/resources/org/apache/directory/api/i18n/errors.properties
+++ b/i18n/src/main/resources/org/apache/directory/api/i18n/errors.properties
@@ -120,83 +120,7 @@ ERR_03207_SOMETHING_WRONG_HAPPENED=Message failed: something wrong has occurred
 ERR_03208_TIMEOUT=Timeout has occurred
 
 # ldap
-ERR_04006=The And filter PDU must not be empty
-ERR_04007=The attribute description is empty
-ERR_04008=The type can''t be null
-ERR_04009=The Not filter PDU must not be empty
-ERR_04010=The Or filter PDU must not be empty
-ERR_04011=The Referrals must not be null
-ERR_04012=The Substring filter PDU must not be empty
-ERR_04013=Incorrect DN given: {0} ({1}) is invalid: {2}
-ERR_04014=Incorrect DN given: {0}
-ERR_04015=The URL {0} is not valid: {1} 
-ERR_04016=Invalid URL: {0}
-ERR_04017=The name must not be null
-ERR_04018=The result code {0} is invalid: {1}. The result code must be between (0 .. 121)
-ERR_04019=The substring any filter is empty
-ERR_04020=The substring final filter is empty
-ERR_04021=The URL {0} is not valid: {1}
-ERR_04022=The type cannot be null in a MatchingRuleAssertion
-ERR_04043=The request name must not be null
-ERR_04044=failed to decode the changeType for EntryChangeControl
-ERR_04045=The previousDN field should not contain anything if the changeType is not MODDN
-ERR_04046=Previous DN is not allowed for this change type
-ERR_04047=Bad Previous DN: ''{0}''
-ERR_04048=failed to decode the previous DN
-ERR_04049=failed to decode the changeNumber for EntryChangeControl
-ERR_04050=failed to decode the size for PagedSearchControl
-ERR_04051=failed to decode the changeTypes for PSearchControl
-ERR_04052=failed to decode the changesOnly for PSearchControl
-ERR_04053=failed to decode the returnECs for PSearchControl
-ERR_04054=The visibility flag {0} is invalid: {1}. It should be 0 or 255
-ERR_04056=Cannot have a null matching rule and a null type
-ERR_04057=Cannot have more than one Filter within a Not Filter
-ERR_04058=Cannot have a null initial, any and final substring
-ERR_04059=Expected either a byte[] or ByteBuffer argument but got a {0}
-ERR_04060=Ldap decoder failure: {0}
-ERR_04061=Ldap decoder failure!
-ERR_04062=Ldap decoder failure, PDU does not contain enough data
-ERR_04063=The input stream does not contain a full PDU
-ERR_04064=Ldap decoder failure: The input stream does not contain a full PDU
-ERR_04065=Ldap encoder failed to encode object: {0}, error: {1}
-ERR_04066=The LdapMessage has a zero length. This is not allowed
-ERR_04067=The LdapMessage should not be empty
-ERR_04068=The messageId has a zero length. This is not allowed
-ERR_04069=The messageId should not be null
-ERR_04070=The Message Id {0} is invalid: {1}. The message ID must be between (0 .. 2 147 483 647)
-ERR_04071=The length of a UnBindRequest must be null, the actual value is {0}
-ERR_04072=The length of a UnBindRequest must be null
-ERR_04073=The entry must not be null
-ERR_04074=The DN to delete: {0} ({1}) is invalid: {2}
-ERR_04075=The AbandonRequest messageId must not be null
-ERR_04076=The Abandonned Message Id {0} is invalid: {1}. The message ID must be between (0 .. 2 147 483 647)
-ERR_04077=The BindRequest must not be null
-ERR_04078=The version {0} is invalid: {1}. The version must be between (0 .. 127)
-ERR_04079=The SaslCredential must not be null
 ERR_04080=The Referrals must not be null
-ERR_04081=The AttributeType can''t be empty
-ERR_04082=Invalid operation ({0}), it should be 0, 1 or 2
-ERR_04083=The type can''t be null
-ERR_04084=The AddRequest must not be null
-ERR_04085=Empty entry DN given
-ERR_04086=Null or empty types are not allowed
-ERR_04087=Error while injecting the AttributeType
-ERR_04088=The AddResponse must not be null
-ERR_04089=The entry must not be null
-ERR_04090=The newrdn must not be null
-ERR_04091=The oldRdn flag {0} is invalid: {1}. It should be 0 or 255
-ERR_04092=The new superior must not be null if the flag ''delete old DN'' is set to true
-ERR_04093=The attribute description must not be null
-ERR_04094=The CompareResponse must not be null
-ERR_04095=The name must not be null
-ERR_04101=The scope is not in [0..2]: {0}
-ERR_04102=The derefAlias is not in [0..3]: {0}
-ERR_04103=The sizeLimit is not a valid Integer: {0}
-ERR_04104=The timeLimit is not a valid Integer: {0}
-ERR_04105=The types only flag {0} is invalid: {1}. It should be 0 or 255
-ERR_04106=The attribute description should not be null
-ERR_04107=The substrings sequence is empty
-ERR_04108=The substring initial filter is empty
 ERR_04109=The matching rule is empty
 ERR_04111=Could not parse matchedDn while transforming Codec value to Internal: {0}
 ERR_04112=Error while transforming a ExprNode: {0}
@@ -341,6 +265,112 @@ ERR_04481_ENTRY_NULL_VALUE=Entry can''t be null
 
 ERR_4100_TLS_HANDSHAKE_ERROR=The TLS handshake failed
 
+# api-ldap-codec-core   5000-5999
+# api-ldap-codec-core <>        5000-5099
+ERR_05000_NULL_REQUEST_NAME=The request name must not be null
+
+# api-ldap-codec-core actions   5100-5199
+ERR_05100_ZERO_LENGTH_MESSAGE_ID_NOT_ALLOWED=The messageId has a zero length. This is not allowed
+ERR_05101_NULL_MESSAGE_ID_NOT_ALLOWED=The messageId should not be null
+ERR_05102_INVALID_MESSAGE_ID=The Message Id {0} is invalid: {1}. The message ID must be between (0 .. 2 147 483 647)
+ERR_05103_INVALID_URL=The URL {0} is not valid: {1} 
+ERR_05104_INVALID_URL=Invalid URL: {0}
+ERR_05105_REFERRAL_MUST_NOT_BE_NULL=The Referrals must not be null
+ERR_05106_INCORRECT_DN_GIVEN_INVALID=Incorrect DN given: {0} ({1}) is invalid: {2}
+ERR_05107_INCORRECT_DN_GIVEN=Incorrect DN given: {0}
+ERR_05108_INVALID_RESULT_CODE=The result code {0} is invalid: {1}. The result code must be between (0 .. 121)
+ERR_05109_ABANDON_REQ_MSG_ID_NULL=The AbandonRequest messageId must not be null
+ERR_05110_INVALID_ABANDON_REQ_MSG_ID=The Abandoned Message Id {0} is invalid: {1}. The message ID must be between (0 .. 2 147 483 647)
+ERR_05111_NULL_OR_EMPTY_TYPE_NOT_ALLOWED=Null or empty types are not allowed
+ERR_05112_ERROR_WITH_ATTRIBUTE_TYPE=Error while injecting the AttributeType
+ERR_05113_INVALID_DN=Invalid Dn given: {0} ({1}) is invalid"
+ERR_05114_ERROR_MESSAGE={0} : {1}"
+ERR_05115_EMTPY_ENTRY_DN_GIVEN=Empty entry DN given
+ERR_05116_SASL_CREDS_CANT_BE_NULL=The SaslCredential must not be null
+ERR_05117_INVALID_VERSION=The version {0} is invalid: {1}. The version must be between (0 .. 127)
+ERR_05118_NULL_ATTRIBUTE_DESC=The attribute description must not be null
+ERR_05119_NULL_ENTRY=The entry must not be null
+ERR_05120_INVALID_DELETE_DN=The DN to delete: {0} ({1}) is invalid: {2}
+ERR_05121_INVALID_REQUEST_NAME_OID=The Request name is not a valid OID : {0} ({1}) is invalid
+ERR_05122_NULL_NAME=The name must not be null
+ERR_05123_TYPE_CANT_BE_NULL=The type can''t be null
+ERR_05124_INVALID_OPERATION=Invalid operation ({0}), it should be 0, 1 or 2
+ERR_05125_INVALID_OLD_RDN=The oldRdn flag {0} is invalid: {1}. It should be 0 or 255
+ERR_05126_RDN_MUST_NOT_BE_NULL=The newrdn must not be null
+ERR_05127_INVALID_NEW_RDN=Invalid new Rdn given : {0} ({1}) is invalid
+ERR_05128_NULL_SUPERIOR=The new superior must not be null if the flag ''delete old DN'' is set to true
+ERR_05129_INVALID_NEW_SUPERIOR=Invalid new superior Dn given : {0} ({1}) is invalid
+ERR_05130_NON_NULL_UNBIND_LENGTH=The length of a UnBindRequest must be null, the actual value is {0}
+ERR_05131_UNBIND_REQUEST_LENGTH_MUST_BE_NULL=The length of a UnBindRequest must be null
+ERR_05132_INVALID_ROOT_DN=Invalid root Dn given : {0} ({1}) is invalid
+ERR_05133_INTERMEDIATE_RESPONSE_INVALID_OID=The Intermediate Response name is not a valid OID : {0} ({1}) is invalid
+ERR_05134_EMPTY_AND_FILTER_PDU=The And filter PDU must not be empty
+ERR_05135_EMPTY_ATTRIBUTE_DESCRIPTION=The attribute description is empty
+ERR_05136_EMPTY_NOT_FILTER_PDU=The Not filter PDU must not be empty
+ERR_05137_EMPTY_OR_FILTER_PDU=The Or filter PDU must not be empty
+ERR_05138_EMPTY_SUBSTRING_FILTER_PDU=The Substring filter PDU must not be empty
+ERR_05139_EMPTY_SUBSTRING_ANY_FILTER_PDU=The substring any filter is empty
+ERR_05140_EMPTY_SUBSTRING_FINAL_FILTER_PDU=The substring final filter is empty
+ERR_05141_NULL_MATCHING_RULE_ASSERTION_TYPE=The type cannot be null in a MatchingRuleAssertion
+ERR_05142_ZERO_LENGTH_MESSAGE=The LdapMessage has a zero length. This is not allowed
+ERR_05143_EMPTY_MESSAGE=The LdapMessage should not be empty
+ERR_05144_NULL_BIND_REQUEST=The BindRequest must not be null
+ERR_05145_NULL_ADD_REQUEST=The AddRequest must not be null
+ERR_05146_NULL_ADD_RESPONSE=The AddResponse must not be null
+ERR_05147_NULL_ATTRIBUTE_TYPE=The AttributeType can''t be empty
+ERR_05148_NULL_COMPARE_REQUEST=The CompareResponse must not be null
+ERR_05149_BAD_SCOPE=The scope is not in [0..2]: {0}
+ERR_05150_BAD_DEREF_ALIAS=The derefAlias is not in [0..3]: {0}
+ERR_05151_BAD_SIZE_LIMIT=The sizeLimit is not a valid Integer: {0}
+ERR_05152_BAD_TIME_LIMIT=The timeLimit is not a valid Integer: {0}
+ERR_05153_NULL_ATTRIBUTE_DESCRIPTION=The attribute description should not be null
+ERR_05154_EMPTY_SUBSTRING_INITIAL_FILTER_PDU=The substring initial filter is empty
+ERR_05155_FLAG_TYPE_INVALID=The types only flag {0} is invalid: {1}. It should be 0 or 255
+ERR_05156_INVALID_ATTRIBUTE_TYPE=The Attribute type {0} is invalid : {1}
+ERR_05157_INVALID_DN=The Dn {0} is invalid : {1}
+
+
+ERR_04059=Expected either a byte[] or ByteBuffer argument but got a {0}
+ERR_04061=Ldap decoder failure!
+ERR_04064=Ldap decoder failure: The input stream does not contain a full PDU
+ERR_04065=Ldap encoder failed to encode object: {0}, error: {1}
+
+# api-ldap-codec-core api       5200-5299
+ERR_05200_NOT_INITIALIZED_YET=Not initialized yet!
+ERR_05201_INSTANCE_ALREADY_SET=The LdapCodecService is already set to an instance of {0}
+ERR_05202_FAILED_TO_INSTANCIATE=Failed to instantiate a viable instance, instantiating new instance of {0}
+ERR_05203_CODEC_ARGS_CANNOT_BE_NULL=Codec argument cannot be null
+ERR_05204_LDAP_DECODER_FAILURE=Ldap decoder failure: {0}
+ERR_05205_PDU_DOES_NOT_CONTAIN_ENOUGH_DATA=Ldap decoder failure, PDU does not contain enough data
+ERR_05206_INPUT_STREAM_TOO_SHORT_PDU=The input stream does not contain a full PDU
+
+ERR_04060=
+ERR_04062=Ldap decoder failure, PDU does not contain enough data
+ERR_04063=The input stream does not contain a full PDU
+
+# api-ldap-codec-core controls  5300-5399
+ERR_05300_CANT_DECODE_CHANGE_TYPE=failed to decode the changeType for EntryChangeControl
+ERR_05301_INVALID_PREVIOUS_DN=The previousDN field should not contain anything if the changeType is not MODDN
+ERR_05302_PREVIOUS_DN_NOT_ALLOWED=Previous DN is not allowed for this change type
+ERR_05303_BAD_PREVIOUS_DN=Bad Previous DN: ''{0}''
+ERR_05304_FAILED_TO_DECODE_PREVIOUS_DN=failed to decode the previous DN
+ERR_05305_CHANGE_NUMBER_DECODING_ERROR=failed to decode the changeNumber for EntryChangeControl
+ERR_05306_PAGED_SEARCH_SIZE_DECODING_ERROR=failed to decode the size for PagedSearchControl
+ERR_05307_CHANGE_TYPES_DECODING_ERROR=failed to decode the changeTypes for PSearchControl
+ERR_05308_CHANGE_ONLY_DECODING_ERROR=failed to decode the changesOnly for PSearchControl
+ERR_05309_RETURN_ECS_DECODING_ERROR=failed to decode the returnECs for PSearchControl
+ERR_05310_INVALID_VISIBILITY_FLAG=The visibility flag {0} is invalid: {1}. It should be 0 or 255
+
+# api-ldap-codec-core osgi      5400-5499
+ERR_05400_CONTROL_ARGUMENT_WAS_NULL=Control argument was null.
+ERR_05401_FIGURE_OUT_HOW_TO_TRANSFORM=Figure out how to transform
+ERR_05402_UNABLE_TO_ENCODE_RESPONSE_VALUE=Unable to decode encoded response value: {0}
+
+# api-ldap-codec-core search    5500-5599
+ERR_05500_NULL_MATCHING_RULE_AND_TYPE=Cannot have a null matching rule and a null type
+ERR_05501_MORE_THAN_ONE_FILTER_FOR_NOT_FILTER=Cannot have more than one Filter within a Not Filter
+ERR_05502_NULL_INITIAL_ANY_OR_FINAL_SUBSTRING=Cannot have a null initial, any and final substring
+
 # api-ldap-codec-standalone 6000-6999
 ERR_06000_FAILED_TO_LOAD_DEFAULT_CODEC_FACTORY=Failed to load default codec factory.
 
diff --git a/i18n/src/main/resources/org/apache/directory/api/i18n/messages.properties b/i18n/src/main/resources/org/apache/directory/api/i18n/messages.properties
index 4a59224..8746f34 100644
--- a/i18n/src/main/resources/org/apache/directory/api/i18n/messages.properties
+++ b/i18n/src/main/resources/org/apache/directory/api/i18n/messages.properties
@@ -96,6 +96,103 @@ MSG_03243_MESSAGE_RECEIVED=-------> {} Message received <-------
 MSG_03244_CONNECTION_RETRYING=------>>   Cannot get the connection... Retrying
 MSG_03245_CONNECTION_ERROR=------>> Connection error: {}
 
+# api-ldap-codec-core   5000-5999
+# api-ldap-codec-core <>        5000-5099
+# api-ldap-codec-core actions   5100-5199
+MSG_05100_NEW_LIST_CONTROLS_INITIALIZED=A new list of controls has been initialized
+MSG_05101_NEW_EMPTY_CONTROLS_INITIALIZED=An empty list of controls has been initialized
+MSG_05102_LDAP_MESSAGE_ID_DECODED=Ldap Message Id has been decoded: {0} 
+MSG_05103_REFERRAL_ERROR_MESSAGE_NOT_ALLOWED=The Referral error message is not allowed when having an error code no equals to REFERRAL
+MSG_05104_REFERRAL_ERROR_MESSAGE_SET_TO=The referral error message is set to {0}
+MSG_05105_INITIALISNG_REFERRAL_LIST=Initializing a referrals list
+MSG_05106_ERROR_MESSAGE_IS=The error message is: {0}
+MSG_05107_NO_SUCH_OBJECT_MATCHED_DN_NOT_SET=The matched Dn should not be set when the result code is not one of NoSuchObject, AliasProblem, InvalidDNSyntax or AliasDreferencingProblem
+MSG_05108_MATCHED_DN_IS=The matchedDn is {0}
+MSG_05109_RESULT_CODE_IS=The result code is set to {0}
+MSG_05110_ABANDON_MSG_ID_DECODED=AbandonMessage Id has been decoded: {0}
+MSG_05111_ADDING_TYPE=Adding type {0}
+MSG_05112_ADDING_VALUE=Adding value {0}
+MSG_05113_ADDING_ENTRY_WITH_DN=Adding an entry with Dn : {0}
+MSG_05114_LDAP_VERSION=Ldap version {0}
+MSG_05115_SASL_CREDS_CREATED=The SaslCredential has been created
+MSG_05116_BIND_NAME_IS=The Bind name is {0}
+MSG_05117_SASL_CREDENTIALS_DECODED=The SASL credentials have been decoded
+MSG_05118_THE_SASL_MECHANISM_IS=The mechanism is: {0}
+MSG_05119_SIMPLE_CREDENTIAL_DECODED=The simple authentication credentials have been decoded
+MSG_05120_COMPARE_REQUEST=Compare Request
+MSG_05121_COMPARING_ATTRIBUTE_VALUE=Comparing attribute value {0}
+MSG_05122_COMPARING_ATTRIBUTE_DESCRIPTION=Comparing attribute description {0}
+MSG_05123_COMPARING_DN=Comparing Dn {0}
+MSG_05124_DELETING_DN=Deleting Dn {0}
+MSG_05125_EXTENDED_REQUEST_PROCESSED=Extended request being processed ...
+MSG_05126_OID_READ=OID read: {0}
+MSG_05127_EXTENDED_VALUE=Extended value: {0}
+MSG_05128_MODIFYING_TYPE=Modifying type: {0}
+MSG_05129_NO_VALS_FOR_ATTRIBUTE=No vals for this attribute
+MSG_05130_SOME_VALS_NEED_DECODING=Some vals are to be decoded
+MSG_05131_VALUE_MODIFIED=Value modified: {0}
+MSG_05132_DN_MODIFICATION=Modification of Dn {0}
+MSG_05133_MODIFY_OPERATION=Modification operation: {0}
+MSG_05134_MODIFY_DN_REQUEST=ModifyDn request
+MSG_05135_OID_RDN_ATT_WILL_BE_DELETED=Old Rdn attributes will be deleted
+MSG_05136_OID_RDN_ATT_WILL_BE_RETAINED=Old Rdn attributes will be retained
+MSG_05137_MODIFYING_DN=Modifying Dn {0}
+MSG_05138_MODIFYING_WITH_NEW_RDN=Modifying with new Rdn {0}
+MSG_05139_NULL_NEW_SUPERIOR=The new superior is null, so we will change the entry
+MSG_05140_NEW_SUPERIOR_DN=New superior Dn {0}
+
+MSG_05141_INITIALIZE_AND_FILTER=Initialize AND filter
+MSG_05142_INITIALIZE_APPROX_FILTER=Initialize Approx Match filter
+MSG_05143_INITIALIZE_ATT_DESC_FILTER=Initialize Assertion Value filter
+MSG_05144_INITIALIZE_ASSERTION_FILTER=Initialize AttributeDesc filter
+MSG_05145_INITIALIZE_EQ_FILTER=Initialize Equality Match filter
+MSG_05146_INITIALIZE_EXT_FILTER=Initialize Extensible Match filter
+MSG_05147_INITIALIZE_GEQ_FILTER=Initialize Greater Or Equal filter
+MSG_05148_INITIALIZE_LEQ_FILTER=Initialize Less Or Equal filter
+MSG_05149_INITIALIZE_NOT_FILTER=Initialize NOT filter
+MSG_05150_INITIALIZE_OR_FILTER=Initialize OR filter
+MSG_05151_INITIALIZE_PRESENT_FILTER=Initialize Present filter
+MSG_05152_INITIALIZE_SUBSTRING_FILTER=Initialize Substrings filter
+MSG_05153_STORED_ANY_SUBSTRING=Stored a any substring: {0}
+MSG_05154_STORED_FINAL_SUBSTRING=Stored a final substring: {0}
+MSG_05155_DN_ATTRIBUTES=Dn Attributes: {0}
+MSG_05156_STORED_MATCH_VALUE=Stored a match value: {0}
+MSG_05157_SEARCH_REQUEST=Search Request
+MSG_05158_INITIALIZE_ATT_DESC_LIST=Initialize AttributeDesc list
+MSG_05159_DECODED_ATT_DESC=Decoded Attribute Description: {0}
+MSG_05160_SEARCHING_WITH_ROOT_DN=Searching with root Dn: {0}
+MSG_05161_HANDLING_OBJECT_STRATEGY=Handling object strategy: {0}
+MSG_05162_SEARCHING_WITH_SCOPE=Searching within {0} scope
+MSG_05163_SIZE_LIMIT_SET_TO=The sizeLimit value is set to {0} objects
+MSG_05164_TIME_LIMIT_SET_TO=The timeLimit value is set to {0} seconds
+MSG_05165_SEARCH_RETURN_TYPE_ONLY=The search will return {0}
+MSG_05166_STORED_TYPE_MATCHING_RULE=Stored a type matching rule: {0}
+MSG_05167_ADD_RESPONSE=Add Response
+MSG_05168_SASL_CREDENTIALS_VALUE_STORED=The SASL credentials value has been stored
+MSG_05169_COMPARE_RESPONSE=Compare response
+MSG_05170_DEL_RESPONSE=Del response
+MSG_05171_EXTENDED_RESPONSE=Extended Response
+MSG_05172_OID_READ=OID read: {0}
+MSG_05173_EXTENDED_VALUE=Extended value: {0}
+MSG_05174_INTERMEDIATE_RESPONSE=Intermediate Response
+MSG_05175_VALUE_READ=Value read: {0}
+MSG_05176_MODIFY_RESPONSE=Modify response
+MSG_05177_MODIFY_DN_RESPONSE=Modify Dn response
+MSG_05178_SEARCH_RESULT_DONE=Search Result Done found
+MSG_05179_ATTRIBUTE_TYPE=Attribute type: {0}
+MSG_05180_NULL_ATTRIBUTE_VALUE=The attribute value is null
+MSG_05181_ATTRIBUTE_VALUE=Attribute value: {0}
+MSG_05182_SEARCH_RESULT_ENTRY_DN=Search Result Entry Dn found: {0}
+MSG_05183_SEARCH_RESULT_REFERENCE_RESPONSE=SearchResultReference response
+MSG_05184_SEARCH_REFERENCE_URL=Search reference URL found: {0}
+
+# api-ldap-codec-core api       5200-5299
+MSG_5200_DECODED_LDAP_MESSAGE=Decoded LdapMessage: {0}
+
+# api-ldap-codec-core controls  5300-5399
+# api-ldap-codec-core osgi      5400-5499
+# api-ldap-codec-core search    5500-5599
+
 # api-ldap-codec-standalone 6000-6999
 MSG_06000_REGISTERED_CONTROL_FACTORY=Registered pre-bundled control factory: {0}
 MSG_06001_REGISTERED_EXTENDED_OP_FACTORY=Registered pre-bundled extended operation factory: {0}
diff --git a/ldap/client/api/src/main/java/org/apache/directory/ldap/client/api/LdapNetworkConnection.java b/ldap/client/api/src/main/java/org/apache/directory/ldap/client/api/LdapNetworkConnection.java
index d0c3cd9..22b6304 100644
--- a/ldap/client/api/src/main/java/org/apache/directory/ldap/client/api/LdapNetworkConnection.java
+++ b/ldap/client/api/src/main/java/org/apache/directory/ldap/client/api/LdapNetworkConnection.java
@@ -693,7 +693,6 @@ public class LdapNetworkConnection extends AbstractLdapConnection implements Lda
                 }
             }
     
-
             boolean result = false;
 
             // Wait until it's established
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/AllowGrammarEnd.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/AllowGrammarEnd.java
index 041a0ef..7debb4c 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/AllowGrammarEnd.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/AllowGrammarEnd.java
@@ -20,7 +20,6 @@
 package org.apache.directory.api.ldap.codec.actions;
 
 
-import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.api.MessageDecorator;
@@ -46,7 +45,7 @@ public class AllowGrammarEnd extends GrammarAction<LdapMessageContainer<MessageD
     /**
      * {@inheritDoc}
      */
-    public void action( LdapMessageContainer<MessageDecorator<? extends Message>> container ) throws DecoderException
+    public void action( LdapMessageContainer<MessageDecorator<? extends Message>> container )
     {
         container.setGrammarEndAllowed( true );
     }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/controls/AddControl.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/controls/AddControl.java
index a294c2c..1c4092e 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/controls/AddControl.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/controls/AddControl.java
@@ -61,6 +61,7 @@ public class AddControl extends GrammarAction<LdapMessageContainer<MessageDecora
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<MessageDecorator<? extends Message>> container ) throws DecoderException
     {
         TLV tlv = container.getCurrentTLV();
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/controls/InitControls.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/controls/InitControls.java
index 8f06d0e..7b156f8 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/controls/InitControls.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/controls/InitControls.java
@@ -20,9 +20,9 @@
 package org.apache.directory.api.ldap.codec.actions.controls;
 
 
-import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.api.MessageDecorator;
 import org.apache.directory.api.ldap.model.message.Message;
@@ -58,7 +58,8 @@ public class InitControls extends GrammarAction<LdapMessageContainer<MessageDeco
     /**
      * {@inheritDoc}
      */
-    public void action( LdapMessageContainer<MessageDecorator<? extends Message>> container ) throws DecoderException
+    @Override
+    public void action( LdapMessageContainer<MessageDecorator<? extends Message>> container )
     {
         TLV tlv = container.getCurrentTLV();
         int expectedLength = tlv.getLength();
@@ -68,14 +69,14 @@ public class InitControls extends GrammarAction<LdapMessageContainer<MessageDeco
         {
             if ( LOG.isDebugEnabled() )
             {
-                LOG.debug( "A new list of controls has been initialized" );
+                LOG.debug( I18n.msg( I18n.MSG_05100_NEW_LIST_CONTROLS_INITIALIZED ) );
             }
         }
         else
         {
             if ( LOG.isDebugEnabled() )
             {
-                LOG.debug( "An empty list of controls has been initialized" );
+                LOG.debug( I18n.msg( I18n.MSG_05101_NEW_EMPTY_CONTROLS_INITIALIZED ) );
             }
         }
 
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/controls/StoreControlCriticality.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/controls/StoreControlCriticality.java
index a5a6f4c..3268aae 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/controls/StoreControlCriticality.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/controls/StoreControlCriticality.java
@@ -64,6 +64,7 @@ public class StoreControlCriticality extends GrammarAction<LdapMessageContainer<
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<MessageDecorator<? extends Message>> container ) throws DecoderException
     {
         TLV tlv = container.getCurrentTLV();
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/controls/StoreControlValue.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/controls/StoreControlValue.java
index a679119..79438b2 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/controls/StoreControlValue.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/controls/StoreControlValue.java
@@ -65,6 +65,7 @@ public class StoreControlValue extends GrammarAction<LdapMessageContainer<Messag
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<MessageDecorator<? extends Message>> container ) throws DecoderException
     {
         TLV tlv = container.getCurrentTLV();
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapMessage/InitLdapMessage.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapMessage/InitLdapMessage.java
index 974f0a1..4ebec9f 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapMessage/InitLdapMessage.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapMessage/InitLdapMessage.java
@@ -60,6 +60,7 @@ public class InitLdapMessage extends GrammarAction<LdapMessageContainer<MessageD
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<MessageDecorator<? extends Message>> container ) throws DecoderException
     {
         TLV tlv = container.getCurrentTLV();
@@ -67,10 +68,10 @@ public class InitLdapMessage extends GrammarAction<LdapMessageContainer<MessageD
         // The Length should not be null
         if ( tlv.getLength() == 0 )
         {
-            LOG.error( I18n.err( I18n.ERR_04066 ) );
+            LOG.error( I18n.err( I18n.ERR_05142_ZERO_LENGTH_MESSAGE ) );
 
             // This will generate a PROTOCOL_ERROR
-            throw new DecoderException( I18n.err( I18n.ERR_04067 ) );
+            throw new DecoderException( I18n.err( I18n.ERR_05143_EMPTY_MESSAGE ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapMessage/StoreMessageId.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapMessage/StoreMessageId.java
index 21bbf9f..2802f7e 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapMessage/StoreMessageId.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapMessage/StoreMessageId.java
@@ -69,6 +69,7 @@ public class StoreMessageId extends GrammarAction<LdapMessageContainer<MessageDe
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<MessageDecorator<? extends Message>> container ) throws DecoderException
     {
         // The current TLV should be a integer
@@ -78,10 +79,10 @@ public class StoreMessageId extends GrammarAction<LdapMessageContainer<MessageDe
         // The Length should not be null
         if ( tlv.getLength() == 0 )
         {
-            LOG.error( I18n.err( I18n.ERR_04068 ) );
+            LOG.error( I18n.err( I18n.ERR_05100_ZERO_LENGTH_MESSAGE_ID_NOT_ALLOWED ) );
 
             // This will generate a PROTOCOL_ERROR
-            throw new DecoderException( I18n.err( I18n.ERR_04069 ) );
+            throw new DecoderException( I18n.err( I18n.ERR_05101_NULL_MESSAGE_ID_NOT_ALLOWED ) );
         }
 
         BerValue value = tlv.getValue();
@@ -94,12 +95,12 @@ public class StoreMessageId extends GrammarAction<LdapMessageContainer<MessageDe
 
             if ( LOG.isDebugEnabled() )
             {
-                LOG.debug( "Ldap Message Id has been decoded : " + messageId );
+                LOG.debug( I18n.msg( I18n.MSG_05102_LDAP_MESSAGE_ID_DECODED, messageId ) );
             }
         }
         catch ( IntegerDecoderException ide )
         {
-            LOG.error( I18n.err( I18n.ERR_04070, Strings.dumpBytes( value.getData() ), ide
+            LOG.error( I18n.err( I18n.ERR_05102_INVALID_MESSAGE_ID, Strings.dumpBytes( value.getData() ), ide
                 .getLocalizedMessage() ) );
 
             // This will generate a PROTOCOL_ERROR
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapResult/AddReferral.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapResult/AddReferral.java
index 39de65d..7f4e4ba 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapResult/AddReferral.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapResult/AddReferral.java
@@ -64,6 +64,7 @@ public class AddReferral extends GrammarAction<LdapMessageContainer<MessageDecor
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<MessageDecorator<? extends Message>> container ) throws DecoderException
     {
         TLV tlv = container.getCurrentTLV();
@@ -88,15 +89,15 @@ public class AddReferral extends GrammarAction<LdapMessageContainer<MessageDecor
                 catch ( LdapURLEncodingException luee )
                 {
                     String badUrl = Strings.utf8ToString( tlv.getValue().getData() );
-                    LOG.error( I18n.err( I18n.ERR_04015, badUrl, luee.getMessage() ) );
-                    throw new DecoderException( I18n.err( I18n.ERR_04016, luee.getMessage() ), luee );
+                    LOG.error( I18n.err( I18n.ERR_05103_INVALID_URL, badUrl, luee.getMessage() ) );
+                    throw new DecoderException( I18n.err( I18n.ERR_05104_INVALID_URL, luee.getMessage() ), luee );
                 }
             }
             else
             {
                 if ( LOG.isWarnEnabled() )
                 {
-                    LOG.warn( "The Referral error message is not allowed when havind an error code no equals to REFERRAL" );
+                    LOG.warn( I18n.msg( I18n.MSG_05103_REFERRAL_ERROR_MESSAGE_NOT_ALLOWED ) );
                 }
                 
                 referral.addLdapUrl( LdapUrl.EMPTY_URL.toString() );
@@ -124,7 +125,7 @@ public class AddReferral extends GrammarAction<LdapMessageContainer<MessageDecor
 
             if ( LOG.isDebugEnabled() )
             {
-                LOG.debug( "The referral error message is set to " + sb.toString() );
+                LOG.debug( I18n.msg( I18n.MSG_05104_REFERRAL_ERROR_MESSAGE_SET_TO, sb.toString() ) );
              }
         }
 
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapResult/InitReferrals.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapResult/InitReferrals.java
index 035a05a..e67c431 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapResult/InitReferrals.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapResult/InitReferrals.java
@@ -61,6 +61,7 @@ public class InitReferrals extends GrammarAction<LdapMessageContainer<MessageDec
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<MessageDecorator<? extends Message>> container ) throws DecoderException
     {
         TLV tlv = container.getCurrentTLV();
@@ -68,7 +69,7 @@ public class InitReferrals extends GrammarAction<LdapMessageContainer<MessageDec
         // If we hae a Referrals sequence, then it should not be empty
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04011 );
+            String msg = I18n.err( I18n.ERR_05105_REFERRAL_MUST_NOT_BE_NULL );
             LOG.error( msg );
 
             // This will generate a PROTOCOL_ERROR
@@ -83,7 +84,7 @@ public class InitReferrals extends GrammarAction<LdapMessageContainer<MessageDec
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Initialising a referrals list" );
+            LOG.debug( I18n.msg( I18n.MSG_05105_INITIALISNG_REFERRAL_LIST ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapResult/StoreErrorMessage.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapResult/StoreErrorMessage.java
index a2d7294..1770a53 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapResult/StoreErrorMessage.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapResult/StoreErrorMessage.java
@@ -20,9 +20,9 @@
 package org.apache.directory.api.ldap.codec.actions.ldapResult;
 
 
-import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.api.MessageDecorator;
 import org.apache.directory.api.ldap.model.message.LdapResult;
@@ -61,7 +61,8 @@ public class StoreErrorMessage extends GrammarAction<LdapMessageContainer<Messag
     /**
      * {@inheritDoc}
      */
-    public void action( LdapMessageContainer<MessageDecorator<? extends Message>> container ) throws DecoderException
+    @Override
+    public void action( LdapMessageContainer<MessageDecorator<? extends Message>> container )
     {
         // Get the Value and store it in the BindResponse
         TLV tlv = container.getCurrentTLV();
@@ -87,7 +88,7 @@ public class StoreErrorMessage extends GrammarAction<LdapMessageContainer<Messag
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "The error message is : " + errorMessage );
+            LOG.debug( I18n.msg( I18n.MSG_05106_ERROR_MESSAGE_IS, errorMessage ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapResult/StoreMatchedDN.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapResult/StoreMatchedDN.java
index 0860358..ca6fe6e 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapResult/StoreMatchedDN.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapResult/StoreMatchedDN.java
@@ -65,6 +65,7 @@ public class StoreMatchedDN extends GrammarAction<LdapMessageContainer<MessageDe
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<MessageDecorator<? extends Message>> container ) throws DecoderException
     {
         // Get the Value and store it in the BindResponse
@@ -104,11 +105,11 @@ public class StoreMatchedDN extends GrammarAction<LdapMessageContainer<MessageDe
                     catch ( LdapInvalidDnException ine )
                     {
                         // This is for the client side. We will never decode LdapResult on the server
-                        String msg = I18n.err( I18n.ERR_04013, dnStr, Strings.dumpBytes( dnBytes ), ine
+                        String msg = I18n.err( I18n.ERR_05106_INCORRECT_DN_GIVEN_INVALID, dnStr, Strings.dumpBytes( dnBytes ), ine
                             .getLocalizedMessage() );
                         LOG.error( msg );
 
-                        throw new DecoderException( I18n.err( I18n.ERR_04014, ine.getLocalizedMessage() ), ine );
+                        throw new DecoderException( I18n.err( I18n.ERR_05107_INCORRECT_DN_GIVEN, ine.getLocalizedMessage() ), ine );
                     }
 
                     break;
@@ -116,8 +117,7 @@ public class StoreMatchedDN extends GrammarAction<LdapMessageContainer<MessageDe
                 default:
                     if ( LOG.isWarnEnabled() )
                     {
-                        LOG.warn( "The matched Dn should not be set when the result code is not one of NoSuchObject,"
-                            + " AliasProblem, InvalidDNSyntax or AliasDreferencingProblem" );
+                        LOG.warn( I18n.msg( I18n.MSG_05107_NO_SUCH_OBJECT_MATCHED_DN_NOT_SET ) );
                     }
 
                     matchedDn = Dn.EMPTY_DN;
@@ -127,7 +127,7 @@ public class StoreMatchedDN extends GrammarAction<LdapMessageContainer<MessageDe
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "The matchedDn is " + matchedDn );
+            LOG.debug( I18n.msg( I18n.MSG_05108_MATCHED_DN_IS, matchedDn ) );
         }
 
         ldapResult.setMatchedDn( matchedDn );
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapResult/StoreResultCode.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapResult/StoreResultCode.java
index 52a8169..8d9793c 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapResult/StoreResultCode.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/ldapResult/StoreResultCode.java
@@ -64,6 +64,7 @@ public class StoreResultCode extends GrammarAction<LdapMessageContainer<MessageD
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<MessageDecorator<? extends Message>> container ) throws DecoderException
     {
         // The current TLV should be a integer
@@ -81,14 +82,14 @@ public class StoreResultCode extends GrammarAction<LdapMessageContainer<MessageD
         }
         catch ( IntegerDecoderException ide )
         {
-            LOG.error( I18n.err( I18n.ERR_04018, Strings.dumpBytes( value.getData() ), ide.getMessage() ) );
+            LOG.error( I18n.err( I18n.ERR_05108_INVALID_RESULT_CODE, Strings.dumpBytes( value.getData() ), ide.getMessage() ) );
 
             throw new DecoderException( ide.getMessage(), ide );
         }
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "The result code is set to " + resultCode );
+            LOG.debug( I18n.msg( I18n.MSG_05109_RESULT_CODE_IS, resultCode ) );
         }
 
         ResultResponse response = ( ResultResponse ) container.getMessage();
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/abandon/InitAbandonRequest.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/abandon/InitAbandonRequest.java
index eba1fab..e78a1a1 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/abandon/InitAbandonRequest.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/abandon/InitAbandonRequest.java
@@ -62,6 +62,7 @@ public class InitAbandonRequest extends GrammarAction<LdapMessageContainer<Aband
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<AbandonRequestDecorator> container ) throws DecoderException
     {
         // Create the AbandonRequest LdapMessage instance and store it in the container
@@ -79,7 +80,7 @@ public class InitAbandonRequest extends GrammarAction<LdapMessageContainer<Aband
 
         if ( ( value == null ) || ( value.getData() == null ) )
         {
-            String msg = I18n.err( I18n.ERR_04075 );
+            String msg = I18n.err( I18n.ERR_05109_ABANDON_REQ_MSG_ID_NULL );
             LOG.error( msg );
 
             // This will generate a PROTOCOL_ERROR
@@ -94,7 +95,7 @@ public class InitAbandonRequest extends GrammarAction<LdapMessageContainer<Aband
 
             if ( LOG.isDebugEnabled() )
             {
-                LOG.debug( "AbandonMessage Id has been decoded : {}", Integer.valueOf( abandonnedMessageId ) );
+                LOG.debug( I18n.msg( I18n.MSG_05110_ABANDON_MSG_ID_DECODED, Integer.valueOf( abandonnedMessageId ) ) );
             }
 
             container.setGrammarEndAllowed( true );
@@ -104,7 +105,7 @@ public class InitAbandonRequest extends GrammarAction<LdapMessageContainer<Aband
         catch ( IntegerDecoderException ide )
         {
             LOG.error( I18n
-                .err( I18n.ERR_04076, Strings.dumpBytes( value.getData() ), ide.getMessage() ) );
+                .err( I18n.ERR_05110_INVALID_ABANDON_REQ_MSG_ID, Strings.dumpBytes( value.getData() ), ide.getMessage() ) );
 
             // This will generate a PROTOCOL_ERROR
             throw new DecoderException( ide.getMessage(), ide );
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/add/AddAddRequestAttributeType.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/add/AddAddRequestAttributeType.java
index 24c4930..883bcc9 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/add/AddAddRequestAttributeType.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/add/AddAddRequestAttributeType.java
@@ -61,6 +61,7 @@ public class AddAddRequestAttributeType extends GrammarAction<LdapMessageContain
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<AddRequestDecorator> container ) throws DecoderException
     {
         AddRequestDecorator addRequest = container.getMessage();
@@ -70,7 +71,7 @@ public class AddAddRequestAttributeType extends GrammarAction<LdapMessageContain
         // Store the type. It can't be null.
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04086 );
+            String msg = I18n.err( I18n.ERR_05111_NULL_OR_EMPTY_TYPE_NOT_ALLOWED );
             LOG.error( msg );
 
             AddResponseImpl response = new AddResponseImpl( addRequest.getMessageId() );
@@ -87,7 +88,7 @@ public class AddAddRequestAttributeType extends GrammarAction<LdapMessageContain
         }
         catch ( LdapException ne )
         {
-            String msg = I18n.err( I18n.ERR_04087 );
+            String msg = I18n.err( I18n.ERR_05112_ERROR_WITH_ATTRIBUTE_TYPE );
             LOG.error( msg );
 
             AddResponseImpl response = new AddResponseImpl( addRequest.getMessageId() );
@@ -97,7 +98,7 @@ public class AddAddRequestAttributeType extends GrammarAction<LdapMessageContain
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Adding type {}", type );
+            LOG.debug( I18n.msg( I18n.MSG_05111_ADDING_TYPE, type ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/add/AddAttributeValue.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/add/AddAttributeValue.java
index c8d5b48..f4a4178 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/add/AddAttributeValue.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/add/AddAttributeValue.java
@@ -22,6 +22,7 @@ package org.apache.directory.api.ldap.codec.actions.request.add;
 
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.AddRequestDecorator;
 import org.apache.directory.api.ldap.model.exception.LdapException;
@@ -58,6 +59,7 @@ public class AddAttributeValue extends GrammarAction<LdapMessageContainer<AddReq
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<AddRequestDecorator> container )
     {
         AddRequestDecorator addRequest = container.getMessage();
@@ -81,7 +83,7 @@ public class AddAttributeValue extends GrammarAction<LdapMessageContainer<AddReq
 
                     if ( LOG.isDebugEnabled() )
                     {
-                        LOG.debug( "Adding value {}", Strings.dumpBytes( ( byte[] ) value ) );
+                        LOG.debug( I18n.msg( I18n.MSG_05112_ADDING_VALUE, Strings.dumpBytes( ( byte[] ) value ) ) );
                     }
 
                     addRequest.addAttributeValue( ( byte[] ) value );
@@ -92,7 +94,7 @@ public class AddAttributeValue extends GrammarAction<LdapMessageContainer<AddReq
 
                     if ( LOG.isDebugEnabled() )
                     {
-                        LOG.debug( "Adding value {}" + value );
+                        LOG.debug( I18n.msg( I18n.MSG_05112_ADDING_VALUE, value ) );
                     }
 
                     addRequest.addAttributeValue( ( String ) value );
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/add/InitAddRequest.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/add/InitAddRequest.java
index e726814..7e73d26 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/add/InitAddRequest.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/add/InitAddRequest.java
@@ -58,6 +58,7 @@ public class InitAddRequest extends GrammarAction<LdapMessageContainer<AddReques
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<AddRequestDecorator> container ) throws DecoderException
     {
         // Now, we can allocate the AddRequest Object
@@ -73,7 +74,7 @@ public class InitAddRequest extends GrammarAction<LdapMessageContainer<AddReques
 
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04084 );
+            String msg = I18n.err( I18n.ERR_05145_NULL_ADD_REQUEST );
             LOG.error( msg );
 
             // Will generate a PROTOCOL_ERROR
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/add/StoreAddRequestEntryName.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/add/StoreAddRequestEntryName.java
index ed06417..ba9b4c5 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/add/StoreAddRequestEntryName.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/add/StoreAddRequestEntryName.java
@@ -63,6 +63,7 @@ public class StoreAddRequestEntryName extends GrammarAction<LdapMessageContainer
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<AddRequestDecorator> container ) throws DecoderException
     {
         AddRequestDecorator addRequest = container.getMessage();
@@ -72,7 +73,7 @@ public class StoreAddRequestEntryName extends GrammarAction<LdapMessageContainer
         // Store the entry. It can't be null
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04085 );
+            String msg = I18n.err( I18n.ERR_05115_EMTPY_ENTRY_DN_GIVEN );
             LOG.error( msg );
 
             AddResponseImpl response = new AddResponseImpl( addRequest.getMessageId() );
@@ -94,9 +95,8 @@ public class StoreAddRequestEntryName extends GrammarAction<LdapMessageContainer
             }
             catch ( LdapInvalidDnException ine )
             {
-                String msg = "Invalid Dn given : " + dnStr + " (" + Strings.dumpBytes( dnBytes )
-                    + ") is invalid";
-                LOG.error( "{} : {}", msg, ine.getMessage() );
+                String msg = I18n.err( I18n.ERR_05113_INVALID_DN, dnStr, Strings.dumpBytes( dnBytes ) );
+                LOG.error( I18n.err( I18n.ERR_05114_ERROR_MESSAGE, msg, ine.getMessage() ) );
 
                 AddResponseImpl response = new AddResponseImpl( addRequest.getMessageId() );
                 throw new ResponseCarryingException( msg, response, ResultCodeEnum.INVALID_DN_SYNTAX,
@@ -108,7 +108,7 @@ public class StoreAddRequestEntryName extends GrammarAction<LdapMessageContainer
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Adding an entry with Dn : {}", addRequest.getEntry() );
+            LOG.debug( I18n.msg( I18n.MSG_05113_ADDING_ENTRY_WITH_DN, addRequest.getEntry() ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/InitBindRequest.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/InitBindRequest.java
index b7916c9..7ec34b9 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/InitBindRequest.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/InitBindRequest.java
@@ -58,6 +58,7 @@ public class InitBindRequest extends GrammarAction<LdapMessageContainer<BindRequ
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<BindRequestDecorator> container ) throws DecoderException
     {
         // Create the BindRequest LdapMessage instance and store it in the container
@@ -72,7 +73,7 @@ public class InitBindRequest extends GrammarAction<LdapMessageContainer<BindRequ
 
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04077 );
+            String msg = I18n.err( I18n.ERR_05144_NULL_BIND_REQUEST );
             LOG.error( msg );
 
             // This will generate a PROTOCOL_ERROR
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/InitSaslBind.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/InitSaslBind.java
index b4c578e..00fced8 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/InitSaslBind.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/InitSaslBind.java
@@ -68,6 +68,7 @@ public class InitSaslBind extends GrammarAction<LdapMessageContainer<BindRequest
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<BindRequestDecorator> container ) throws DecoderException
     {
         BindRequest bindRequestMessage = container.getMessage();
@@ -76,7 +77,7 @@ public class InitSaslBind extends GrammarAction<LdapMessageContainer<BindRequest
         // We will check that the sasl is not null
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04079 );
+            String msg = I18n.err( I18n.ERR_05116_SASL_CREDS_CANT_BE_NULL );
             LOG.error( msg );
 
             BindResponseImpl response = new BindResponseImpl( bindRequestMessage.getMessageId() );
@@ -89,7 +90,7 @@ public class InitSaslBind extends GrammarAction<LdapMessageContainer<BindRequest
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "The SaslCredential has been created" );
+            LOG.debug( I18n.msg( I18n.MSG_05115_SASL_CREDS_CREATED ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/StoreName.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/StoreName.java
index d24612e..57212d6 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/StoreName.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/StoreName.java
@@ -20,9 +20,9 @@
 package org.apache.directory.api.ldap.codec.actions.request.bind;
 
 
-import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.BindRequestDecorator;
 import org.apache.directory.api.ldap.model.message.BindRequest;
@@ -58,7 +58,8 @@ public class StoreName extends GrammarAction<LdapMessageContainer<BindRequestDec
     /**
      * {@inheritDoc}
      */
-    public void action( LdapMessageContainer<BindRequestDecorator> container ) throws DecoderException
+    @Override
+    public void action( LdapMessageContainer<BindRequestDecorator> container )
     {
         BindRequest bindRequestMessage = container.getMessage();
 
@@ -79,7 +80,7 @@ public class StoreName extends GrammarAction<LdapMessageContainer<BindRequestDec
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( " The Bind name is {}", bindRequestMessage.getName() );
+            LOG.debug( I18n.msg( I18n.MSG_05116_BIND_NAME_IS, bindRequestMessage.getName() ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/StoreSaslCredentials.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/StoreSaslCredentials.java
index 58c91bf..3b3fd96 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/StoreSaslCredentials.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/StoreSaslCredentials.java
@@ -20,9 +20,9 @@
 package org.apache.directory.api.ldap.codec.actions.request.bind;
 
 
-import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.BindRequestDecorator;
 import org.apache.directory.api.ldap.model.message.BindRequest;
@@ -57,7 +57,8 @@ public class StoreSaslCredentials extends GrammarAction<LdapMessageContainer<Bin
     /**
      * {@inheritDoc}
      */
-    public void action( LdapMessageContainer<BindRequestDecorator> container ) throws DecoderException
+    @Override
+    public void action( LdapMessageContainer<BindRequestDecorator> container )
     {
         BindRequest bindRequestMessage = container.getMessage();
 
@@ -80,8 +81,7 @@ public class StoreSaslCredentials extends GrammarAction<LdapMessageContainer<Bin
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "The credentials are : {}", Strings.dumpBytes( bindRequestMessage
-                .getCredentials() ) );
+            LOG.debug( I18n.msg( I18n.MSG_05117_SASL_CREDENTIALS_DECODED ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/StoreSaslMechanism.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/StoreSaslMechanism.java
index 076a0aa..292bdbc 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/StoreSaslMechanism.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/StoreSaslMechanism.java
@@ -22,6 +22,7 @@ package org.apache.directory.api.ldap.codec.actions.request.bind;
 
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.BindRequestDecorator;
 import org.apache.directory.api.ldap.model.message.BindRequest;
@@ -56,6 +57,7 @@ public class StoreSaslMechanism extends GrammarAction<LdapMessageContainer<BindR
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<BindRequestDecorator> container )
     {
         BindRequest bindRequestMessage = container.getMessage();
@@ -77,7 +79,7 @@ public class StoreSaslMechanism extends GrammarAction<LdapMessageContainer<BindR
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "The mechanism is : {}", bindRequestMessage.getSaslMechanism() );
+            LOG.debug( I18n.msg( I18n.MSG_05118_THE_SASL_MECHANISM_IS, bindRequestMessage.getSaslMechanism() ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/StoreSimpleAuth.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/StoreSimpleAuth.java
index b00c86e..901fe97 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/StoreSimpleAuth.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/StoreSimpleAuth.java
@@ -20,9 +20,9 @@
 package org.apache.directory.api.ldap.codec.actions.request.bind;
 
 
-import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.BindRequestDecorator;
 import org.apache.directory.api.ldap.model.message.BindRequest;
@@ -63,7 +63,8 @@ public class StoreSimpleAuth extends GrammarAction<LdapMessageContainer<BindRequ
     /**
      * {@inheritDoc}
      */
-    public void action( LdapMessageContainer<BindRequestDecorator> container ) throws DecoderException
+    @Override
+    public void action( LdapMessageContainer<BindRequestDecorator> container )
     {
         BindRequest bindRequestMessage = container.getMessage();
         TLV tlv = container.getCurrentTLV();
@@ -86,8 +87,7 @@ public class StoreSimpleAuth extends GrammarAction<LdapMessageContainer<BindRequ
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "The simple authentication is : {}", Strings.dumpBytes( bindRequestMessage
-                .getCredentials() ) );
+            LOG.debug( I18n.msg( I18n.MSG_05119_SIMPLE_CREDENTIAL_DECODED ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/StoreVersion.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/StoreVersion.java
index b909f48..2ec8d64 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/StoreVersion.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/bind/StoreVersion.java
@@ -61,6 +61,7 @@ public class StoreVersion extends GrammarAction<LdapMessageContainer<BindRequest
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<BindRequestDecorator> container ) throws DecoderException
     {
         BindRequest bindRequestMessage = container.getMessage();
@@ -77,7 +78,7 @@ public class StoreVersion extends GrammarAction<LdapMessageContainer<BindRequest
 
             if ( LOG.isDebugEnabled() )
             {
-                LOG.debug( "Ldap version ", Integer.valueOf( version ) );
+                LOG.debug( I18n.msg( I18n.MSG_05114_LDAP_VERSION, Integer.valueOf( version ) ) );
             }
 
             bindRequestMessage.setVersion3( version == 3 );
@@ -85,7 +86,7 @@ public class StoreVersion extends GrammarAction<LdapMessageContainer<BindRequest
         catch ( IntegerDecoderException ide )
         {
             LOG.error( I18n
-                .err( I18n.ERR_04078, Strings.dumpBytes( value.getData() ), ide.getMessage() ) );
+                .err( I18n.ERR_05117_INVALID_VERSION, Strings.dumpBytes( value.getData() ), ide.getMessage() ) );
 
             // This will generate a PROTOCOL_ERROR
             throw new DecoderException( ide.getMessage(), ide );
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/compare/InitCompareRequest.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/compare/InitCompareRequest.java
index 938864c..fb12921 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/compare/InitCompareRequest.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/compare/InitCompareRequest.java
@@ -21,6 +21,7 @@ package org.apache.directory.api.ldap.codec.actions.request.compare;
 
 
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.CompareRequestDecorator;
 import org.apache.directory.api.ldap.model.message.CompareRequest;
@@ -57,6 +58,7 @@ public class InitCompareRequest extends GrammarAction<LdapMessageContainer<Compa
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<CompareRequestDecorator> container )
     {
         // Now, we can allocate the CompareRequest Object
@@ -68,7 +70,7 @@ public class InitCompareRequest extends GrammarAction<LdapMessageContainer<Compa
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Compare Request" );
+            LOG.debug( I18n.msg( I18n.MSG_05120_COMPARE_REQUEST ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/compare/StoreCompareRequestAssertionValue.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/compare/StoreCompareRequestAssertionValue.java
index f078530..84e9373 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/compare/StoreCompareRequestAssertionValue.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/compare/StoreCompareRequestAssertionValue.java
@@ -22,6 +22,7 @@ package org.apache.directory.api.ldap.codec.actions.request.compare;
 
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.CompareRequestDecorator;
 import org.apache.directory.api.ldap.model.message.CompareRequest;
@@ -62,6 +63,7 @@ public class StoreCompareRequestAssertionValue extends GrammarAction<LdapMessage
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<CompareRequestDecorator> container )
     {
         // Get the CompareRequest Object
@@ -83,8 +85,8 @@ public class StoreCompareRequestAssertionValue extends GrammarAction<LdapMessage
 
                 if ( LOG.isDebugEnabled() )
                 {
-                    LOG.debug( "Comparing attribute value {}", Strings.dumpBytes( compareRequest
-                        .getAssertionValue().getBytes() ) );
+                    LOG.debug( I18n.msg( I18n.MSG_05121_COMPARING_ATTRIBUTE_VALUE, 
+                        Strings.dumpBytes( compareRequest.getAssertionValue().getBytes() ) ) );
                 }
             }
             else
@@ -93,7 +95,7 @@ public class StoreCompareRequestAssertionValue extends GrammarAction<LdapMessage
 
                 if ( LOG.isDebugEnabled() )
                 {
-                    LOG.debug( "Comparing attribute value {}", compareRequest.getAssertionValue() );
+                    LOG.debug( I18n.msg( I18n.MSG_05121_COMPARING_ATTRIBUTE_VALUE, compareRequest.getAssertionValue() ) );
                 }
             }
         }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/compare/StoreCompareRequestAttributeDesc.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/compare/StoreCompareRequestAttributeDesc.java
index aa1e415..b7b8447 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/compare/StoreCompareRequestAttributeDesc.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/compare/StoreCompareRequestAttributeDesc.java
@@ -65,6 +65,7 @@ public class StoreCompareRequestAttributeDesc extends GrammarAction<LdapMessageC
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<CompareRequestDecorator> container ) throws DecoderException
     {
         // Get the CompareRequest Object
@@ -77,7 +78,7 @@ public class StoreCompareRequestAttributeDesc extends GrammarAction<LdapMessageC
         // Dn
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04093 );
+            String msg = I18n.err( I18n.ERR_05118_NULL_ATTRIBUTE_DESC );
             LOG.error( msg );
             CompareResponseImpl response = new CompareResponseImpl( compareRequest.getMessageId() );
 
@@ -90,7 +91,7 @@ public class StoreCompareRequestAttributeDesc extends GrammarAction<LdapMessageC
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Comparing attribute description {}", compareRequest.getAttributeId() );
+            LOG.debug( I18n.msg( I18n.MSG_05122_COMPARING_ATTRIBUTE_DESCRIPTION, compareRequest.getAttributeId() ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/compare/StoreCompareRequestEntryName.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/compare/StoreCompareRequestEntryName.java
index 5093b98..88c3c89 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/compare/StoreCompareRequestEntryName.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/compare/StoreCompareRequestEntryName.java
@@ -63,6 +63,7 @@ public class StoreCompareRequestEntryName extends GrammarAction<LdapMessageConta
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<CompareRequestDecorator> container ) throws DecoderException
     {
         CompareRequest compareRequest = container.getMessage();
@@ -76,7 +77,7 @@ public class StoreCompareRequestEntryName extends GrammarAction<LdapMessageConta
         if ( tlv.getLength() == 0 )
         {
             // This will generate a PROTOCOL_ERROR
-            throw new DecoderException( I18n.err( I18n.ERR_04089 ) );
+            throw new DecoderException( I18n.err( I18n.ERR_05119_NULL_ENTRY ) );
         }
         else
         {
@@ -89,9 +90,8 @@ public class StoreCompareRequestEntryName extends GrammarAction<LdapMessageConta
             }
             catch ( LdapInvalidDnException ine )
             {
-                String msg = "Invalid Dn given : " + dnStr + " (" + Strings.dumpBytes( dnBytes )
-                    + ") is invalid";
-                LOG.error( "{} : {}", msg, ine.getMessage() );
+                String msg = I18n.err( I18n.ERR_05113_INVALID_DN, dnStr, Strings.dumpBytes( dnBytes ) );
+                LOG.error( I18n.err( I18n.ERR_05114_ERROR_MESSAGE, msg, ine.getMessage() ) );
 
                 CompareResponseImpl response = new CompareResponseImpl( compareRequest.getMessageId() );
                 throw new ResponseCarryingException( msg, response, ResultCodeEnum.INVALID_DN_SYNTAX,
@@ -103,7 +103,7 @@ public class StoreCompareRequestEntryName extends GrammarAction<LdapMessageConta
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Comparing Dn {}", entry );
+            LOG.debug( I18n.msg( I18n.MSG_05123_COMPARING_DN, entry ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/del/InitDelRequest.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/del/InitDelRequest.java
index 9575f02..4b776e4 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/del/InitDelRequest.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/del/InitDelRequest.java
@@ -65,6 +65,7 @@ public class InitDelRequest extends GrammarAction<LdapMessageContainer<DeleteReq
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<DeleteRequestDecorator> container ) throws DecoderException
     {
         // Create the DeleteRequest LdapMessage instance and store it in the container
@@ -85,7 +86,7 @@ public class InitDelRequest extends GrammarAction<LdapMessageContainer<DeleteReq
         if ( tlv.getLength() == 0 )
         {
             // This will generate a PROTOCOL_ERROR
-            throw new DecoderException( I18n.err( I18n.ERR_04073 ) );
+            throw new DecoderException( I18n.err( I18n.ERR_05119_NULL_ENTRY ) );
         }
         else
         {
@@ -98,7 +99,7 @@ public class InitDelRequest extends GrammarAction<LdapMessageContainer<DeleteReq
             }
             catch ( LdapInvalidDnException ine )
             {
-                String msg = I18n.err( I18n.ERR_04074, dnStr, Strings.dumpBytes( dnBytes ), ine
+                String msg = I18n.err( I18n.ERR_05120_INVALID_DELETE_DN, dnStr, Strings.dumpBytes( dnBytes ), ine
                     .getLocalizedMessage() );
                 LOG.error( msg );
 
@@ -115,7 +116,7 @@ public class InitDelRequest extends GrammarAction<LdapMessageContainer<DeleteReq
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Deleting Dn {}", entry );
+            LOG.debug( I18n.msg( I18n.MSG_05124_DELETING_DN, entry ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/extended/InitExtendedRequest.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/extended/InitExtendedRequest.java
index f8e2813..39b0b49 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/extended/InitExtendedRequest.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/extended/InitExtendedRequest.java
@@ -20,8 +20,8 @@
 package org.apache.directory.api.ldap.codec.actions.request.extended;
 
 
-import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.ExtendedRequestDecorator;
 import org.slf4j.Logger;
@@ -54,7 +54,8 @@ public class InitExtendedRequest extends GrammarAction<LdapMessageContainer<Exte
     /**
      * {@inheritDoc}
      */
-    public void action( LdapMessageContainer<ExtendedRequestDecorator<?>> container ) throws DecoderException
+    @Override
+    public void action( LdapMessageContainer<ExtendedRequestDecorator<?>> container )
     {
         /*
          * It is the responsibility of the LdapCodecService to instantiate new
@@ -70,7 +71,7 @@ public class InitExtendedRequest extends GrammarAction<LdapMessageContainer<Exte
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Extended request being processed ..." );
+            LOG.debug( I18n.msg( I18n.MSG_05125_EXTENDED_REQUEST_PROCESSED ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/extended/StoreExtendedRequestName.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/extended/StoreExtendedRequestName.java
index 5ed55e0..4f20d33 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/extended/StoreExtendedRequestName.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/extended/StoreExtendedRequestName.java
@@ -60,6 +60,7 @@ public class StoreExtendedRequestName extends GrammarAction<LdapMessageContainer
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<ExtendedRequestDecorator<?>> container ) throws DecoderException
     {
         ExtendedRequest req;
@@ -71,7 +72,7 @@ public class StoreExtendedRequestName extends GrammarAction<LdapMessageContainer
         // OID
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04095 );
+            String msg = I18n.err( I18n.ERR_05122_NULL_NAME );
             LOG.error( msg );
             // This will generate a PROTOCOL_ERROR
             throw new DecoderException( msg );
@@ -87,9 +88,8 @@ public class StoreExtendedRequestName extends GrammarAction<LdapMessageContainer
                 if ( !Oid.isOid( requestName ) )
                 {
 
-                    String msg = "The Request name is not a valid OID : "
-                        + Strings.utf8ToString( requestNameBytes ) + " ("
-                        + Strings.dumpBytes( requestNameBytes ) + ") is invalid";
+                    String msg = I18n.err( I18n.ERR_05121_INVALID_REQUEST_NAME_OID,
+                        Strings.utf8ToString( requestNameBytes ), Strings.dumpBytes( requestNameBytes ) );
                     LOG.error( msg );
 
                     // throw an exception, we will get a PROTOCOL_ERROR
@@ -102,10 +102,9 @@ public class StoreExtendedRequestName extends GrammarAction<LdapMessageContainer
             }
             catch ( DecoderException de )
             {
-                String msg = "The Request name is not a valid OID : "
-                    + Strings.utf8ToString( requestNameBytes ) + " ("
-                    + Strings.dumpBytes( requestNameBytes ) + ") is invalid";
-                LOG.error( "{} : {}", msg, de.getMessage() );
+                String msg = I18n.err( I18n.ERR_05121_INVALID_REQUEST_NAME_OID,
+                    Strings.utf8ToString( requestNameBytes ), Strings.dumpBytes( requestNameBytes ) );
+                LOG.error( I18n.err( I18n.ERR_05114_ERROR_MESSAGE, msg, de.getMessage() ) );
 
                 // Rethrow the exception, we will get a PROTOCOL_ERROR
                 throw de;
@@ -117,7 +116,7 @@ public class StoreExtendedRequestName extends GrammarAction<LdapMessageContainer
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "OID read : {}", req.getRequestName() );
+            LOG.debug( I18n.msg( I18n.MSG_05126_OID_READ, req.getRequestName() ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/extended/StoreExtendedRequestValue.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/extended/StoreExtendedRequestValue.java
index 9e19a17..71168ee 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/extended/StoreExtendedRequestValue.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/extended/StoreExtendedRequestValue.java
@@ -20,9 +20,9 @@
 package org.apache.directory.api.ldap.codec.actions.request.extended;
 
 
-import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.ExtendedRequestDecorator;
 import org.apache.directory.api.util.Strings;
@@ -56,7 +56,8 @@ public class StoreExtendedRequestValue extends GrammarAction<LdapMessageContaine
     /**
      * {@inheritDoc}
      */
-    public void action( LdapMessageContainer<ExtendedRequestDecorator<?>> container ) throws DecoderException
+    @Override
+    public void action( LdapMessageContainer<ExtendedRequestDecorator<?>> container )
     {
         // We can allocate the ExtendedRequest Object
         ExtendedRequestDecorator<?> extendedRequest = container.getMessage();
@@ -80,7 +81,7 @@ public class StoreExtendedRequestValue extends GrammarAction<LdapMessageContaine
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Extended value : {}", extendedRequest.getRequestValue() );
+            LOG.debug( I18n.msg( I18n.MSG_05127_EXTENDED_VALUE, extendedRequest.getRequestValue() ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/AddModifyRequestAttribute.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/AddModifyRequestAttribute.java
index 2bc46ff..df6abd5 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/AddModifyRequestAttribute.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/AddModifyRequestAttribute.java
@@ -67,6 +67,7 @@ public class AddModifyRequestAttribute extends GrammarAction<LdapMessageContaine
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<ModifyRequestDecorator> container ) throws DecoderException
     {
         ModifyRequestDecorator modifyRequestDecorator = container.getMessage();
@@ -79,7 +80,7 @@ public class AddModifyRequestAttribute extends GrammarAction<LdapMessageContaine
 
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04083 );
+            String msg = I18n.err( I18n.ERR_05123_TYPE_CANT_BE_NULL );
             LOG.error( msg );
 
             ModifyResponseImpl response = new ModifyResponseImpl( modifyRequest.getMessageId() );
@@ -94,7 +95,7 @@ public class AddModifyRequestAttribute extends GrammarAction<LdapMessageContaine
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Modifying type : {}", type );
+            LOG.debug( I18n.msg( I18n.MSG_05128_MODIFYING_TYPE, type ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/InitAttributeVals.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/InitAttributeVals.java
index b160c47..6db6ebd 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/InitAttributeVals.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/InitAttributeVals.java
@@ -22,6 +22,7 @@ package org.apache.directory.api.ldap.codec.actions.request.modify;
 
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.ModifyRequestDecorator;
 import org.slf4j.Logger;
@@ -61,6 +62,7 @@ public class InitAttributeVals extends GrammarAction<LdapMessageContainer<Modify
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<ModifyRequestDecorator> container )
     {
         TLV tlv = container.getCurrentTLV();
@@ -68,7 +70,7 @@ public class InitAttributeVals extends GrammarAction<LdapMessageContainer<Modify
         // If the length is null, we store an empty value
         if ( LOG.isDebugEnabled() && ( tlv.getLength() == 0 ) )
         {
-            LOG.debug( "No vals for this attribute" );
+            LOG.debug( I18n.msg( I18n.MSG_05129_NO_VALS_FOR_ATTRIBUTE ) );
         }
 
         // We can have an END transition
@@ -76,7 +78,7 @@ public class InitAttributeVals extends GrammarAction<LdapMessageContainer<Modify
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Some vals are to be decoded" );
+            LOG.debug( I18n.msg( I18n.MSG_05130_SOME_VALS_NEED_DECODING ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/InitModifyRequest.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/InitModifyRequest.java
index 9419201..4129e75 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/InitModifyRequest.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/InitModifyRequest.java
@@ -49,6 +49,7 @@ public class InitModifyRequest extends GrammarAction<LdapMessageContainer<Modify
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<ModifyRequestDecorator> container )
     {
         // Now, we can allocate the ModifyRequest Object
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/StoreModifyRequestAttributeValue.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/StoreModifyRequestAttributeValue.java
index 870d93a..18f6834 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/StoreModifyRequestAttributeValue.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/StoreModifyRequestAttributeValue.java
@@ -22,6 +22,7 @@ package org.apache.directory.api.ldap.codec.actions.request.modify;
 
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.ModifyRequestDecorator;
 import org.apache.directory.api.ldap.model.exception.LdapException;
@@ -52,6 +53,7 @@ public class StoreModifyRequestAttributeValue extends GrammarAction<LdapMessageC
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<ModifyRequestDecorator> container )
     {
         ModifyRequestDecorator modifyRequestDecorator = container.getMessage();
@@ -91,7 +93,7 @@ public class StoreModifyRequestAttributeValue extends GrammarAction<LdapMessageC
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Value modified : {}", value );
+            LOG.debug( I18n.msg( I18n.MSG_05131_VALUE_MODIFIED, value ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/StoreModifyRequestObjectName.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/StoreModifyRequestObjectName.java
index ab223a4..db857cb 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/StoreModifyRequestObjectName.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/StoreModifyRequestObjectName.java
@@ -23,6 +23,7 @@ package org.apache.directory.api.ldap.codec.actions.request.modify;
 import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.api.ResponseCarryingException;
 import org.apache.directory.api.ldap.codec.decorators.ModifyRequestDecorator;
@@ -62,6 +63,7 @@ public class StoreModifyRequestObjectName extends GrammarAction<LdapMessageConta
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<ModifyRequestDecorator> container ) throws DecoderException
     {
         ModifyRequestDecorator modifyRequestDecorator = container.getMessage();
@@ -87,9 +89,8 @@ public class StoreModifyRequestObjectName extends GrammarAction<LdapMessageConta
             }
             catch ( LdapInvalidDnException ine )
             {
-                String msg = "Invalid Dn given : " + dnStr + " (" + Strings.dumpBytes( dnBytes )
-                    + ") is invalid";
-                LOG.error( "{} : {}", msg, ine.getMessage() );
+                String msg = I18n.err( I18n.ERR_05113_INVALID_DN, dnStr, Strings.dumpBytes( dnBytes ) );
+                LOG.error( I18n.err( I18n.ERR_05114_ERROR_MESSAGE, msg, ine.getMessage() ) );
 
                 ModifyResponseImpl response = new ModifyResponseImpl( modifyRequest.getMessageId() );
                 throw new ResponseCarryingException( msg, response, ResultCodeEnum.INVALID_DN_SYNTAX,
@@ -101,7 +102,7 @@ public class StoreModifyRequestObjectName extends GrammarAction<LdapMessageConta
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Modification of Dn {}", modifyRequest.getName() );
+            LOG.debug( I18n.msg( I18n.MSG_05132_DN_MODIFICATION, modifyRequest.getName() ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/StoreOperationType.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/StoreOperationType.java
index 7190627..12bd997 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/StoreOperationType.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modify/StoreOperationType.java
@@ -62,6 +62,7 @@ public class StoreOperationType extends GrammarAction<LdapMessageContainer<Modif
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<ModifyRequestDecorator> container ) throws DecoderException
     {
         ModifyRequestDecorator modifyRequestDecorator = container.getMessage();
@@ -77,7 +78,7 @@ public class StoreOperationType extends GrammarAction<LdapMessageContainer<Modif
         }
         catch ( IntegerDecoderException ide )
         {
-            String msg = I18n.err( I18n.ERR_04082, Strings.dumpBytes( tlv.getValue().getData() ) );
+            String msg = I18n.err( I18n.ERR_05124_INVALID_OPERATION, Strings.dumpBytes( tlv.getValue().getData() ) );
             LOG.error( msg );
 
             // This will generate a PROTOCOL_ERROR
@@ -92,19 +93,19 @@ public class StoreOperationType extends GrammarAction<LdapMessageContainer<Modif
             switch ( operation )
             {
                 case LdapCodecConstants.OPERATION_ADD:
-                    LOG.debug( "Modification operation : ADD" );
+                    LOG.debug( I18n.msg( I18n.MSG_05133_MODIFY_OPERATION, "ADD" ) );
                     break;
 
                 case LdapCodecConstants.OPERATION_DELETE:
-                    LOG.debug( "Modification operation : DELETE" );
+                    LOG.debug( I18n.msg( I18n.MSG_05133_MODIFY_OPERATION, "DELETE" ) );
                     break;
 
                 case LdapCodecConstants.OPERATION_REPLACE:
-                    LOG.debug( "Modification operation : REPLACE" );
+                    LOG.debug( I18n.msg( I18n.MSG_05133_MODIFY_OPERATION, "REPLACE" ) );
                     break;
 
                 default:
-                    LOG.debug( "Modification operation : UNKNOWN" );
+                    LOG.debug( I18n.msg( I18n.MSG_05133_MODIFY_OPERATION, "UNKNOWN" ) );
             }
         }
     }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modifydn/InitModifyDnRequest.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modifydn/InitModifyDnRequest.java
index 457255a..4602308 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modifydn/InitModifyDnRequest.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modifydn/InitModifyDnRequest.java
@@ -21,6 +21,7 @@ package org.apache.directory.api.ldap.codec.actions.request.modifydn;
 
 
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.ModifyDnRequestDecorator;
 import org.apache.directory.api.ldap.model.message.ModifyDnRequest;
@@ -55,6 +56,7 @@ public class InitModifyDnRequest extends GrammarAction<LdapMessageContainer<Modi
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<ModifyDnRequestDecorator> container )
     {
         // Now, we can allocate the ModifyDNRequest Object
@@ -66,7 +68,7 @@ public class InitModifyDnRequest extends GrammarAction<LdapMessageContainer<Modi
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "ModifyDn request" );
+            LOG.debug( I18n.msg( I18n.MSG_05134_MODIFY_DN_REQUEST ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modifydn/StoreModifyDnRequestDeleteOldRdn.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modifydn/StoreModifyDnRequestDeleteOldRdn.java
index 0cb5776..897ee9c 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modifydn/StoreModifyDnRequestDeleteOldRdn.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modifydn/StoreModifyDnRequestDeleteOldRdn.java
@@ -62,6 +62,7 @@ public class StoreModifyDnRequestDeleteOldRdn extends GrammarAction<LdapMessageC
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<ModifyDnRequestDecorator> container ) throws DecoderException
     {
         ModifyDnRequest modifyDnRequest = container.getMessage();
@@ -83,7 +84,7 @@ public class StoreModifyDnRequestDeleteOldRdn extends GrammarAction<LdapMessageC
         catch ( BooleanDecoderException bde )
         {
             LOG.error( I18n
-                .err( I18n.ERR_04091, Strings.dumpBytes( value.getData() ), bde.getMessage() ) );
+                .err( I18n.ERR_05125_INVALID_OLD_RDN, Strings.dumpBytes( value.getData() ), bde.getMessage() ) );
 
             // This will generate a PROTOCOL_ERROR
             throw new DecoderException( bde.getMessage(), bde );
@@ -96,11 +97,11 @@ public class StoreModifyDnRequestDeleteOldRdn extends GrammarAction<LdapMessageC
         {
             if ( modifyDnRequest.getDeleteOldRdn() )
             {
-                LOG.debug( " Old Rdn attributes will be deleted" );
+                LOG.debug( I18n.msg( I18n.MSG_05135_OID_RDN_ATT_WILL_BE_DELETED ) );
             }
             else
             {
-                LOG.debug( " Old Rdn attributes will be retained" );
+                LOG.debug( I18n.msg( I18n.MSG_05136_OID_RDN_ATT_WILL_BE_RETAINED ) );
             }
         }
     }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modifydn/StoreModifyDnRequestEntryName.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modifydn/StoreModifyDnRequestEntryName.java
index 562559d..dd36898 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modifydn/StoreModifyDnRequestEntryName.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modifydn/StoreModifyDnRequestEntryName.java
@@ -63,6 +63,7 @@ public class StoreModifyDnRequestEntryName extends GrammarAction<LdapMessageCont
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<ModifyDnRequestDecorator> container ) throws DecoderException
     {
         ModifyDnRequest modifyDnRequest = container.getMessage();
@@ -77,7 +78,7 @@ public class StoreModifyDnRequestEntryName extends GrammarAction<LdapMessageCont
         if ( tlv.getLength() == 0 )
         {
             // This will generate a PROTOCOL_ERROR
-            throw new DecoderException( I18n.err( I18n.ERR_04089 ) );
+            throw new DecoderException( I18n.err( I18n.ERR_05119_NULL_ENTRY ) );
         }
         else
         {
@@ -90,9 +91,8 @@ public class StoreModifyDnRequestEntryName extends GrammarAction<LdapMessageCont
             }
             catch ( LdapInvalidDnException ine )
             {
-                String msg = "Invalid Dn given : " + dnStr + " (" + Strings.dumpBytes( dnBytes )
-                    + ") is invalid";
-                LOG.error( "{} : {}", msg, ine.getMessage() );
+                String msg = I18n.err( I18n.ERR_05113_INVALID_DN, dnStr, Strings.dumpBytes( dnBytes ) );
+                LOG.error( I18n.err( I18n.ERR_05114_ERROR_MESSAGE, msg, ine.getMessage() ) );
 
                 ModifyDnResponseImpl response = new ModifyDnResponseImpl( modifyDnRequest.getMessageId() );
                 throw new ResponseCarryingException( msg, response, ResultCodeEnum.INVALID_DN_SYNTAX,
@@ -104,7 +104,7 @@ public class StoreModifyDnRequestEntryName extends GrammarAction<LdapMessageCont
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Modifying Dn {}", entry );
+            LOG.debug( I18n.msg( I18n.MSG_05137_MODIFYING_DN, entry ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modifydn/StoreModifyDnRequestNewRdn.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modifydn/StoreModifyDnRequestNewRdn.java
index 2a93da5..eabb5c0 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modifydn/StoreModifyDnRequestNewRdn.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modifydn/StoreModifyDnRequestNewRdn.java
@@ -67,6 +67,7 @@ public class StoreModifyDnRequestNewRdn extends GrammarAction<LdapMessageContain
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<ModifyDnRequestDecorator> container ) throws DecoderException
     {
         ModifyDnRequest modifyDnRequest = container.getMessage();
@@ -80,7 +81,7 @@ public class StoreModifyDnRequestNewRdn extends GrammarAction<LdapMessageContain
 
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04090 );
+            String msg = I18n.err( I18n.ERR_05126_RDN_MUST_NOT_BE_NULL );
             LOG.error( msg );
 
             ModifyDnResponseImpl response = new ModifyDnResponseImpl( modifyDnRequest.getMessageId() );
@@ -99,9 +100,8 @@ public class StoreModifyDnRequestNewRdn extends GrammarAction<LdapMessageContain
             }
             catch ( LdapInvalidDnException ine )
             {
-                String msg = "Invalid new Rdn given : " + dnStr + " (" + Strings.dumpBytes( dnBytes )
-                    + ") is invalid";
-                LOG.error( "{} : {}", msg, ine.getMessage() );
+                String msg = I18n.err( I18n.ERR_05127_INVALID_NEW_RDN, dnStr, Strings.dumpBytes( dnBytes ) );
+                LOG.error( I18n.err( I18n.ERR_05114_ERROR_MESSAGE, msg, ine.getMessage() ) );
 
                 ModifyDnResponseImpl response = new ModifyDnResponseImpl( modifyDnRequest.getMessageId() );
                 throw new ResponseCarryingException( msg, response, ResultCodeEnum.INVALID_DN_SYNTAX,
@@ -113,7 +113,7 @@ public class StoreModifyDnRequestNewRdn extends GrammarAction<LdapMessageContain
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Modifying with new Rdn {}", newRdn );
+            LOG.debug( I18n.msg( I18n.MSG_05138_MODIFYING_WITH_NEW_RDN, newRdn ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modifydn/StoreModifyDnRequestNewSuperior.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modifydn/StoreModifyDnRequestNewSuperior.java
index 0559143..3eb4345 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modifydn/StoreModifyDnRequestNewSuperior.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/modifydn/StoreModifyDnRequestNewSuperior.java
@@ -63,6 +63,7 @@ public class StoreModifyDnRequestNewSuperior extends GrammarAction<LdapMessageCo
     /**
      * {@inheritDoc}
      */
+    @Override
     public void action( LdapMessageContainer<ModifyDnRequestDecorator> container ) throws DecoderException
     {
         ModifyDnRequest modifyDnRequest = container.getMessage();
@@ -80,13 +81,13 @@ public class StoreModifyDnRequestNewSuperior extends GrammarAction<LdapMessageCo
             if ( modifyDnRequest.getDeleteOldRdn() )
             {
                 // This will generate a PROTOCOL_ERROR
-                throw new DecoderException( I18n.err( I18n.ERR_04092 ) );
+                throw new DecoderException( I18n.err( I18n.ERR_05128_NULL_SUPERIOR ) );
             }
             else
             {
                 if ( LOG.isWarnEnabled() )
                 {
-                    LOG.warn( "The new superior is null, so we will change the entry" );
+                    LOG.warn( I18n.msg( I18n.MSG_05139_NULL_NEW_SUPERIOR ) );
                 }
             }
 
@@ -103,9 +104,8 @@ public class StoreModifyDnRequestNewSuperior extends GrammarAction<LdapMessageCo
             }
             catch ( LdapInvalidDnException ine )
             {
-                String msg = "Invalid new superior Dn given : " + dnStr + " ("
-                    + Strings.dumpBytes( dnBytes ) + ") is invalid";
-                LOG.error( "{} : {}", msg, ine.getMessage() );
+                String msg = I18n.err( I18n.ERR_05129_INVALID_NEW_SUPERIOR, dnStr, Strings.dumpBytes( dnBytes ) );
+                LOG.error( I18n.err( I18n.ERR_05114_ERROR_MESSAGE, msg, ine.getMessage() ) );
 
                 ModifyDnResponseImpl response = new ModifyDnResponseImpl( modifyDnRequest.getMessageId() );
                 throw new ResponseCarryingException( msg, response, ResultCodeEnum.INVALID_DN_SYNTAX,
@@ -120,7 +120,7 @@ public class StoreModifyDnRequestNewSuperior extends GrammarAction<LdapMessageCo
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "New superior Dn {}", newSuperior );
+            LOG.debug( I18n.msg( I18n.MSG_05140_NEW_SUPERIOR_DN, newSuperior ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/InitSearchRequest.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/InitSearchRequest.java
index 7359c00..a4ba3d6 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/InitSearchRequest.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/InitSearchRequest.java
@@ -22,6 +22,7 @@ package org.apache.directory.api.ldap.codec.actions.request.search;
 
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.SearchRequestDecorator;
 import org.apache.directory.api.ldap.model.message.SearchRequest;
@@ -71,7 +72,7 @@ public class InitSearchRequest extends GrammarAction<LdapMessageContainer<Search
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Search Request" );
+            LOG.debug( I18n.msg( I18n.MSG_05157_SEARCH_REQUEST ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/InitSearchRequestAttributeDescList.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/InitSearchRequestAttributeDescList.java
index ee22c24..1dbc4ae 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/InitSearchRequestAttributeDescList.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/InitSearchRequestAttributeDescList.java
@@ -22,6 +22,7 @@ package org.apache.directory.api.ldap.codec.actions.request.search;
 
 import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.SearchRequestDecorator;
 import org.apache.directory.api.ldap.model.exception.LdapSchemaException;
@@ -80,7 +81,7 @@ public class InitSearchRequestAttributeDescList extends GrammarAction<LdapMessag
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Initialize AttributeDesc list" );
+            LOG.debug( I18n.msg( I18n.MSG_05158_INITIALIZE_ATT_DESC_LIST ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestAttributeDesc.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestAttributeDesc.java
index 7cc8ea0..e9aea24 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestAttributeDesc.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestAttributeDesc.java
@@ -20,9 +20,9 @@
 package org.apache.directory.api.ldap.codec.actions.request.search;
 
 
-import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.SearchRequestDecorator;
 import org.apache.directory.api.util.Strings;
@@ -59,7 +59,7 @@ public class StoreSearchRequestAttributeDesc extends GrammarAction<LdapMessageCo
     /**
      * {@inheritDoc}
      */
-    public void action( LdapMessageContainer<SearchRequestDecorator> container ) throws DecoderException
+    public void action( LdapMessageContainer<SearchRequestDecorator> container )
     {
         SearchRequestDecorator searchRequestDecorator = container.getMessage();
         TLV tlv = container.getCurrentTLV();
@@ -81,7 +81,7 @@ public class StoreSearchRequestAttributeDesc extends GrammarAction<LdapMessageCo
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Decoded Attribute Description : {}", attributeDescription );
+            LOG.debug( I18n.msg( I18n.MSG_05159_DECODED_ATT_DESC, attributeDescription ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestBaseObject.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestBaseObject.java
index 8af47f6..79e3b7d 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestBaseObject.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestBaseObject.java
@@ -23,6 +23,7 @@ package org.apache.directory.api.ldap.codec.actions.request.search;
 import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.api.ResponseCarryingException;
 import org.apache.directory.api.ldap.codec.decorators.SearchRequestDecorator;
@@ -88,9 +89,8 @@ public class StoreSearchRequestBaseObject extends GrammarAction<LdapMessageConta
             }
             catch ( LdapInvalidDnException ine )
             {
-                String msg = "Invalid root Dn given : " + dnStr + " (" + Strings.dumpBytes( dnBytes )
-                    + ") is invalid";
-                LOG.error( "{} : {}", msg, ine.getMessage() );
+                String msg = I18n.err( I18n.ERR_05132_INVALID_ROOT_DN, dnStr, Strings.dumpBytes( dnBytes ) );
+                LOG.error( I18n.err( I18n.ERR_05114_ERROR_MESSAGE, msg, ine.getMessage() ) );
 
                 SearchResultDoneImpl response = new SearchResultDoneImpl( searchRequest.getMessageId() );
                 throw new ResponseCarryingException( msg, response, ResultCodeEnum.INVALID_DN_SYNTAX,
@@ -106,7 +106,7 @@ public class StoreSearchRequestBaseObject extends GrammarAction<LdapMessageConta
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Searching with root Dn : {}", baseObject );
+            LOG.debug( I18n.msg( I18n.MSG_05160_SEARCHING_WITH_ROOT_DN, baseObject ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestDerefAlias.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestDerefAlias.java
index 851f260..3b250c8 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestDerefAlias.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestDerefAlias.java
@@ -84,7 +84,7 @@ public class StoreSearchRequestDerefAlias extends GrammarAction<LdapMessageConta
         }
         catch ( IntegerDecoderException ide )
         {
-            String msg = I18n.err( I18n.ERR_04102, value.toString() );
+            String msg = I18n.err( I18n.ERR_05150_BAD_DEREF_ALIAS, value.toString() );
             LOG.error( msg );
             throw new DecoderException( msg, ide );
         }
@@ -96,23 +96,23 @@ public class StoreSearchRequestDerefAlias extends GrammarAction<LdapMessageConta
             switch ( derefAliases )
             {
                 case LdapCodecConstants.NEVER_DEREF_ALIASES:
-                    LOG.debug( "Handling object strategy : NEVER_DEREF_ALIASES" );
+                    LOG.debug( I18n.msg( I18n.MSG_05161_HANDLING_OBJECT_STRATEGY, "NEVER_DEREF_ALIASES" ) );
                     break;
 
                 case LdapCodecConstants.DEREF_IN_SEARCHING:
-                    LOG.debug( "Handling object strategy : DEREF_IN_SEARCHING" );
+                    LOG.debug( I18n.msg( I18n.MSG_05161_HANDLING_OBJECT_STRATEGY, "DEREF_IN_SEARCHING" ) );
                     break;
 
                 case LdapCodecConstants.DEREF_FINDING_BASE_OBJ:
-                    LOG.debug( "Handling object strategy : DEREF_FINDING_BASE_OBJ" );
+                    LOG.debug( I18n.msg( I18n.MSG_05161_HANDLING_OBJECT_STRATEGY, "DEREF_FINDING_BASE_OBJ" ) );
                     break;
 
                 case LdapCodecConstants.DEREF_ALWAYS:
-                    LOG.debug( "Handling object strategy : DEREF_ALWAYS" );
+                    LOG.debug( I18n.msg( I18n.MSG_05161_HANDLING_OBJECT_STRATEGY, "DEREF_ALWAYS" ) );
                     break;
 
                 default:
-                    LOG.debug( "Handling object strategy : UNKNOWN" );
+                    LOG.debug( I18n.msg( I18n.MSG_05161_HANDLING_OBJECT_STRATEGY, "UNKNOWN" ) );
             }
         }
     }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestScope.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestScope.java
index 01c2e02..88129ec 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestScope.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestScope.java
@@ -83,7 +83,7 @@ public class StoreSearchRequestScope extends GrammarAction<LdapMessageContainer<
         }
         catch ( IntegerDecoderException ide )
         {
-            String msg = I18n.err( I18n.ERR_04101, value.toString() );
+            String msg = I18n.err( I18n.ERR_05149_BAD_SCOPE, value.toString() );
             LOG.error( msg );
             throw new DecoderException( msg, ide );
         }
@@ -95,19 +95,19 @@ public class StoreSearchRequestScope extends GrammarAction<LdapMessageContainer<
             switch ( scope )
             {
                 case LdapCodecConstants.SCOPE_BASE_OBJECT:
-                    LOG.debug( "Searching within BASE_OBJECT scope " );
+                    LOG.debug( I18n.msg( I18n.MSG_05162_SEARCHING_WITH_SCOPE, "BASE_OBJECT" ) );
                     break;
 
                 case LdapCodecConstants.SCOPE_SINGLE_LEVEL:
-                    LOG.debug( "Searching within SINGLE_LEVEL scope " );
+                    LOG.debug( I18n.msg( I18n.MSG_05162_SEARCHING_WITH_SCOPE, "SINGLE_LEVEL" ) );
                     break;
 
                 case LdapCodecConstants.SCOPE_WHOLE_SUBTREE:
-                    LOG.debug( "Searching within WHOLE_SUBTREE scope " );
+                    LOG.debug( I18n.msg( I18n.MSG_05162_SEARCHING_WITH_SCOPE, "WHOLE_SUBTREE" ) );
                     break;
 
                 default:
-                    LOG.debug( "Searching within UNKNOWN scope " );
+                    LOG.debug( I18n.msg( I18n.MSG_05162_SEARCHING_WITH_SCOPE, "UNKNOWN" ) );
             }
         }
     }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestSizeLimit.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestSizeLimit.java
index 8b1adc3..d46d51e 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestSizeLimit.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestSizeLimit.java
@@ -78,7 +78,7 @@ public class StoreSearchRequestSizeLimit extends GrammarAction<LdapMessageContai
         }
         catch ( LongDecoderException lde )
         {
-            String msg = I18n.err( I18n.ERR_04103, value.toString() );
+            String msg = I18n.err( I18n.ERR_05151_BAD_SIZE_LIMIT, value.toString() );
             LOG.error( msg );
             throw new DecoderException( msg, lde );
         }
@@ -87,7 +87,7 @@ public class StoreSearchRequestSizeLimit extends GrammarAction<LdapMessageContai
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "The sizeLimit value is set to {} objects", Long.valueOf( sizeLimit ) );
+            LOG.debug( I18n.msg( I18n.MSG_05163_SIZE_LIMIT_SET_TO, Long.valueOf( sizeLimit ) ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestTimeLimit.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestTimeLimit.java
index 3a607bd..b7108a2 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestTimeLimit.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestTimeLimit.java
@@ -79,7 +79,7 @@ public class StoreSearchRequestTimeLimit extends GrammarAction<LdapMessageContai
         }
         catch ( IntegerDecoderException ide )
         {
-            String msg = I18n.err( I18n.ERR_04104, value.toString() );
+            String msg = I18n.err( I18n.ERR_05152_BAD_TIME_LIMIT, value.toString() );
             LOG.error( msg );
             throw new DecoderException( msg, ide );
         }
@@ -88,7 +88,7 @@ public class StoreSearchRequestTimeLimit extends GrammarAction<LdapMessageContai
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "The timeLimit value is set to {} seconds", Integer.valueOf( timeLimit ) );
+            LOG.debug( I18n.msg( I18n.MSG_05164_TIME_LIMIT_SET_TO, Integer.valueOf( timeLimit ) ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestTypesOnly.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestTypesOnly.java
index a62c07d..20d027a 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestTypesOnly.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreSearchRequestTypesOnly.java
@@ -83,15 +83,14 @@ public class StoreSearchRequestTypesOnly extends GrammarAction<LdapMessageContai
         catch ( BooleanDecoderException bde )
         {
             LOG.error( I18n
-                .err( I18n.ERR_04105, Strings.dumpBytes( value.getData() ), bde.getMessage() ) );
+                .err( I18n.ERR_05155_FLAG_TYPE_INVALID, Strings.dumpBytes( value.getData() ), bde.getMessage() ) );
 
             throw new DecoderException( bde.getMessage(), bde );
         }
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "The search will return {}", searchRequest.getTypesOnly() ? "only attributs type"
-                : "attributes types and values" );
+            LOG.debug( I18n.msg( I18n.MSG_05165_SEARCH_RETURN_TYPE_ONLY ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreTypeMatchingRule.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreTypeMatchingRule.java
index 6f347c8..76dfeed 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreTypeMatchingRule.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/StoreTypeMatchingRule.java
@@ -63,7 +63,7 @@ public class StoreTypeMatchingRule extends GrammarAction<LdapMessageContainer<Se
 
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04022 );
+            String msg = I18n.err( I18n.ERR_05141_NULL_MATCHING_RULE_ASSERTION_TYPE );
             LOG.error( msg );
             throw new DecoderException( msg );
         }
@@ -77,7 +77,7 @@ public class StoreTypeMatchingRule extends GrammarAction<LdapMessageContainer<Se
 
             if ( LOG.isDebugEnabled() )
             {
-                LOG.debug( "Stored a type matching rule : {}", type );
+                LOG.debug( I18n.msg( I18n.MSG_05166_STORED_TYPE_MATCHING_RULE, type ) );
             }
         }
     }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitAndFilter.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitAndFilter.java
index d5fa1de..8eed05d 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitAndFilter.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitAndFilter.java
@@ -60,7 +60,7 @@ public class InitAndFilter extends GrammarAction<LdapMessageContainer<SearchRequ
 
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04006 );
+            String msg = I18n.err( I18n.ERR_05134_EMPTY_AND_FILTER_PDU );
             LOG.error( msg );
             throw new DecoderException( msg );
         }
@@ -75,7 +75,7 @@ public class InitAndFilter extends GrammarAction<LdapMessageContainer<SearchRequ
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Initialize AND filter" );
+            LOG.debug( I18n.msg( I18n.MSG_05141_INITIALIZE_AND_FILTER ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitApproxMatchFilter.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitApproxMatchFilter.java
index 0fbc6d9..3d3ec25 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitApproxMatchFilter.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitApproxMatchFilter.java
@@ -22,6 +22,7 @@ package org.apache.directory.api.ldap.codec.actions.request.search.filter;
 
 import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapCodecConstants;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.SearchRequestDecorator;
@@ -69,7 +70,7 @@ public class InitApproxMatchFilter extends GrammarAction<LdapMessageContainer<Se
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Initialize Approx Match filter" );
+            LOG.debug( I18n.msg( I18n.MSG_05142_INITIALIZE_APPROX_FILTER ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitAssertionValueFilter.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitAssertionValueFilter.java
index 4d9bc09..141cbc9 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitAssertionValueFilter.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitAssertionValueFilter.java
@@ -23,6 +23,7 @@ package org.apache.directory.api.ldap.codec.actions.request.search.filter;
 import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.AttributeValueAssertion;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.SearchRequestDecorator;
@@ -82,7 +83,7 @@ public class InitAssertionValueFilter extends GrammarAction<LdapMessageContainer
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Initialize Assertion Value filter" );
+            LOG.debug( I18n.msg( I18n.MSG_05144_INITIALIZE_ASSERTION_FILTER ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitAttributeDescFilter.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitAttributeDescFilter.java
index 400dcf9..f9ea341 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitAttributeDescFilter.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitAttributeDescFilter.java
@@ -65,7 +65,7 @@ public class InitAttributeDescFilter extends GrammarAction<LdapMessageContainer<
 
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04007 );
+            String msg = I18n.err( I18n.ERR_05135_EMPTY_ATTRIBUTE_DESCRIPTION );
             LOG.error( msg );
             throw new DecoderException( msg );
         }
@@ -81,7 +81,7 @@ public class InitAttributeDescFilter extends GrammarAction<LdapMessageContainer<
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Initialize AttributeDesc filter" );
+            LOG.debug( I18n.msg( I18n.MSG_05143_INITIALIZE_ATT_DESC_FILTER ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitEqualityMatchFilter.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitEqualityMatchFilter.java
index 83f1af9..8e2f008 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitEqualityMatchFilter.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitEqualityMatchFilter.java
@@ -22,6 +22,7 @@ package org.apache.directory.api.ldap.codec.actions.request.search.filter;
 
 import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapCodecConstants;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.SearchRequestDecorator;
@@ -69,7 +70,7 @@ public class InitEqualityMatchFilter extends GrammarAction<LdapMessageContainer<
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Initialize Equality Match filter" );
+            LOG.debug( I18n.msg( I18n.MSG_05145_INITIALIZE_EQ_FILTER ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitExtensibleMatchFilter.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitExtensibleMatchFilter.java
index 3e7f158..659b4f9 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitExtensibleMatchFilter.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitExtensibleMatchFilter.java
@@ -22,6 +22,7 @@ package org.apache.directory.api.ldap.codec.actions.request.search.filter;
 
 import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.SearchRequestDecorator;
 import org.apache.directory.api.ldap.codec.search.ExtensibleMatchFilter;
@@ -64,7 +65,7 @@ public class InitExtensibleMatchFilter extends GrammarAction<LdapMessageContaine
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Initialize Extensible Match filter" );
+            LOG.debug( I18n.msg( I18n.MSG_05146_INITIALIZE_EXT_FILTER ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitGreaterOrEqualFilter.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitGreaterOrEqualFilter.java
index 4d21eac..1fc7a22 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitGreaterOrEqualFilter.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitGreaterOrEqualFilter.java
@@ -22,6 +22,7 @@ package org.apache.directory.api.ldap.codec.actions.request.search.filter;
 
 import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapCodecConstants;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.SearchRequestDecorator;
@@ -69,7 +70,7 @@ public class InitGreaterOrEqualFilter extends GrammarAction<LdapMessageContainer
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Initialize Greater Or Equal filter" );
+            LOG.debug( I18n.msg( I18n.MSG_05147_INITIALIZE_GEQ_FILTER ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitLessOrEqualFilter.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitLessOrEqualFilter.java
index 9d1ac4f..eed5419 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitLessOrEqualFilter.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitLessOrEqualFilter.java
@@ -22,6 +22,7 @@ package org.apache.directory.api.ldap.codec.actions.request.search.filter;
 
 import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapCodecConstants;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.SearchRequestDecorator;
@@ -69,7 +70,7 @@ public class InitLessOrEqualFilter extends GrammarAction<LdapMessageContainer<Se
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Initialize Less Or Equal filter" );
+            LOG.debug( I18n.msg( I18n.MSG_05148_INITIALIZE_LEQ_FILTER ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitNotFilter.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitNotFilter.java
index 57850d9..e6a6ab1 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitNotFilter.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitNotFilter.java
@@ -60,7 +60,7 @@ public class InitNotFilter extends GrammarAction<LdapMessageContainer<SearchRequ
 
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04009 );
+            String msg = I18n.err( I18n.ERR_05136_EMPTY_NOT_FILTER_PDU );
             LOG.error( msg );
             throw new DecoderException( msg );
         }
@@ -75,7 +75,7 @@ public class InitNotFilter extends GrammarAction<LdapMessageContainer<SearchRequ
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Initialize NOT filter" );
+            LOG.debug( I18n.msg( I18n.MSG_05149_INITIALIZE_NOT_FILTER ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitOrFilter.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitOrFilter.java
index 57383be..0f60d83 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitOrFilter.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitOrFilter.java
@@ -60,7 +60,7 @@ public class InitOrFilter extends GrammarAction<LdapMessageContainer<SearchReque
 
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04010 );
+            String msg = I18n.err( I18n.ERR_05137_EMPTY_OR_FILTER_PDU );
             LOG.error( msg );
             throw new DecoderException( msg );
         }
@@ -75,7 +75,7 @@ public class InitOrFilter extends GrammarAction<LdapMessageContainer<SearchReque
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Initialize OR filter" );
+            LOG.debug( I18n.msg( I18n.MSG_05150_INITIALIZE_OR_FILTER ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitPresentFilter.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitPresentFilter.java
index e483954..b56c295 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitPresentFilter.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitPresentFilter.java
@@ -23,6 +23,7 @@ package org.apache.directory.api.ldap.codec.actions.request.search.filter;
 import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.SearchRequestDecorator;
 import org.apache.directory.api.ldap.codec.search.PresentFilter;
@@ -86,7 +87,7 @@ public class InitPresentFilter extends GrammarAction<LdapMessageContainer<Search
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Initialize Present filter" );
+            LOG.debug( I18n.msg( I18n.MSG_05151_INITIALIZE_PRESENT_FILTER ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitSubstringsFilter.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitSubstringsFilter.java
index df7f8c9..60956d7 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitSubstringsFilter.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/InitSubstringsFilter.java
@@ -64,7 +64,7 @@ public class InitSubstringsFilter extends GrammarAction<LdapMessageContainer<Sea
 
         if ( expectedLength == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04012 );
+            String msg = I18n.err( I18n.ERR_05138_EMPTY_SUBSTRING_FILTER_PDU );
             LOG.error( msg );
             throw new DecoderException( msg );
         }
@@ -77,7 +77,7 @@ public class InitSubstringsFilter extends GrammarAction<LdapMessageContainer<Sea
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Initialize Substrings filter" );
+            LOG.debug( I18n.msg( I18n.MSG_05152_INITIALIZE_SUBSTRING_FILTER ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreAny.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreAny.java
index 8c8c85d..a8d015d 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreAny.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreAny.java
@@ -72,7 +72,7 @@ public class StoreAny extends GrammarAction<LdapMessageContainer<SearchRequestDe
 
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04019 );
+            String msg = I18n.err( I18n.ERR_05139_EMPTY_SUBSTRING_ANY_FILTER_PDU );
             LOG.error( msg );
             throw new DecoderException( msg );
         }
@@ -86,7 +86,7 @@ public class StoreAny extends GrammarAction<LdapMessageContainer<SearchRequestDe
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Stored a any substring : {}", any );
+            LOG.debug( I18n.msg( I18n.MSG_05153_STORED_ANY_SUBSTRING, any ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreFinal.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreFinal.java
index 7fd1984..1186774 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreFinal.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreFinal.java
@@ -72,7 +72,7 @@ public class StoreFinal extends GrammarAction<LdapMessageContainer<SearchRequest
 
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04020 );
+            String msg = I18n.err( I18n.ERR_05140_EMPTY_SUBSTRING_FINAL_FILTER_PDU );
             LOG.error( msg );
             throw new DecoderException( msg );
         }
@@ -86,7 +86,7 @@ public class StoreFinal extends GrammarAction<LdapMessageContainer<SearchRequest
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Stored a any substring : {}", finalValue );
+            LOG.debug( I18n.msg( I18n.MSG_05154_STORED_FINAL_SUBSTRING, finalValue ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreInitial.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreInitial.java
index 3a3edc3..2b52b6f 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreInitial.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreInitial.java
@@ -73,7 +73,7 @@ public class StoreInitial extends GrammarAction<LdapMessageContainer<SearchReque
 
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04108 );
+            String msg = I18n.err( I18n.ERR_05154_EMPTY_SUBSTRING_INITIAL_FILTER_PDU );
             LOG.error( msg );
             throw new DecoderException( msg );
         }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreMatchValue.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreMatchValue.java
index 2ab993d..141eb8a 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreMatchValue.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreMatchValue.java
@@ -20,9 +20,9 @@
 package org.apache.directory.api.ldap.codec.actions.request.search.filter;
 
 
-import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.SearchRequestDecorator;
 import org.apache.directory.api.ldap.codec.search.ExtensibleMatchFilter;
@@ -62,7 +62,7 @@ public class StoreMatchValue extends GrammarAction<LdapMessageContainer<SearchRe
     /**
      * {@inheritDoc}
      */
-    public void action( LdapMessageContainer<SearchRequestDecorator> container ) throws DecoderException
+    public void action( LdapMessageContainer<SearchRequestDecorator> container )
     {
         SearchRequestDecorator decorator = container.getMessage();
 
@@ -79,7 +79,7 @@ public class StoreMatchValue extends GrammarAction<LdapMessageContainer<SearchRe
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Stored a match value : {}", value );
+            LOG.debug( I18n.msg( I18n.MSG_05156_STORED_MATCH_VALUE, value ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreMatchingRuleDnAttributes.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreMatchingRuleDnAttributes.java
index e6204c3..f17be9e 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreMatchingRuleDnAttributes.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreMatchingRuleDnAttributes.java
@@ -93,7 +93,7 @@ public class StoreMatchingRuleDnAttributes extends GrammarAction<LdapMessageCont
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Dn Attributes : {}", Boolean.valueOf( extensibleMatchFilter.isDnAttributes() ) );
+            LOG.debug( I18n.msg( I18n.MSG_05155_DN_ATTRIBUTES, Boolean.valueOf( extensibleMatchFilter.isDnAttributes() ) ) );
         }
 
         // unstack the filters if needed
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreSubstringFilterType.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreSubstringFilterType.java
index 5f98230..35c2fa1 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreSubstringFilterType.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/search/filter/StoreSubstringFilterType.java
@@ -75,7 +75,7 @@ public class StoreSubstringFilterType extends GrammarAction<LdapMessageContainer
 
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04106 );
+            String msg = I18n.err( I18n.ERR_05153_NULL_ATTRIBUTE_DESCRIPTION );
             LOG.error( msg );
             throw new DecoderException( msg );
         }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/unbind/InitUnbindRequest.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/unbind/InitUnbindRequest.java
index 9eec1a5..21bae55 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/unbind/InitUnbindRequest.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/request/unbind/InitUnbindRequest.java
@@ -73,10 +73,10 @@ public class InitUnbindRequest extends GrammarAction<LdapMessageContainer<Unbind
         // The Length should be null
         if ( expectedLength != 0 )
         {
-            LOG.error( I18n.err( I18n.ERR_04071, Integer.valueOf( expectedLength ) ) );
+            LOG.error( I18n.err( I18n.ERR_05130_NON_NULL_UNBIND_LENGTH, Integer.valueOf( expectedLength ) ) );
 
             // This will generate a PROTOCOL_ERROR
-            throw new DecoderException( I18n.err( I18n.ERR_04072 ) );
+            throw new DecoderException( I18n.err( I18n.ERR_05131_UNBIND_REQUEST_LENGTH_MUST_BE_NULL ) );
         }
 
         // We can quit now
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/add/InitAddResponse.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/add/InitAddResponse.java
index 3274538..ec64bc8 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/add/InitAddResponse.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/add/InitAddResponse.java
@@ -71,14 +71,14 @@ public class InitAddResponse extends GrammarAction<LdapMessageContainer<AddRespo
 
         if ( expectedLength == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04088 );
+            String msg = I18n.err( I18n.ERR_05146_NULL_ADD_RESPONSE );
             LOG.error( msg );
             throw new DecoderException( msg );
         }
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Add Response" );
+            LOG.debug( I18n.msg( I18n.MSG_05167_ADD_RESPONSE ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/bind/StoreServerSASLCreds.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/bind/StoreServerSASLCreds.java
index d9d8ace..31c3c45 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/bind/StoreServerSASLCreds.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/bind/StoreServerSASLCreds.java
@@ -23,6 +23,7 @@ package org.apache.directory.api.ldap.codec.actions.response.bind;
 import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.BindResponseDecorator;
 import org.apache.directory.api.ldap.model.message.BindResponse;
@@ -83,7 +84,7 @@ public class StoreServerSASLCreds extends GrammarAction<LdapMessageContainer<Bin
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "The SASL credentials value is : {}", Strings.dumpBytes( serverSaslCreds ) );
+            LOG.debug( I18n.msg( I18n.MSG_05168_SASL_CREDENTIALS_VALUE_STORED ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/compare/InitCompareResponse.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/compare/InitCompareResponse.java
index 48232c5..1757edc 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/compare/InitCompareResponse.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/compare/InitCompareResponse.java
@@ -69,14 +69,14 @@ public class InitCompareResponse extends GrammarAction<LdapMessageContainer<Comp
 
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04094 );
+            String msg = I18n.err( I18n.ERR_05148_NULL_COMPARE_REQUEST );
             LOG.error( msg );
             throw new DecoderException( msg );
         }
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Compare response " );
+            LOG.debug( I18n.msg( I18n.MSG_05169_COMPARE_RESPONSE ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/del/InitDelResponse.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/del/InitDelResponse.java
index bd60f49..41e852d 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/del/InitDelResponse.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/del/InitDelResponse.java
@@ -21,6 +21,7 @@ package org.apache.directory.api.ldap.codec.actions.response.del;
 
 
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.DeleteResponseDecorator;
 import org.apache.directory.api.ldap.model.message.DeleteResponseImpl;
@@ -63,7 +64,7 @@ public class InitDelResponse extends GrammarAction<LdapMessageContainer<DeleteRe
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Del response " );
+            LOG.debug( I18n.msg( I18n.MSG_05170_DEL_RESPONSE ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/extended/InitExtendedResponse.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/extended/InitExtendedResponse.java
index 9445ae2..dbd6417 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/extended/InitExtendedResponse.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/extended/InitExtendedResponse.java
@@ -20,8 +20,8 @@
 package org.apache.directory.api.ldap.codec.actions.response.extended;
 
 
-import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.ExtendedResponseDecorator;
 import org.apache.directory.api.ldap.model.message.ExtendedResponseImpl;
@@ -55,7 +55,7 @@ public class InitExtendedResponse extends GrammarAction<LdapMessageContainer<Ext
     /**
      * {@inheritDoc}
      */
-    public void action( LdapMessageContainer<ExtendedResponseDecorator<?>> container ) throws DecoderException
+    public void action( LdapMessageContainer<ExtendedResponseDecorator<?>> container )
     {
         // Now, we can allocate the ExtendedResponse Object
         ExtendedResponseDecorator<?> extendedResponse = new ExtendedResponseDecorator<>(
@@ -64,7 +64,7 @@ public class InitExtendedResponse extends GrammarAction<LdapMessageContainer<Ext
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Extended Response" );
+            LOG.debug( I18n.msg( I18n.MSG_05171_EXTENDED_RESPONSE ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/extended/StoreExtendedResponseName.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/extended/StoreExtendedResponseName.java
index a16dabf..18f0b85 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/extended/StoreExtendedResponseName.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/extended/StoreExtendedResponseName.java
@@ -75,7 +75,7 @@ public class StoreExtendedResponseName extends GrammarAction<LdapMessageContaine
         // OID
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04017 );
+            String msg = I18n.err( I18n.ERR_05122_NULL_NAME );
             LOG.error( msg );
             throw new DecoderException( msg );
         }
@@ -97,7 +97,7 @@ public class StoreExtendedResponseName extends GrammarAction<LdapMessageContaine
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "OID read : {}", extendedResponse.getResponseName() );
+            LOG.debug( I18n.msg( I18n.MSG_05172_OID_READ, extendedResponse.getResponseName() ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/extended/StoreExtendedResponseValue.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/extended/StoreExtendedResponseValue.java
index 85933d9..2e34a26 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/extended/StoreExtendedResponseValue.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/extended/StoreExtendedResponseValue.java
@@ -23,6 +23,7 @@ package org.apache.directory.api.ldap.codec.actions.response.extended;
 import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.ExtendedResponseDecorator;
 import org.apache.directory.api.util.Strings;
@@ -80,7 +81,7 @@ public class StoreExtendedResponseValue extends GrammarAction<LdapMessageContain
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Extended value : {}", extendedResponse.getResponseValue() );
+            LOG.debug( I18n.msg( I18n.MSG_05173_EXTENDED_VALUE, extendedResponse.getResponseValue() ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/intermediate/InitIntermediateResponse.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/intermediate/InitIntermediateResponse.java
index 62bc9c2..007cb94 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/intermediate/InitIntermediateResponse.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/intermediate/InitIntermediateResponse.java
@@ -20,8 +20,8 @@
 package org.apache.directory.api.ldap.codec.actions.response.intermediate;
 
 
-import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.IntermediateResponseDecorator;
 import org.apache.directory.api.ldap.model.message.IntermediateResponseImpl;
@@ -55,7 +55,7 @@ public class InitIntermediateResponse extends GrammarAction<LdapMessageContainer
     /**
      * {@inheritDoc}
      */
-    public void action( LdapMessageContainer<IntermediateResponseDecorator<?>> container ) throws DecoderException
+    public void action( LdapMessageContainer<IntermediateResponseDecorator<?>> container )
     {
         // Now, we can allocate the IntermediateResponse Object
         IntermediateResponseDecorator intermediateResponse =
@@ -65,7 +65,7 @@ public class InitIntermediateResponse extends GrammarAction<LdapMessageContainer
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Intermediate Response" );
+            LOG.debug( I18n.msg( I18n.MSG_05174_INTERMEDIATE_RESPONSE ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/intermediate/StoreIntermediateResponseName.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/intermediate/StoreIntermediateResponseName.java
index 757040d..45c18eb 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/intermediate/StoreIntermediateResponseName.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/intermediate/StoreIntermediateResponseName.java
@@ -70,7 +70,7 @@ public class StoreIntermediateResponseName extends GrammarAction<LdapMessageCont
         // OID.
         if ( tlv.getLength() == 0 )
         {
-            String msg = I18n.err( I18n.ERR_04095 );
+            String msg = I18n.err( I18n.ERR_05122_NULL_NAME );
             LOG.error( msg );
             // This will generate a PROTOCOL_ERROR
             throw new DecoderException( msg );
@@ -88,10 +88,9 @@ public class StoreIntermediateResponseName extends GrammarAction<LdapMessageCont
             }
             else
             {
-                String msg = "The Intermediate Response name is not a valid OID : "
-                    + Strings.utf8ToString( responseNameBytes ) + " ("
-                    + Strings.dumpBytes( responseNameBytes ) + ") is invalid";
-                LOG.error( "{} : {}", msg, oidStr );
+                String msg = I18n.err( I18n.ERR_05133_INTERMEDIATE_RESPONSE_INVALID_OID, Strings.utf8ToString( responseNameBytes ), 
+                    Strings.dumpBytes( responseNameBytes ) );
+                LOG.error( I18n.err( I18n.ERR_05114_ERROR_MESSAGE, msg, oidStr ) );
 
                 // Rethrow the exception, we will get a PROTOCOL_ERROR
                 throw new DecoderException( msg );
@@ -103,7 +102,7 @@ public class StoreIntermediateResponseName extends GrammarAction<LdapMessageCont
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "OID read : {}", intermediateResponse.getResponseName() );
+            LOG.debug( I18n.msg( I18n.MSG_05172_OID_READ, intermediateResponse.getResponseName() ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/intermediate/StoreIntermediateResponseValue.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/intermediate/StoreIntermediateResponseValue.java
index 109f080..0c2d6cb 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/intermediate/StoreIntermediateResponseValue.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/intermediate/StoreIntermediateResponseValue.java
@@ -20,9 +20,9 @@
 package org.apache.directory.api.ldap.codec.actions.response.intermediate;
 
 
-import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.IntermediateResponseDecorator;
 import org.apache.directory.api.ldap.model.message.IntermediateResponse;
@@ -58,7 +58,7 @@ public class StoreIntermediateResponseValue extends GrammarAction<LdapMessageCon
     /**
      * {@inheritDoc}
      */
-    public void action( LdapMessageContainer<IntermediateResponseDecorator<?>> container ) throws DecoderException
+    public void action( LdapMessageContainer<IntermediateResponseDecorator<?>> container )
     {
         // We can get the IntermediateResponse Object
         IntermediateResponse intermediateResponse = container.getMessage();
@@ -82,7 +82,7 @@ public class StoreIntermediateResponseValue extends GrammarAction<LdapMessageCon
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Value read : {}", Strings.dumpBytes( intermediateResponse.getResponseValue() ) );
+            LOG.debug( I18n.msg( I18n.MSG_05175_VALUE_READ, Strings.dumpBytes( intermediateResponse.getResponseValue() ) ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/modify/InitModifyResponse.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/modify/InitModifyResponse.java
index 772e896..36be6ce 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/modify/InitModifyResponse.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/modify/InitModifyResponse.java
@@ -21,6 +21,7 @@ package org.apache.directory.api.ldap.codec.actions.response.modify;
 
 
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.ModifyResponseDecorator;
 import org.apache.directory.api.ldap.model.message.ModifyResponseImpl;
@@ -63,7 +64,7 @@ public class InitModifyResponse extends GrammarAction<LdapMessageContainer<Modif
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Modify response" );
+            LOG.debug( I18n.msg( I18n.MSG_05176_MODIFY_RESPONSE ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/modifydn/InitModifyDnResponse.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/modifydn/InitModifyDnResponse.java
index 685a4b7..aa2bea1 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/modifydn/InitModifyDnResponse.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/modifydn/InitModifyDnResponse.java
@@ -21,6 +21,7 @@ package org.apache.directory.api.ldap.codec.actions.response.modifydn;
 
 
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.ModifyDnResponseDecorator;
 import org.apache.directory.api.ldap.model.message.ModifyDnResponseImpl;
@@ -62,7 +63,7 @@ public class InitModifyDnResponse extends GrammarAction<LdapMessageContainer<Mod
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Modify Dn response " );
+            LOG.debug( I18n.msg( I18n.MSG_05177_MODIFY_DN_RESPONSE ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/done/InitSearchResultDone.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/done/InitSearchResultDone.java
index 0fe8ad7..7d9242b 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/done/InitSearchResultDone.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/done/InitSearchResultDone.java
@@ -21,6 +21,7 @@ package org.apache.directory.api.ldap.codec.actions.response.search.done;
 
 
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.SearchResultDoneDecorator;
 import org.apache.directory.api.ldap.model.message.SearchResultDoneImpl;
@@ -63,7 +64,7 @@ public class InitSearchResultDone extends GrammarAction<LdapMessageContainer<Sea
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Search Result Done found" );
+            LOG.debug( I18n.msg( I18n.MSG_05178_SEARCH_RESULT_DONE ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/entry/AddAttributeType.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/entry/AddAttributeType.java
index 68e67e4..7189526 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/entry/AddAttributeType.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/entry/AddAttributeType.java
@@ -72,7 +72,7 @@ public class AddAttributeType extends GrammarAction<LdapMessageContainer<SearchR
         if ( tlv.getLength() == 0 )
         {
             // The type can't be null
-            String msg = I18n.err( I18n.ERR_04081 );
+            String msg = I18n.err( I18n.ERR_05147_NULL_ATTRIBUTE_TYPE );
             LOG.error( msg );
             throw new DecoderException( msg );
         }
@@ -86,8 +86,8 @@ public class AddAttributeType extends GrammarAction<LdapMessageContainer<SearchR
             {
                 String type = Strings.utf8ToString( tlv.getValue().getData() );
                 // This is for the client side. We will never decode LdapResult on the server
-                String msg = "The Attribute type " + type + "is invalid : " + ine.getMessage();
-                LOG.error( "{} : {}", msg, ine.getMessage() );
+                String msg = I18n.err( I18n.ERR_05156_INVALID_ATTRIBUTE_TYPE, type, ine.getMessage() );
+                LOG.error( I18n.err( I18n.ERR_05114_ERROR_MESSAGE, msg, ine.getMessage() ) );
                 throw new DecoderException( msg, ine );
             }
         }
@@ -95,7 +95,7 @@ public class AddAttributeType extends GrammarAction<LdapMessageContainer<SearchR
         if ( LOG.isDebugEnabled() )
         {
             String type = Strings.utf8ToString( tlv.getValue().getData() );
-            LOG.debug( "Attribute type : {}", type );
+            LOG.debug( I18n.msg( I18n.MSG_05179_ATTRIBUTE_TYPE, type ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/entry/StoreSearchResultAttributeValue.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/entry/StoreSearchResultAttributeValue.java
index 0c3a024..f3ff2b5 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/entry/StoreSearchResultAttributeValue.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/entry/StoreSearchResultAttributeValue.java
@@ -22,6 +22,7 @@ package org.apache.directory.api.ldap.codec.actions.response.search.entry;
 
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.SearchResultEntryDecorator;
 import org.apache.directory.api.ldap.model.exception.LdapException;
@@ -75,7 +76,7 @@ public class StoreSearchResultAttributeValue extends GrammarAction<LdapMessageCo
 
                 if ( LOG.isDebugEnabled() )
                 {
-                    LOG.debug( "The attribute value is null" );
+                    LOG.debug( I18n.msg( I18n.MSG_05180_NULL_ATTRIBUTE_VALUE ) );
                 }
             }
             else
@@ -86,7 +87,7 @@ public class StoreSearchResultAttributeValue extends GrammarAction<LdapMessageCo
 
                     if ( LOG.isDebugEnabled() )
                     {
-                        LOG.debug( "Attribute value {}", Strings.dumpBytes( ( byte[] ) value ) );
+                        LOG.debug( I18n.msg( I18n.MSG_05181_ATTRIBUTE_VALUE, Strings.dumpBytes( ( byte[] ) value ) ) );
                     }
                 }
                 else
@@ -95,7 +96,7 @@ public class StoreSearchResultAttributeValue extends GrammarAction<LdapMessageCo
 
                     if ( LOG.isDebugEnabled() )
                     {
-                        LOG.debug( "Attribute value {}", value );
+                        LOG.debug( I18n.msg( I18n.MSG_05181_ATTRIBUTE_VALUE, value ) );
                     }
                 }
 
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/entry/StoreSearchResultEntryObjectName.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/entry/StoreSearchResultEntryObjectName.java
index 1d8f9e0..37dc54e 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/entry/StoreSearchResultEntryObjectName.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/entry/StoreSearchResultEntryObjectName.java
@@ -23,6 +23,7 @@ package org.apache.directory.api.ldap.codec.actions.response.search.entry;
 import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.api.asn1.ber.tlv.TLV;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.SearchResultEntryDecorator;
 import org.apache.directory.api.ldap.model.exception.LdapInvalidDnException;
@@ -85,9 +86,8 @@ public class StoreSearchResultEntryObjectName extends GrammarAction<LdapMessageC
             catch ( LdapInvalidDnException ine )
             {
                 // This is for the client side. We will never decode LdapResult on the server
-                String msg = "The Dn " + Strings.dumpBytes( dnBytes ) + "is invalid : "
-                    + ine.getMessage();
-                LOG.error( "{} : {}", msg, ine.getMessage() );
+                String msg = I18n.err( I18n.ERR_05157_INVALID_DN, Strings.dumpBytes( dnBytes ), ine.getMessage() );
+                LOG.error( I18n.err( I18n.ERR_05114_ERROR_MESSAGE, msg, ine.getMessage() ) );
                 throw new DecoderException( msg, ine );
             }
 
@@ -96,7 +96,7 @@ public class StoreSearchResultEntryObjectName extends GrammarAction<LdapMessageC
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Search Result Entry Dn found : {}", searchResultEntry.getObjectName() );
+            LOG.debug( I18n.msg( I18n.MSG_05182_SEARCH_RESULT_ENTRY_DN, searchResultEntry.getObjectName() ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/reference/InitSearchResultReference.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/reference/InitSearchResultReference.java
index 85238a4..f61bc78 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/reference/InitSearchResultReference.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/reference/InitSearchResultReference.java
@@ -22,6 +22,7 @@ package org.apache.directory.api.ldap.codec.actions.response.search.reference;
 
 import org.apache.directory.api.asn1.DecoderException;
 import org.apache.directory.api.asn1.ber.grammar.GrammarAction;
+import org.apache.directory.api.i18n.I18n;
 import org.apache.directory.api.ldap.codec.api.LdapMessageContainer;
 import org.apache.directory.api.ldap.codec.decorators.SearchResultReferenceDecorator;
 import org.apache.directory.api.ldap.model.message.SearchResultReferenceImpl;
@@ -64,7 +65,7 @@ public class InitSearchResultReference extends GrammarAction<LdapMessageContaine
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "SearchResultReference response " );
+            LOG.debug( I18n.msg( I18n.MSG_05183_SEARCH_RESULT_REFERENCE_RESPONSE ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/reference/StoreReference.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/reference/StoreReference.java
index 7e2453b..42f4b9c 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/reference/StoreReference.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/actions/response/search/reference/StoreReference.java
@@ -95,14 +95,14 @@ public class StoreReference extends GrammarAction<LdapMessageContainer<SearchRes
             }
             catch ( LdapURLEncodingException luee )
             {
-                LOG.error( I18n.err( I18n.ERR_04021, urlStr, luee.getMessage() ) );
-                throw new DecoderException( I18n.err( I18n.ERR_04016, luee.getMessage() ), luee );
+                LOG.error( I18n.err( I18n.ERR_05103_INVALID_URL, urlStr, luee.getMessage() ) );
+                throw new DecoderException( I18n.err( I18n.ERR_05104_INVALID_URL, luee.getMessage() ), luee );
             }
         }
 
         if ( LOG.isDebugEnabled() )
         {
-            LOG.debug( "Search reference URL found : {}", url );
+            LOG.debug( I18n.msg( I18n.MSG_05184_SEARCH_REFERENCE_URL, url ) );
         }
 
         // We can have an END transition
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/api/LdapApiServiceFactory.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/api/LdapApiServiceFactory.java
index 6de8065..5d24d5b 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/api/LdapApiServiceFactory.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/api/LdapApiServiceFactory.java
@@ -20,6 +20,7 @@
 package org.apache.directory.api.ldap.codec.api;
 
 
+import org.apache.directory.api.i18n.I18n;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -74,7 +75,7 @@ public final class LdapApiServiceFactory
     {
         if ( !isInitialized() )
         {
-            String msg = "Not initialized yet!";
+            String msg = I18n.err( I18n.ERR_05200_NOT_INITIALIZED_YET );
             LOG.error( msg );
             throw new IllegalStateException( msg );
         }
@@ -114,10 +115,9 @@ public final class LdapApiServiceFactory
 
         if ( LdapApiServiceFactory.ldapCodecService != null )
         {
-            StringBuilder sb = new StringBuilder( "The LdapCodecService is already set to an instance of " );
-            sb.append( LdapApiServiceFactory.class.getName() );
-            LOG.error( sb.toString() );
-            throw new IllegalStateException( sb.toString() );
+            String msg = I18n.err( I18n.ERR_05201_INSTANCE_ALREADY_SET, LdapApiServiceFactory.class.getName() );
+            LOG.error( msg );
+            throw new IllegalStateException( msg );
         }
 
         /*
@@ -136,7 +136,7 @@ public final class LdapApiServiceFactory
             }
             catch ( Exception e )
             {
-                LOG.error( "Failed to instantiate a viable instance, instantiating new instance of ", e );
+                LOG.error( I18n.err( I18n.ERR_05202_FAILED_TO_INSTANCIATE, e.getMessage() ) );
             }
         }
         else
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/api/LdapDecoder.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/api/LdapDecoder.java
index e6b70a8..a4194d3 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/api/LdapDecoder.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/api/LdapDecoder.java
@@ -92,7 +92,7 @@ public class LdapDecoder
         }
         catch ( Exception e )
         {
-            String message = I18n.err( I18n.ERR_04060, e.getLocalizedMessage() );
+            String message = I18n.err( I18n.ERR_05204_LDAP_DECODER_FAILURE, e.getLocalizedMessage() );
             LOG.error( message );
             throw new DecoderException( message, e );
         }
@@ -101,15 +101,15 @@ public class LdapDecoder
         {
             if ( LOG.isDebugEnabled() )
             {
-                LOG.debug( "Decoded LdapMessage : " + container );
+                LOG.debug( I18n.msg( I18n.MSG_5200_DECODED_LDAP_MESSAGE, container ) );
             }
 
             return container.getMessage();
         }
         else
         {
-            LOG.error( I18n.err( I18n.ERR_04062 ) );
-            throw new DecoderException( I18n.err( I18n.ERR_04063 ) );
+            LOG.error( I18n.err( I18n.ERR_05205_PDU_DOES_NOT_CONTAIN_ENOUGH_DATA ) );
+            throw new DecoderException( I18n.err( I18n.ERR_05206_INPUT_STREAM_TOO_SHORT_PDU ) );
         }
     }
 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/api/LdapEncoder.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/api/LdapEncoder.java
index cea5292..620c560 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/api/LdapEncoder.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/api/LdapEncoder.java
@@ -57,7 +57,7 @@ public class LdapEncoder
     {
         if ( codec == null )
         {
-            throw new NullPointerException( "codec argument cannot be null" );
+            throw new NullPointerException( I18n.err( I18n.ERR_05203_CODEC_ARGS_CANNOT_BE_NULL ) );
         }
 
         this.codec = codec;
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/controls/search/entryChange/EntryChangeGrammar.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/controls/search/entryChange/EntryChangeGrammar.java
index fb3920f..2bc53aa 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/controls/search/entryChange/EntryChangeGrammar.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/controls/search/entryChange/EntryChangeGrammar.java
@@ -117,7 +117,7 @@ public final class EntryChangeGrammar extends AbstractGrammar<EntryChangeContain
                                     break;
 
                                 default:
-                                    String msg = I18n.err( I18n.ERR_04044 );
+                                    String msg = I18n.err( I18n.ERR_05300_CANT_DECODE_CHANGE_TYPE );
                                     LOG.error( msg );
                                     throw new DecoderException( msg );
                             }
@@ -127,7 +127,7 @@ public final class EntryChangeGrammar extends AbstractGrammar<EntryChangeContain
                         }
                         catch ( IntegerDecoderException ide )
                         {
-                            String msg = I18n.err( I18n.ERR_04044 );
+                            String msg = I18n.err( I18n.ERR_05300_CANT_DECODE_CHANGE_TYPE );
                             LOG.error( msg, ide );
                             throw new DecoderException( msg, ide );
                         }
@@ -160,8 +160,8 @@ public final class EntryChangeGrammar extends AbstractGrammar<EntryChangeContain
 
                         if ( changeType != ChangeType.MODDN )
                         {
-                            LOG.error( I18n.err( I18n.ERR_04045 ) );
-                            throw new DecoderException( I18n.err( I18n.ERR_04046 ) );
+                            LOG.error( I18n.err( I18n.ERR_05301_INVALID_PREVIOUS_DN ) );
+                            throw new DecoderException( I18n.err( I18n.ERR_05302_PREVIOUS_DN_NOT_ALLOWED ) );
                         }
                         else
                         {
@@ -174,8 +174,8 @@ public final class EntryChangeGrammar extends AbstractGrammar<EntryChangeContain
                             }
                             catch ( LdapInvalidDnException ine )
                             {
-                                LOG.error( I18n.err( I18n.ERR_04047, Strings.dumpBytes( value.getData() ) ) );
-                                throw new DecoderException( I18n.err( I18n.ERR_04048 ), ine );
+                                LOG.error( I18n.err( I18n.ERR_05303_BAD_PREVIOUS_DN, Strings.dumpBytes( value.getData() ) ) );
+                                throw new DecoderException( I18n.err( I18n.ERR_05304_FAILED_TO_DECODE_PREVIOUS_DN ), ine );
                             }
 
                             if ( LOG.isDebugEnabled() )
@@ -215,7 +215,7 @@ public final class EntryChangeGrammar extends AbstractGrammar<EntryChangeContain
                 }
                 catch ( LongDecoderException lde )
                 {
-                    String msg = I18n.err( I18n.ERR_04049 );
+                    String msg = I18n.err( I18n.ERR_05305_CHANGE_NUMBER_DECODING_ERROR );
                     LOG.error( msg, lde );
                     throw new DecoderException( msg, lde );
                 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/controls/search/pagedSearch/PagedResultsGrammar.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/controls/search/pagedSearch/PagedResultsGrammar.java
index df290b6..13aa5d0 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/controls/search/pagedSearch/PagedResultsGrammar.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/controls/search/pagedSearch/PagedResultsGrammar.java
@@ -120,7 +120,7 @@ public final class PagedResultsGrammar extends AbstractGrammar<PagedResultsConta
                         }
                         catch ( IntegerDecoderException ide )
                         {
-                            String msg = I18n.err( I18n.ERR_04050 );
+                            String msg = I18n.err( I18n.ERR_05306_PAGED_SEARCH_SIZE_DECODING_ERROR );
                             LOG.error( msg, ide );
                             throw new DecoderException( msg, ide );
                         }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/controls/search/persistentSearch/PersistentSearchGrammar.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/controls/search/persistentSearch/PersistentSearchGrammar.java
index 608e308..347d2f3 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/controls/search/persistentSearch/PersistentSearchGrammar.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/controls/search/persistentSearch/PersistentSearchGrammar.java
@@ -123,7 +123,7 @@ public final class PersistentSearchGrammar extends AbstractGrammar<PersistentSea
                         }
                         catch ( IntegerDecoderException ide )
                         {
-                            String msg = I18n.err( I18n.ERR_04051 );
+                            String msg = I18n.err( I18n.ERR_05307_CHANGE_TYPES_DECODING_ERROR );
                             LOG.error( msg, ide );
                             throw new DecoderException( msg, ide );
                         }
@@ -161,7 +161,7 @@ public final class PersistentSearchGrammar extends AbstractGrammar<PersistentSea
                         }
                         catch ( BooleanDecoderException bde )
                         {
-                            String msg = I18n.err( I18n.ERR_04052 );
+                            String msg = I18n.err( I18n.ERR_05308_CHANGE_ONLY_DECODING_ERROR );
                             LOG.error( msg, bde );
                             throw new DecoderException( msg, bde );
                         }
@@ -202,7 +202,7 @@ public final class PersistentSearchGrammar extends AbstractGrammar<PersistentSea
                         }
                         catch ( BooleanDecoderException bde )
                         {
-                            String msg = I18n.err( I18n.ERR_04053 );
+                            String msg = I18n.err( I18n.ERR_05309_RETURN_ECS_DECODING_ERROR );
                             LOG.error( msg, bde );
                             throw new DecoderException( msg, bde );
                         }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/controls/search/subentries/SubentriesGrammar.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/controls/search/subentries/SubentriesGrammar.java
index 5e0ab6f..d149f25 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/controls/search/subentries/SubentriesGrammar.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/controls/search/subentries/SubentriesGrammar.java
@@ -88,7 +88,7 @@ public final class SubentriesGrammar extends AbstractGrammar<SubentriesContainer
                         }
                         catch ( BooleanDecoderException bde )
                         {
-                            LOG.error( I18n.err( I18n.ERR_04054, Strings.dumpBytes( value.getData() ), bde.getMessage() ) );
+                            LOG.error( I18n.err( I18n.ERR_05310_INVALID_VISIBILITY_FLAG, Strings.dumpBytes( value.getData() ), bde.getMessage() ) );
 
                             // This will generate a PROTOCOL_ERROR
                             throw new DecoderException( bde.getMessage() );
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/controls/sort/SortRequestGrammar.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/controls/sort/SortRequestGrammar.java
index 104d70b..a3abdea 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/controls/sort/SortRequestGrammar.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/controls/sort/SortRequestGrammar.java
@@ -103,8 +103,6 @@ public final class SortRequestGrammar extends AbstractGrammar<SortRequestContain
                 }
                 catch ( BooleanDecoderException bde )
                 {
-                    //String msg = I18n.err( I18n.ERR_04050 );
-                    //LOG.error( msg, e );
                     throw new DecoderException( bde.getMessage(), bde );
                 }
             }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/decorators/ExtendedRequestDecorator.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/decorators/ExtendedRequestDecorator.java
index d46e957..e02bc28 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/decorators/ExtendedRequestDecorator.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/decorators/ExtendedRequestDecorator.java
@@ -215,7 +215,7 @@ public ExtendedRequest addControl( Control control )
             // The requestName, if any
             if ( requestNameBytes == null )
             {
-                throw new EncoderException( I18n.err( I18n.ERR_04043 ) );
+                throw new EncoderException( I18n.err( I18n.ERR_05000_NULL_REQUEST_NAME ) );
             }
 
             buffer.put( ( byte ) LdapCodecConstants.EXTENDED_REQUEST_NAME_TAG );
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/osgi/DefaultLdapCodecService.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/osgi/DefaultLdapCodecService.java
index efa7088..91e2bc0 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/osgi/DefaultLdapCodecService.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/osgi/DefaultLdapCodecService.java
@@ -322,7 +322,7 @@ public class DefaultLdapCodecService implements LdapApiService
     {
         if ( control == null )
         {
-            throw new NullPointerException( "Control argument was null." );
+            throw new NullPointerException( I18n.err( I18n.ERR_05400_CONTROL_ARGUMENT_WAS_NULL ) );
         }
 
         // protect agains being multiply decorated
@@ -423,7 +423,7 @@ public class DefaultLdapCodecService implements LdapApiService
     @Override
     public javax.naming.ldap.ExtendedResponse toJndi( final ExtendedResponse modelResponse ) throws EncoderException
     {
-        throw new NotImplementedException( "Figure out how to transform" );
+        throw new NotImplementedException( I18n.err( I18n.ERR_05401_FIGURE_OUT_HOW_TO_TRANSFORM ) );
     }
 
 
@@ -433,7 +433,7 @@ public class DefaultLdapCodecService implements LdapApiService
     @Override
     public ExtendedResponse fromJndi( javax.naming.ldap.ExtendedResponse jndiResponse ) throws DecoderException
     {
-        throw new NotImplementedException( "Figure out how to transform" );
+        throw new NotImplementedException( I18n.err( I18n.ERR_05401_FIGURE_OUT_HOW_TO_TRANSFORM ) );
     }
 
 
@@ -522,8 +522,8 @@ public class DefaultLdapCodecService implements LdapApiService
                 }
                 catch ( DecoderException de )
                 {
-                    NamingException ne = new NamingException( "Unable to decode encoded response value: "
-                        + Strings.dumpBytes( berValue ) );
+                    NamingException ne = new NamingException( I18n.err( I18n.ERR_05402_UNABLE_TO_ENCODE_RESPONSE_VALUE,
+                        Strings.dumpBytes( berValue ) ) );
                     ne.setRootCause( de );
                     throw ne;
                 }
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/search/ExtensibleMatchFilter.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/search/ExtensibleMatchFilter.java
index 581f503..ab2fa44 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/search/ExtensibleMatchFilter.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/search/ExtensibleMatchFilter.java
@@ -276,7 +276,7 @@ public class ExtensibleMatchFilter extends Filter
 
             if ( ( matchingRule == null ) && ( type == null ) )
             {
-                throw new EncoderException( I18n.err( I18n.ERR_04056 ) );
+                throw new EncoderException( I18n.err( I18n.ERR_05500_NULL_MATCHING_RULE_AND_TYPE ) );
             }
 
             // The matching rule
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/search/NotFilter.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/search/NotFilter.java
index 2854f15..186ac6f 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/search/NotFilter.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/search/NotFilter.java
@@ -68,7 +68,7 @@ public class NotFilter extends ConnectorFilter
     {
         if ( filterSet != null )
         {
-            throw new DecoderException( I18n.err( I18n.ERR_04057 ) );
+            throw new DecoderException( I18n.err( I18n.ERR_05501_MORE_THAN_ONE_FILTER_FOR_NOT_FILTER ) );
         }
 
         super.addFilter( filter );
@@ -96,7 +96,7 @@ public class NotFilter extends ConnectorFilter
     {
         if ( filterSet != null )
         {
-            throw new DecoderException( I18n.err( I18n.ERR_04057 ) );
+            throw new DecoderException( I18n.err( I18n.ERR_05501_MORE_THAN_ONE_FILTER_FOR_NOT_FILTER ) );
         }
 
         super.addFilter( notFilter );
diff --git a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/search/SubstringFilter.java b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/search/SubstringFilter.java
index a5c193e..2ed1531 100644
--- a/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/search/SubstringFilter.java
+++ b/ldap/codec/core/src/main/java/org/apache/directory/api/ldap/codec/search/SubstringFilter.java
@@ -311,7 +311,7 @@ public class SubstringFilter extends Filter
             if ( ( initialSubstrings == null ) && ( ( anySubstrings == null ) || anySubstrings.isEmpty() )
                 && ( finalSubstrings == null ) )
             {
-                throw new EncoderException( I18n.err( I18n.ERR_04058 ) );
+                throw new EncoderException( I18n.err( I18n.ERR_05502_NULL_INITIAL_ANY_OR_FINAL_SUBSTRING ) );
             }
 
             // The initial substring

-- 
To stop receiving notification emails like this one, please contact
elecharny@apache.org.