/** * Create an instance of {@link XmlSchemaType } * */ public XmlSchemaType createXmlSchemaType() { return new XmlSchemaType(); }
public XmlSchemaType cachingMetadata(CachingMetadataType value) { setCachingMetadata(value); return this; }
public XmlSchemaType definition(SchemaDefinitionType value) { setDefinition(value); return this; }
public XmlSchemaType clone() { XmlSchemaType object = new XmlSchemaType(); PrismContainerValue value = asPrismContainerValue().clone(); object.setupContainerValue(value); return object; }
protected CachingMetadataType getSchemaCachingMetadata(PrismObject<ResourceType> resource) { ResourceType resourceType = resource.asObjectable(); XmlSchemaType xmlSchemaType = resourceType.getSchema(); assertNotNull("No schema", xmlSchemaType); Element resourceXsdSchemaElementAfter = ResourceTypeUtil.getResourceXsdSchema(resourceType); assertNotNull("No schema XSD element", resourceXsdSchemaElementAfter); return xmlSchemaType.getCachingMetadata(); }
XmlSchemaType xmlSchemaType = new XmlSchemaType(); CachingMetadataType cachingMetadata = new CachingMetadataType(); cachingMetadata.setSerialNumber("serial123"); xmlSchemaType.setCachingMetadata(cachingMetadata); Element xsdSchemaElement = DOMUtil.createElement(DOMUtil.XSD_SCHEMA_ELEMENT); schemaDefinition.getAny().add(xsdSchemaElement); xmlSchemaType.setDefinition(schemaDefinition);
@Override public void assertModification(PrismObject<ResourceType> resource, int iteration) { List<Element> orgigElements = xmlSchemaDef.getAny(); List<Element> newElements = resource.asObjectable().getSchema().getDefinition().getAny(); assertEquals("Wrong number of elements in schema definition in iteration "+iteration, orgigElements.size(), newElements.size()); // TODO look inside elements } });
@Override public boolean equals(Object object) { if (!(object instanceof XmlSchemaType)) { return false; } XmlSchemaType other = ((XmlSchemaType) object); return asPrismContainerValue().equivalent(other.asPrismContainerValue()); }
public CachingMetadataType beginCachingMetadata() { CachingMetadataType value = new CachingMetadataType(); cachingMetadata(value); return value; }
CachingMetadataType schemaCachingMetadata = resource.asObjectable().getSchema().getCachingMetadata(); if (schemaCachingMetadata == null) { schemaCachingMetadata = MiscSchemaUtil.generateCachingMetadata();
private static SchemaDefinitionType createNewXmlSchemaDef(File resourceFile, int iteration, PrismContext prismContext) throws SchemaException { PrismObject<ResourceType> resource = parseResource(resourceFile, prismContext); XmlSchemaType schema = resource.asObjectable().getSchema(); SchemaDefinitionType def; if (schema == null) { def = new SchemaDefinitionType(); def.getAny().add(DOMUtil.createElement(DOMUtil.XSD_SCHEMA_ELEMENT)); } else { def = schema.getDefinition(); // TODO: modify it somehow } return def; }
/** * Returns the <xsd:schema> element from the XmlSchemaType. */ public static Element findXsdElement(XmlSchemaType xmlSchemaType) { if (xmlSchemaType == null) { return null; } PrismContainerValue<XmlSchemaType> xmlSchemaContainerValue = xmlSchemaType.asPrismContainerValue(); return findXsdElement(xmlSchemaContainerValue); }
assertEquals("Schema serial number mismatch", resourceType.getSchema().getCachingMetadata().getSerialNumber(), resourceTypeAgain.getSchema().getCachingMetadata().getSerialNumber()); assertTrue("Resource schema was not cached", resourceSchema == resourceSchemaAgain);
/** * Create an instance of {@link XmlSchemaType } * */ public XmlSchemaType createXmlSchemaType() { return new XmlSchemaType(); }
@Test public void testUnmarshallAndEqualsResourceSchema() throws JAXBException, SchemaException, FileNotFoundException { System.out.println("\n\n ===[testUnmarshallAndEqualsResourceSchema]===\n"); // GIVEN ResourceType resource1Type = JaxbTestUtil.getInstance().unmarshalObject(new File(RESOURCE_OPENDJ_FILENAME), ResourceType.class); assertNotNull(resource1Type); SchemaDefinitionType schemaDefinition1 = resource1Type.getSchema().getDefinition(); ResourceType resource2Type = JaxbTestUtil.getInstance().unmarshalObject(new File(RESOURCE_OPENDJ_FILENAME), ResourceType.class); assertNotNull(resource2Type); SchemaDefinitionType schemaDefinition2 = resource2Type.getSchema().getDefinition(); // WHEN boolean equals = schemaDefinition1.equals(schemaDefinition2); // THEN assertTrue("Schema definition not equal", equals); assertEquals("Hashcode does not match", schemaDefinition1.hashCode(), schemaDefinition2.hashCode()); }
@Override public String toString() { return asPrismContainerValue().toString(); }
protected void assertHasSchema(PrismObject<ResourceType> resource, String desc) throws SchemaException { ResourceType resourceType = resource.asObjectable(); display("Resource "+desc, resourceType); XmlSchemaType xmlSchemaTypeAfter = resourceType.getSchema(); assertNotNull("No schema in "+desc, xmlSchemaTypeAfter); Element resourceXsdSchemaElementAfter = ResourceTypeUtil.getResourceXsdSchema(resourceType); assertNotNull("No schema XSD element in "+desc, resourceXsdSchemaElementAfter); String resourceXml = prismContext.serializeObjectToString(resource, PrismContext.LANG_XML); // display("Resource XML", resourceXml); CachingMetadataType cachingMetadata = xmlSchemaTypeAfter.getCachingMetadata(); assertNotNull("No caching metadata in "+desc, cachingMetadata); assertNotNull("No retrievalTimestamp in "+desc, cachingMetadata.getRetrievalTimestamp()); assertNotNull("No serialNumber in "+desc, cachingMetadata.getSerialNumber()); Element xsdElement = ObjectTypeUtil.findXsdElement(xmlSchemaTypeAfter); ResourceSchema parsedSchema = ResourceSchemaImpl.parse(xsdElement, resource.toString(), prismContext); assertNotNull("No schema after parsing in "+desc, parsedSchema); }
/** * Create an instance of {@link XmlSchemaType } * */ public XmlSchemaType createXmlSchemaType() { return new XmlSchemaType(); }
System.out.println(ObjectTypeUtil.dump(unmarshalledResource)); XmlSchemaType unXmlSchemaType = unmarshalledResource.getSchema(); Element unXsd = unXmlSchemaType.getDefinition().getAny().get(0); ResourceSchema unSchema = ResourceSchemaImpl.parse(unXsd, "unmarshalled resource", PrismTestUtil.getPrismContext());
@XmlElement(name = "definition") public SchemaDefinitionType getDefinition() { return PrismForJAXBUtil.getPropertyValue(asPrismContainerValue(), F_DEFINITION, SchemaDefinitionType.class); }