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;