| | |
| | | import java.util.Map; |
| | | import java.util.Set; |
| | | import java.util.TreeSet; |
| | | import java.util.concurrent.ConcurrentHashMap; |
| | | |
| | | import org.forgerock.i18n.LocalizableMessage; |
| | | import org.forgerock.i18n.slf4j.LocalizedLogger; |
| | |
| | | operationalAttrs, attributeTypesType, includeSchemaFile, |
| | | AttributeTypeSyntax.isStripSyntaxMinimumUpperBound(), |
| | | ignoreShowAllOption); |
| | | buildSchemaAttribute(schema.getObjectClasses().values(), userAttrs, |
| | | buildSchemaAttribute(schema.getObjectClasses(), userAttrs, |
| | | operationalAttrs, objectClassesType, includeSchemaFile, false, |
| | | ignoreShowAllOption); |
| | | buildSchemaAttribute(schema.getMatchingRules(), userAttrs, |
| | |
| | | |
| | | // Make sure that the attribute type isn't used as a required or optional |
| | | // attribute type in any objectclass. |
| | | for (ObjectClass oc : schema.getObjectClasses().values()) |
| | | for (ObjectClass oc : schema.getObjectClasses()) |
| | | { |
| | | if (oc.getDeclaredRequiredAttributes().contains(removeType) || |
| | | oc.getDeclaredOptionalAttributes().contains(removeType)) |
| | |
| | | |
| | | // Make sure that the objectclass isn't used as the superior class for any |
| | | // other objectclass. |
| | | for (ObjectClass oc : schema.getObjectClasses().values()) |
| | | for (ObjectClass oc : schema.getObjectClasses()) |
| | | { |
| | | for(ObjectClass superiorClass : oc.getSuperiorClasses()) |
| | | { |
| | |
| | | // same file are written before the subordinate classes. |
| | | Set<ObjectClass> addedClasses = new HashSet<>(); |
| | | values = new LinkedHashSet<>(); |
| | | for (ObjectClass oc : schema.getObjectClasses().values()) |
| | | for (ObjectClass oc : schema.getObjectClasses()) |
| | | { |
| | | if (schemaFile.equals(getSchemaFile(oc))) |
| | | { |
| | |
| | | |
| | | // loop on all the object classes in the current schema and delete |
| | | // them from the new schema if they are not in the imported schema entry. |
| | | ConcurrentHashMap<String, ObjectClass> currentObjectClasses = newSchema.getObjectClasses(); |
| | | |
| | | for (ObjectClass removeClass : currentObjectClasses.values()) |
| | | for (ObjectClass removeClass : newSchema.getObjectClasses()) |
| | | { |
| | | String schemaFile = getSchemaFile(removeClass); |
| | | if (CONFIG_SCHEMA_ELEMENTS_FILE.equals(schemaFile)) |