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

Ludovic Poitou
24.14.2011 902d677f1d79cfa169f0c021f294543eb26bb327
Fix for OPENDJ-58 : cn=schema attribute store twice in 99-user.ldif schema file.
Prevent replication from adding cn and other schema attributes to the extra-attribute that are added to the schema entry written to the LDIF file.
Fix also some messages (and translations)
6 files modified
78 ■■■■ changed files
opends/src/messages/messages/backend.properties 6 ●●●●● patch | view | raw | blame | history
opends/src/messages/messages/backend_de.properties 10 ●●●●● patch | view | raw | blame | history
opends/src/messages/messages/backend_es.properties 10 ●●●●● patch | view | raw | blame | history
opends/src/messages/messages/backend_fr.properties 24 ●●●●● patch | view | raw | blame | history
opends/src/server/org/opends/server/backends/SchemaBackend.java 25 ●●●● patch | view | raw | blame | history
opends/src/server/org/opends/server/core/SchemaConfigManager.java 3 ●●●● patch | view | raw | blame | history
opends/src/messages/messages/backend.properties
@@ -21,7 +21,7 @@
# CDDL HEADER END
#
#      Copyright 2006-2010 Sun Microsystems, Inc.
#      Portions Copyright 2011 ForgeRock AS
#
@@ -617,7 +617,7 @@
 support the %s modification type
MILD_ERR_SCHEMA_MODIFY_UNSUPPORTED_ATTRIBUTE_TYPE_213=The schema backend does \
 not support the modification of the %s attribute type.  Only attribute types, \
 object classes, name forms, DIT content rules, DIT structure rules, and \
 object classes, ldap syntaxes, name forms, DIT content rules, DIT structure rules, and \
 matching rule uses may be modified
MILD_ERR_SCHEMA_MODIFY_CANNOT_DECODE_ATTRTYPE_214=An error occurred while \
 attempting to decode the attribute type "%s":  %s
@@ -1164,3 +1164,5 @@
 recurring task schedule value has an invalid month of the year token
SEVERE_ERR_RECURRINGTASK_INVALID_WEEKDAY_TOKEN_SIMPLE_424=The provided \
 recurring task schedule value has an invalid day of the week token
MILD_ERR_SCHEMA_INVALID_REPLACE_MODIFICATION_425=The schema backend does \
 not support the Replace modification type for the %s attribute type
opends/src/messages/messages/backend_de.properties
@@ -21,6 +21,7 @@
# CDDL HEADER END
#
#      Copyright 2006-2009 Sun Microsystems, Inc.
#      Portions Copyright 2011 ForgeRock AS
@@ -257,7 +258,7 @@
FATAL_ERR_BACKEND_CANNOT_REGISTER_BASEDN_210=Fehler beim Versuch, Basis-DN %s im Directory-Server zu registrieren:  %s
MILD_ERR_SCHEMA_DELETE_MODTYPE_NOT_SUPPORTED_211=Das Schema-Backend unterst\u00fctzt noch nicht das Entfernen von bestehenden Schemaelementen
MILD_ERR_SCHEMA_INVALID_MODIFICATION_TYPE_212=Das Schema-Backend unterst\u00fctzt nicht den Bearbeitungstyp %s
MILD_ERR_SCHEMA_MODIFY_UNSUPPORTED_ATTRIBUTE_TYPE_213=Das Schema-Backend unterst\u00fctzt nicht die Bearbeitung des Attributtyps %s.  Es k\u00f6nnen nur Attributtypen, Objektklassen, Namensformen, DIT-Inhaltsregeln, DIT-Strukturregeln und die Verwendung von \u00dcbereinstimmungsregeln bearbeitet werden
MILD_ERR_SCHEMA_MODIFY_UNSUPPORTED_ATTRIBUTE_TYPE_213=Das Schema-Backend unterst\u00fctzt nicht die Bearbeitung des Attributtyps %s.  Es k\u00f6nnen nur Attributtypen, Objektklassen, ldap-Syntaxbeschreibungen, Namensformen, DIT-Inhaltsregeln, DIT-Strukturregeln und die Verwendung von \u00dcbereinstimmungsregeln bearbeitet werden
MILD_ERR_SCHEMA_MODIFY_CANNOT_DECODE_ATTRTYPE_214=Fehler beim Versuch, den Attributtyp "%s" zu dekodieren: %s
MILD_ERR_SCHEMA_MODIFY_ATTRTYPE_ALREADY_EXISTS_215=Attributtyp %s kann nicht zum Serverschema hinzugef\u00fcgt werden, da es Namens- oder OID-Konflikte mit einem bestehenden Attributtyp gibt: %s
MILD_ERR_SCHEMA_MODIFY_CANNOT_DECODE_OBJECTCLASS_216=Fehler beim Versuch, die Objektklasse "%s" zu dekodieren: %s
@@ -463,3 +464,10 @@
MILD_ERR_SCHEMA_MODIFY_REMOVE_NO_SUCH_LSD_416=Ldap-Syntaxbeschreibung %s kann nicht aus dem Serverschema entfernt werden, da eine solche ldap-Syntaxbeschreibung nicht definiert ist
MILD_ERR_ATTR_SYNTAX_INVALID_LDAP_SYNTAX_417=Der angegebene Wert "%s" konnte nicht als ldap-Syntax analysiert werden, da seine OID %s einer bereits implementierten Attributsyntax entspricht
MILD_ERR_SCHEMA_MODIFY_CANNOT_DECODE_LDAP_SYNTAX_418=Beim Versuch, die ldap-Syntaxbeschreibung "%s" zu decodieren, ist ein Fehler aufgetreten:  %s
SEVERE_ERR_RECURRINGTASK_INVALID_N_TOKENS_SIMPLE_419=Die angegebene der wiederkehrende Aufgabenzeitplan Wert besitzt eine ung\u00fcltige Token-Anzahl
SEVERE_ERR_RECURRINGTASK_INVALID_MINUTE_TOKEN_SIMPLE_420=Die angegebene der wiederkehrende Aufgabenzeitplan Wert besitzt einen ung\u00fcltigen Minuten-Token
SEVERE_ERR_RECURRINGTASK_INVALID_HOUR_TOKEN_SIMPLE_421=Die angegebene der wiederkehrende Aufgabenzeitplan Wert besitzt einen ung\u00fcltigen Stunden-Token
SEVERE_ERR_RECURRINGTASK_INVALID_DAY_TOKEN_SIMPLE_422=Die angegebene der wiederkehrende Aufgabenzeitplan Wert besitzt einen ung\u00fcltigen Monatstag-Token
SEVERE_ERR_RECURRINGTASK_INVALID_MONTH_TOKEN_SIMPLE_423=Die angegebene der wiederkehrende Aufgabenzeitplan Wert besitzt einen ung\u00fcltigen Jahresmonat-Token
SEVERE_ERR_RECURRINGTASK_INVALID_WEEKDAY_TOKEN_SIMPLE_424=Die angegebene der wiederkehrende Aufgabenzeitplan Wert besitzt einen ung\u00fcltigen Wochentag-Token
MILD_ERR_SCHEMA_INVALID_REPLACE_MODIFICATION_425=Das Schema-Backend unterst\u00fctzt nicht den Bearbeitungstyp Replace des Attributtyps %s
opends/src/messages/messages/backend_es.properties
@@ -21,6 +21,7 @@
# CDDL HEADER END
#
#      Copyright 2006-2009 Sun Microsystems, Inc.
#      Portions Copyright 2011 ForgeRock AS
@@ -257,7 +258,7 @@
FATAL_ERR_BACKEND_CANNOT_REGISTER_BASEDN_210=Se ha producido un error al tratar de registrar el ND de base %s en el Servidor de directorios:  %s
MILD_ERR_SCHEMA_DELETE_MODTYPE_NOT_SUPPORTED_211=El servidor de fondo del esquema no admite actualmente la eliminaci\u00f3n de elementos de esquema existentes
MILD_ERR_SCHEMA_INVALID_MODIFICATION_TYPE_212=El servidor de fondo del esquema no admite el tipo de modificaci\u00f3n %s
MILD_ERR_SCHEMA_MODIFY_UNSUPPORTED_ATTRIBUTE_TYPE_213=El servidor de fondo del esquema no admite la modificaci\u00f3n del tipo de atributo %s.  S\u00f3lo se pueden modificar los tipos de atributos, las clases de objetos, los formatos de nombre, las reglas de contenido de DIT, las reglas de estructura de DIT y el uso de las reglas de coincidencia
MILD_ERR_SCHEMA_MODIFY_UNSUPPORTED_ATTRIBUTE_TYPE_213=El servidor de fondo del esquema no admite la modificaci\u00f3n del tipo de atributo %s.  S\u00f3lo se pueden modificar los tipos de atributos, las clases de objetos, las descripci\u00f3nes de sintaxis LDAP, los formatos de nombre, las reglas de contenido de DIT, las reglas de estructura de DIT y el uso de las reglas de coincidencia
MILD_ERR_SCHEMA_MODIFY_CANNOT_DECODE_ATTRTYPE_214=Se ha producido un error al intentar descodificar el tipo de atributo "%s":  %s
MILD_ERR_SCHEMA_MODIFY_ATTRTYPE_ALREADY_EXISTS_215=No se puede agregar el tipo de atributo %s al esquema del servidor porque hay un tipo de atributo existente con un nombre u OID conflictivo:  %s
MILD_ERR_SCHEMA_MODIFY_CANNOT_DECODE_OBJECTCLASS_216=Se ha producido un error al intentar descodificar el clase de objeto "%s":  %s
@@ -463,3 +464,10 @@
MILD_ERR_SCHEMA_MODIFY_REMOVE_NO_SUCH_LSD_416=No se puede suprimir la descripci\u00f3n de sintaxis LDAP %s del esquema de servidor porque no se ha definido dicha descripci\u00f3n de sintaxis LDAP
MILD_ERR_ATTR_SYNTAX_INVALID_LDAP_SYNTAX_417=No se pudo analizar el valor proporcionado "%s" como sintaxis LDAP porque su OID %s corresponde a una sintaxis de atributo que ya se ha implementado
MILD_ERR_SCHEMA_MODIFY_CANNOT_DECODE_LDAP_SYNTAX_418=Se ha producido un error al intentar descodificar la descripci\u00f3n de sintaxis LDAP "%s":  %s
SEVERE_ERR_RECURRINGTASK_INVALID_N_TOKENS_SIMPLE_419=El valor de  programaci\u00f3n de la tarea peri\u00f3dica proporcionado tiene un n\u00famero no v\u00e1lido de tokens
SEVERE_ERR_RECURRINGTASK_INVALID_MINUTE_TOKEN_SIMPLE_420=El valor de programaci\u00f3n de la tarea peri\u00f3dica proporcionado tiene un token de minuto no v\u00e1lido
SEVERE_ERR_RECURRINGTASK_INVALID_HOUR_TOKEN_SIMPLE_421=El valor de programaci\u00f3n de la tarea peri\u00f3dica proporcionado tiene un token de hora no v\u00e1lido
SEVERE_ERR_RECURRINGTASK_INVALID_DAY_TOKEN_SIMPLE_422=El valor de programaci\u00f3n de la tarea peri\u00f3dica proporcionado tiene un token de d\u00eda del mes no v\u00e1lido
SEVERE_ERR_RECURRINGTASK_INVALID_MONTH_TOKEN_SIMPLE_423=El valor de programaci\u00f3n de la tarea peri\u00f3dica proporcionado tiene un token de mes del a\u00f1o no v\u00e1lido
SEVERE_ERR_RECURRINGTASK_INVALID_WEEKDAY_TOKEN_SIMPLE_424=El valor de programaci\u00f3n de la tarea peri\u00f3dica proporcionado tiene un token de d\u00eda de la semana no v\u00e1lido
MILD_ERR_SCHEMA_INVALID_REPLACE_MODIFICATION_425=El servidor de fondo del esquema no admite el tipo de modificaci\u00f3n Replace por el tipo de atributo %s
opends/src/messages/messages/backend_fr.properties
@@ -21,6 +21,7 @@
# CDDL HEADER END
#
#      Copyright 2006-2009 Sun Microsystems, Inc.
#      Portions Copyright 2011 ForgeRock AS
@@ -257,7 +258,7 @@
FATAL_ERR_BACKEND_CANNOT_REGISTER_BASEDN_210=Une erreur s'est produite lors de la tentative d'enregistrement de DN de base %s dans Directory Server\u00a0: %s
MILD_ERR_SCHEMA_DELETE_MODTYPE_NOT_SUPPORTED_211=Le backend de sch\u00e9ma ne prend actuellement pas en charge la suppression des \u00e9l\u00e9ments de sch\u00e9ma existants
MILD_ERR_SCHEMA_INVALID_MODIFICATION_TYPE_212=Le backend de sch\u00e9ma ne prend actuellement pas en charge le type de modification %s
MILD_ERR_SCHEMA_MODIFY_UNSUPPORTED_ATTRIBUTE_TYPE_213=Le backend de sch\u00e9ma ne prend actuellement pas en charge la modification de ce type d'attribut %s.  Seules les utilisations des types d'attributs, des classes d'objet, des formulaires de noms, des r\u00e8gles de contenu DIT, des r\u00e8gles de structure DIT et des r\u00e8gles de correspondance peuvent \u00eatre modifi\u00e9es
MILD_ERR_SCHEMA_MODIFY_UNSUPPORTED_ATTRIBUTE_TYPE_213=Le backend de sch\u00e9ma ne prend actuellement pas en charge la modification de ce type d'attribut %s.  Seules les utilisations des types d'attributs, des classes d'objet, les descriptions de syntaxe LDAP, des formulaires de noms, des r\u00e8gles de contenu DIT, des r\u00e8gles de structure DIT et des r\u00e8gles de correspondance peuvent \u00eatre modifi\u00e9es
MILD_ERR_SCHEMA_MODIFY_CANNOT_DECODE_ATTRTYPE_214=Une erreur s'est produite lors de la tentative de d\u00e9codage du type d'attribut "%s"\u00a0: %s
MILD_ERR_SCHEMA_MODIFY_ATTRTYPE_ALREADY_EXISTS_215=Impossible d'ajouter un type d'attribut %s au sch\u00e9ma de serveur car il existe un type d'attribut avec un nom ou un OID\u00a0incompatible\u00a0:  %s
MILD_ERR_SCHEMA_MODIFY_CANNOT_DECODE_OBJECTCLASS_216=Une erreur s'est produite lors de la tentative de d\u00e9codage de la classe d'objet "%s"\u00a0: %s
@@ -415,13 +416,13 @@
MILD_ERR_HAS_SUBORDINATES_NOT_SUPPORTED_368=Ce backend ne prend pas en charge l'attribut op\u00e9rationnel hasSubordinates
MILD_ERR_NUM_SUBORDINATES_NOT_SUPPORTED_369=Ce backend ne prend pas en charge l'attribut op\u00e9rationnel numSubordinates
NOTICE_BACKEND_OFFLINE_370=Le backend %s est maintenant hors ligne 
SEVERE_ERR_RECURRINGTASK_INVALID_N_TOKENS_371=L'attribut d'entr\u00e9e de t\u00e2che r\u00e9currente fourni (%s), qui stocke la planification de la t\u00e2che r\u00e9currente, comporte un nombre de jetons non valide
SEVERE_ERR_RECURRINGTASK_INVALID_MINUTE_TOKEN_372=L'attribut d'entr\u00e9e de t\u00e2che r\u00e9currente fourni (%s), qui stocke la planification de la t\u00e2che r\u00e9currente, comporte un jeton de minute non valide
SEVERE_ERR_RECURRINGTASK_INVALID_HOUR_TOKEN_373=L'attribut d'entr\u00e9e de t\u00e2che r\u00e9currente fourni (%s), qui stocke la planification de la t\u00e2che r\u00e9currente, comporte un jeton d'heure non valide
SEVERE_ERR_RECURRINGTASK_INVALID_DAY_TOKEN_374=L'attribut d'entr\u00e9e de t\u00e2che r\u00e9currente fourni (%s), qui stocke la planification de la t\u00e2che r\u00e9currente, comporte un jeton de jour du mois non valide
SEVERE_ERR_RECURRINGTASK_INVALID_MONTH_TOKEN_375=L'attribut d'entr\u00e9e de t\u00e2che r\u00e9currente fourni (%s), qui stocke la planification de la t\u00e2che r\u00e9currente, comporte un jeton de mois de l'ann\u00e9e non valide
SEVERE_ERR_RECURRINGTASK_INVALID_WEEKDAY_TOKEN_376=L'attribut d'entr\u00e9e de t\u00e2che r\u00e9currente fourni (%s), qui stocke la planification de la t\u00e2che r\u00e9currente, comporte un jeton de jour de semaine non valide
SEVERE_ERR_RECURRINGTASK_INVALID_TOKENS_COMBO_377=L'attribut d'entr\u00e9e de t\u00e2che r\u00e9currente fourni (%s), qui stocke la planification de la t\u00e2che r\u00e9currente, comporte une combinaison de jetons non valide qui cr\u00e9e une date inexistante
SEVERE_ERR_RECURRINGTASK_INVALID_N_TOKENS_371=L'attribut d'entr\u00e9e de t\u00e2che r\u00e9currente fourni (%s), qui stocke la planification de la t\u00e2che r\u00e9currente, comporte un nombre de tokens non valide
SEVERE_ERR_RECURRINGTASK_INVALID_MINUTE_TOKEN_372=L'attribut d'entr\u00e9e de t\u00e2che r\u00e9currente fourni (%s), qui stocke la planification de la t\u00e2che r\u00e9currente, comporte un token de minute non valide
SEVERE_ERR_RECURRINGTASK_INVALID_HOUR_TOKEN_373=L'attribut d'entr\u00e9e de t\u00e2che r\u00e9currente fourni (%s), qui stocke la planification de la t\u00e2che r\u00e9currente, comporte un token d'heure non valide
SEVERE_ERR_RECURRINGTASK_INVALID_DAY_TOKEN_374=L'attribut d'entr\u00e9e de t\u00e2che r\u00e9currente fourni (%s), qui stocke la planification de la t\u00e2che r\u00e9currente, comporte un token de jour du mois non valide
SEVERE_ERR_RECURRINGTASK_INVALID_MONTH_TOKEN_375=L'attribut d'entr\u00e9e de t\u00e2che r\u00e9currente fourni (%s), qui stocke la planification de la t\u00e2che r\u00e9currente, comporte un token de mois de l'ann\u00e9e non valide
SEVERE_ERR_RECURRINGTASK_INVALID_WEEKDAY_TOKEN_376=L'attribut d'entr\u00e9e de t\u00e2che r\u00e9currente fourni (%s), qui stocke la planification de la t\u00e2che r\u00e9currente, comporte un token de jour de semaine non valide
SEVERE_ERR_RECURRINGTASK_INVALID_TOKENS_COMBO_377=L'attribut d'entr\u00e9e de t\u00e2che r\u00e9currente fourni (%s), qui stocke la planification de la t\u00e2che r\u00e9currente, comporte une combinaison de tokens non valide qui cr\u00e9e une date inexistante
SEVERE_ERR_TASKS_CANNOT_EXPORT_TO_FILE_378=Une erreur s'est produite lors de la tentative d'exportation des donn\u00e9es de backend de t\u00e2che\u00a0: %s
SEVERE_ERR_TASKS_BACKUP_CANNOT_GET_MAC_379=Une erreur s'est produite lors de la tentative d'obtention du fournisseur MAC %s afin de cr\u00e9er le hachage sign\u00e9 pour la sauvegarde\u00a0: %s
SEVERE_ERR_TASKS_BACKUP_CANNOT_GET_DIGEST_380=Une erreur s'est produite lors de la tentative d'obtention de la synth\u00e8se de message %s afin de cr\u00e9er le hachage pour la sauvegarde\u00a0: %s
@@ -463,3 +464,10 @@
MILD_ERR_SCHEMA_MODIFY_REMOVE_NO_SUCH_LSD_416=Impossible de supprimer la description de syntaxe ldap %s du sch\u00e9ma du serveur car elle n'est pas d\u00e9finie
MILD_ERR_ATTR_SYNTAX_INVALID_LDAP_SYNTAX_417=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que syntaxe ldap car son OID %s correspond \u00e0 une syntaxe d'attribut d\u00e9j\u00e0 impl\u00e9ment\u00e9e
MILD_ERR_SCHEMA_MODIFY_CANNOT_DECODE_LDAP_SYNTAX_418=Une erreur s'est produite lors de la tentative de d\u00e9codage de la description de syntaxe ldap "%s"\u00a0: %s
SEVERE_ERR_RECURRINGTASK_INVALID_N_TOKENS_SIMPLE_419=La valeur propos\u00e9e pour la planification de la t\u00e2che r\u00e9currente, comporte un nombre de tokens non valide
SEVERE_ERR_RECURRINGTASK_INVALID_MINUTE_TOKEN_SIMPLE_420=La valeur propos\u00e9e pour la planification de la t\u00e2che r\u00e9currente, comporte un token de minute non valide
SEVERE_ERR_RECURRINGTASK_INVALID_HOUR_TOKEN_SIMPLE_421=La valeur propos\u00e9e pour la planification de la t\u00e2che r\u00e9currente, comporte un token d'heure non valide
SEVERE_ERR_RECURRINGTASK_INVALID_DAY_TOKEN_SIMPLE_422=La valeur propos\u00e9e pour la planification de la t\u00e2che r\u00e9currente, comporte un token de jour du mois non valide
SEVERE_ERR_RECURRINGTASK_INVALID_MONTH_TOKEN_SIMPLE_423=La valeur propos\u00e9e pour la planification de la t\u00e2che r\u00e9currente, comporte un token de mois de l'ann\u00e9e non valide
SEVERE_ERR_RECURRINGTASK_INVALID_WEEKDAY_TOKEN_SIMPLE_424=La valeur propos\u00e9e pour la planification de la t\u00e2che r\u00e9currente, comporte un token de jour de semaine non valide
MILD_ERR_SCHEMA_INVALID_REPLACE_MODIFICATION_425=Le backend de sch\u00e9ma ne prend actuellement pas en charge la modification de type Replace pour le type d'attribut %s
opends/src/server/org/opends/server/backends/SchemaBackend.java
@@ -23,6 +23,7 @@
 *
 *
 *      Copyright 2006-2010 Sun Microsystems, Inc.
 *      Portions Copyright 2011 ForgeRock AS
 */
package org.opends.server.backends;
@@ -1528,7 +1529,7 @@
          break;
        default:
        case REPLACE:
          if ((!m.isInternal()) &&
              (!modifyOperation.isSynchronizationOperation()))
          {
@@ -1539,9 +1540,27 @@
          }
          else
          {
            newSchema.addExtraAttribute(at.getNameOrOID(), a);
            modifiedSchemaFiles.add(FILE_USER_SCHEMA_ELEMENTS);
            // If this is not a Schema attribute, we put it
            // in the extraAttribute map. This in fact acts as a replace.
            if (SchemaConfigManager.isSchemaAttribute(a))
            {
              Message message = ERR_SCHEMA_INVALID_REPLACE_MODIFICATION.get(
                                  a.getNameWithOptions());
              ErrorLogger.logError(message);
            }
            else
            {
              newSchema.addExtraAttribute(at.getNameOrOID(), a);
              modifiedSchemaFiles.add(FILE_USER_SCHEMA_ELEMENTS);
            }
          }
          break;
        default:
          Message message = ERR_SCHEMA_INVALID_MODIFICATION_TYPE.get(
                String.valueOf(m.getModificationType()));
          throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM,
                                       message);
      }
    }
opends/src/server/org/opends/server/core/SchemaConfigManager.java
@@ -23,6 +23,7 @@
 *
 *
 *      Copyright 2006-2010 Sun Microsystems, Inc.
 *      Portions Copyright 2011 ForgeRock AS
 */
package org.opends.server.core;
import org.opends.messages.Message;
@@ -1522,7 +1523,7 @@
   *                    false if the attribute is not part of the schema
   *                    definition.
   */
  private static boolean isSchemaAttribute(Attribute attribute)
  public static boolean isSchemaAttribute(Attribute attribute)
  {
    String attributeOid = attribute.getAttributeType().getOID();
    if (attributeOid.equals("2.5.21.1") ||