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

Nicolas Capponi
19.14.2016 a36a3ad7a7cae7dffd8460aa4826ecdf50cd5751
opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/datamodel/ServerDescriptor.java
@@ -27,13 +27,13 @@
import java.util.Map;
import java.util.Set;
import org.forgerock.opendj.ldap.DN;
import org.forgerock.opendj.ldap.schema.AttributeType;
import org.forgerock.opendj.ldap.schema.ObjectClass;
import org.opends.guitools.controlpanel.util.ConfigFromDirContext;
import org.opends.quicksetup.UserData;
import org.opends.server.schema.SomeSchemaElement;
import org.opends.server.tools.tasks.TaskEntry;
import org.forgerock.opendj.ldap.schema.AttributeType;
import org.forgerock.opendj.ldap.DN;
import org.forgerock.opendj.ldap.schema.ObjectClass;
import org.opends.server.types.Schema;
import com.forgerock.opendj.util.OperatingSystem;
@@ -643,8 +643,7 @@
        && areEqual(oc1.getDeclaredRequiredAttributes(), oc2.getDeclaredRequiredAttributes())
        && areEqual(oc1.getSuperiorClasses(), oc2.getSuperiorClasses())
        && areEqual(oc1.getExtraProperties().keySet(), oc2.getExtraProperties().keySet())
        && areEqual(toSet(oc1.getNormalizedNames()), toSet(oc2.getNormalizedNames()))
        && areEqual(toSet(oc1.getUserDefinedNames()), toSet(oc2.getUserDefinedNames()));
        && areEqual(toSet(oc1.getNames()), toSet(oc2.getNames()));
  }
  private static Set<Object> toSet(Iterable<?> iterable)
opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/ui/BrowseSchemaPanel.java
@@ -68,24 +68,37 @@
import org.forgerock.i18n.LocalizableMessageBuilder;
import org.forgerock.opendj.ldap.schema.AttributeType;
import org.forgerock.opendj.ldap.schema.MatchingRule;
import org.forgerock.opendj.ldap.schema.ObjectClass;
import org.forgerock.opendj.ldap.schema.Syntax;
import org.opends.guitools.controlpanel.browser.IconPool;
import org.opends.guitools.controlpanel.datamodel.ControlPanelInfo;
import org.opends.guitools.controlpanel.datamodel.ServerDescriptor;
import org.opends.guitools.controlpanel.event.*;
import org.opends.guitools.controlpanel.event.ConfigurationChangeEvent;
import org.opends.guitools.controlpanel.event.ConfigurationElementCreatedEvent;
import org.opends.guitools.controlpanel.event.ConfigurationElementCreatedListener;
import org.opends.guitools.controlpanel.event.SchemaElementSelectionEvent;
import org.opends.guitools.controlpanel.event.SchemaElementSelectionListener;
import org.opends.guitools.controlpanel.task.DeleteSchemaElementsTask;
import org.opends.guitools.controlpanel.task.Task;
import org.opends.guitools.controlpanel.ui.components.CustomTree;
import org.opends.guitools.controlpanel.ui.components.FilterTextField;
import org.opends.guitools.controlpanel.ui.components.TreePanel;
import org.opends.guitools.controlpanel.ui.nodes.*;
import org.opends.guitools.controlpanel.ui.nodes.AttributeSyntaxTreeNode;
import org.opends.guitools.controlpanel.ui.nodes.CategoryTreeNode;
import org.opends.guitools.controlpanel.ui.nodes.ConfigurationAttributeTreeNode;
import org.opends.guitools.controlpanel.ui.nodes.ConfigurationObjectClassTreeNode;
import org.opends.guitools.controlpanel.ui.nodes.CustomAttributeTreeNode;
import org.opends.guitools.controlpanel.ui.nodes.CustomObjectClassTreeNode;
import org.opends.guitools.controlpanel.ui.nodes.MatchingRuleTreeNode;
import org.opends.guitools.controlpanel.ui.nodes.SchemaElementTreeNode;
import org.opends.guitools.controlpanel.ui.nodes.StandardAttributeTreeNode;
import org.opends.guitools.controlpanel.ui.nodes.StandardObjectClassTreeNode;
import org.opends.guitools.controlpanel.ui.renderer.CustomListCellRenderer;
import org.opends.guitools.controlpanel.ui.renderer.TreeCellRenderer;
import org.opends.guitools.controlpanel.util.LowerCaseComparator;
import org.opends.guitools.controlpanel.util.Utilities;
import org.opends.guitools.controlpanel.util.ViewPositions;
import org.opends.server.schema.SomeSchemaElement;
import org.forgerock.opendj.ldap.schema.ObjectClass;
import org.opends.server.types.Schema;
/** The pane that is displayed when the user clicks on 'Browse Schema'. */
@@ -1154,11 +1167,11 @@
  private boolean mustAddObjectClassName(ObjectClass oc, String ocName)
  {
    return mustAdd(ocName, oc.getOID(), oc.getNameOrOID(), oc.getNormalizedNames());
    return mustAdd(ocName, oc.getOID(), oc.getNameOrOID(), oc.getNames());
  }
  /** Provided names may not be normalized. */
  private boolean mustAdd(String name, String oid, String primaryNameOrOID, Set<String> names)
  private boolean mustAdd(String name, String oid, String primaryNameOrOID, Collection<String> names)
  {
    List<String> values = new ArrayList<>(names.size() + 2);
    values.add(oid);
opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/ui/SchemaElementPanel.java
@@ -27,9 +27,9 @@
import javax.swing.border.EmptyBorder;
import org.forgerock.opendj.ldap.schema.AttributeType;
import org.forgerock.opendj.ldap.schema.ObjectClass;
import org.opends.guitools.controlpanel.event.SchemaElementSelectionEvent;
import org.opends.guitools.controlpanel.event.SchemaElementSelectionListener;
import org.forgerock.opendj.ldap.schema.ObjectClass;
import org.opends.server.types.Schema;
/**
@@ -107,7 +107,7 @@
   * Method called when there is an object class selected in a list.
   * @param list the list.
   */
  protected void objectClassSelected(JList list)
  protected void objectClassSelected(JList<?> list)
  {
    String o = (String)list.getSelectedValue();
    if (o != null)
@@ -131,7 +131,7 @@
   */
  protected Set<String> getAliases(AttributeType attr)
  {
    return getAliases(attr.getNames(), toLowerCase(attr.getNameOrOID()));
    return getAliases(attr.getNames(), attr.getNameOrOID());
  }
  /**
@@ -141,19 +141,17 @@
   */
  protected Set<String> getAliases(ObjectClass oc)
  {
    return getAliases(oc.getNormalizedNames(), oc.getNameOrOID());
    return getAliases(oc.getNames(), oc.getNameOrOID());
  }
  private Set<String> getAliases(Iterable<String> names, String primaryName)
  private Set<String> getAliases(Iterable<String> names, String nameOrOid)
  {
    Set<String> aliases = new LinkedHashSet<>();
    if (primaryName == null)
    {
      primaryName = "";
    }
    nameOrOid = nameOrOid != null ? nameOrOid : "";
    final Set<String> aliases = new LinkedHashSet<>();
    for (String name : names)
    {
      if (!name.equalsIgnoreCase(primaryName))
      if (!name.equalsIgnoreCase(nameOrOid))
      {
        aliases.add(toLowerCase(name));
      }
opendj-server-legacy/src/main/java/org/opends/guitools/controlpanel/ui/StandardObjectClassPanel.java
@@ -18,6 +18,7 @@
package org.opends.guitools.controlpanel.ui;
import static org.opends.messages.AdminToolMessages.*;
import static org.opends.server.util.StaticUtils.*;
import java.awt.Component;
import java.awt.Container;
@@ -42,12 +43,12 @@
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.i18n.LocalizableMessageBuilder;
import org.forgerock.opendj.ldap.schema.AttributeType;
import org.forgerock.opendj.ldap.schema.ObjectClass;
import org.opends.guitools.controlpanel.event.ConfigurationChangeEvent;
import org.opends.guitools.controlpanel.ui.components.TitlePanel;
import org.opends.guitools.controlpanel.util.LowerCaseComparator;
import org.opends.guitools.controlpanel.util.Utilities;
import org.opends.server.schema.SomeSchemaElement;
import org.forgerock.opendj.ldap.schema.ObjectClass;
import org.opends.server.types.Schema;
/** The panel that displays a standard object class definition. */
@@ -294,7 +295,7 @@
    }
    description.setText(n);
    ArrayList<String> otherNames = new ArrayList<>();
    Iterable<String> ocNames = oc.getNormalizedNames();
    Iterable<String> ocNames = oc.getNames();
    String primaryName = oc.getNameOrOID();
    if (primaryName == null)
    {
@@ -304,7 +305,7 @@
    {
      if (!name.equalsIgnoreCase(primaryName))
      {
        otherNames.add(name);
        otherNames.add(toLowerCase(name));
      }
    }
    if (!otherNames.isEmpty())
opendj-server-legacy/src/main/java/org/opends/server/backends/SchemaBackend.java
@@ -65,6 +65,7 @@
import org.forgerock.opendj.ldap.schema.CoreSchema;
import org.forgerock.opendj.ldap.schema.MatchingRule;
import org.forgerock.opendj.ldap.schema.MatchingRuleUse;
import org.forgerock.opendj.ldap.schema.ObjectClass;
import org.forgerock.opendj.ldap.schema.ObjectClassType;
import org.forgerock.opendj.ldap.schema.SchemaElement;
import org.forgerock.opendj.server.config.server.SchemaBackendCfg;
@@ -107,7 +108,6 @@
import org.opends.server.types.LDIFImportResult;
import org.opends.server.types.Modification;
import org.opends.server.types.NameForm;
import org.forgerock.opendj.ldap.schema.ObjectClass;
import org.opends.server.types.Privilege;
import org.opends.server.types.RestoreConfig;
import org.opends.server.types.Schema;
@@ -1465,13 +1465,11 @@
  {
    // First, see if the specified objectclass already exists.  We'll check the
    // OID and all of the names, which means that it's possible there could be
    // more than one match (although if there is, then we'll refuse the
    // operation).
    ObjectClass existingClass =
         schema.getObjectClass(objectClass.getOID());
    for (String name : objectClass.getNormalizedNames())
    // more than one match (although if there is, then we'll refuse the operation).
    ObjectClass existingClass = schema.getObjectClass(objectClass.getOID());
    for (String name : objectClass.getNames())
    {
      ObjectClass oc = schema.getObjectClass(name);
      ObjectClass oc = schema.getObjectClass(toLowerCase(name));
      if (oc == null)
      {
        continue;