Search in sources :

Example 11 with SchemaRegistryImpl

use of com.evolveum.midpoint.prism.schema.SchemaRegistryImpl in project midpoint by Evolveum.

the class TestExtraSchema method testTypeOverride.

/**
	 * Test if a schema directory can be loaded to the schema registry. This contains definition of
	 * user extension, therefore check if it is applied to the user definition. 
	 */
@Test
public void testTypeOverride() throws SAXException, IOException, SchemaException {
    System.out.println("===[ testTypeOverride ]===");
    PrismContext context = constructPrismContext();
    SchemaRegistryImpl reg = (SchemaRegistryImpl) context.getSchemaRegistry();
    reg.registerPrismSchemasFromDirectory(EXTRA_SCHEMA_DIR);
    context.initialize();
    PrismSchema schema = reg.getSchema(NS_ROOT);
    System.out.println("Parsed root schema:");
    System.out.println(schema.debugDump());
    PrismContainerDefinition rootContDef = schema.findContainerDefinitionByElementName(new QName(NS_ROOT, "root"));
    assertNotNull("Not <root> definition", rootContDef);
    PrismContainerDefinition extensionContDef = rootContDef.findContainerDefinition(new QName(NS_FOO, "extension"));
    assertNotNull("Not <extension> definition", extensionContDef);
    assertEquals("Wrong <extension> type", new QName(NS_ROOT, "MyExtensionType"), extensionContDef.getTypeName());
}
Also used : PrismSchema(com.evolveum.midpoint.prism.schema.PrismSchema) QName(javax.xml.namespace.QName) SchemaRegistryImpl(com.evolveum.midpoint.prism.schema.SchemaRegistryImpl) Test(org.testng.annotations.Test)

Example 12 with SchemaRegistryImpl

use of com.evolveum.midpoint.prism.schema.SchemaRegistryImpl in project midpoint by Evolveum.

the class MidPointPrismContextFactory method createPrismContext.

@Override
public PrismContext createPrismContext() throws SchemaException, FileNotFoundException {
    SchemaRegistryImpl schemaRegistry = createSchemaRegistry();
    PrismContextImpl context = PrismContextImpl.create(schemaRegistry);
    context.setDefinitionFactory(createDefinitionFactory());
    context.setDefaultRelation(SchemaConstants.ORG_DEFAULT);
    if (InternalsConfig.isPrismMonitoring()) {
        context.setMonitor(new InternalMonitor());
    }
    return context;
}
Also used : InternalMonitor(com.evolveum.midpoint.schema.internals.InternalMonitor) PrismContextImpl(com.evolveum.midpoint.prism.PrismContextImpl) SchemaRegistryImpl(com.evolveum.midpoint.prism.schema.SchemaRegistryImpl)

Aggregations

SchemaRegistryImpl (com.evolveum.midpoint.prism.schema.SchemaRegistryImpl)12 Test (org.testng.annotations.Test)6 PrismSchema (com.evolveum.midpoint.prism.schema.PrismSchema)5 PrismContextImpl (com.evolveum.midpoint.prism.PrismContextImpl)3 GlobalDynamicNamespacePrefixMapper (com.evolveum.midpoint.prism.xml.GlobalDynamicNamespacePrefixMapper)3 UserType (com.evolveum.midpoint.prism.foo.UserType)2 DOMResult (javax.xml.transform.dom.DOMResult)2 DOMSource (javax.xml.transform.dom.DOMSource)2 Schema (javax.xml.validation.Schema)2 Validator (javax.xml.validation.Validator)2 NotNull (org.jetbrains.annotations.NotNull)2 Document (org.w3c.dom.Document)2 ObjectFactory (com.evolveum.midpoint.prism.foo.ObjectFactory)1 SchemaDefinitionFactory (com.evolveum.midpoint.prism.schema.SchemaDefinitionFactory)1 SchemaRegistry (com.evolveum.midpoint.prism.schema.SchemaRegistry)1 DynamicNamespacePrefixMapper (com.evolveum.midpoint.prism.xml.DynamicNamespacePrefixMapper)1 InternalMonitor (com.evolveum.midpoint.schema.internals.InternalMonitor)1 SchemaException (com.evolveum.midpoint.util.exception.SchemaException)1 File (java.io.File)1 QName (javax.xml.namespace.QName)1