Search in sources :

Example 6 with DefaultSchemaLocationResolver

use of org.eclipse.persistence.sdo.helper.DefaultSchemaLocationResolver in project eclipselink by eclipse-ee4j.

the class SDOSequenceTestCS method defineAndLoadRoot.

// use XSD to define and XML to load - sequenced Flag has affect only when defining via typeHelper
public void defineAndLoadRoot(boolean defineViaXSD, boolean loadViaXML, boolean sequencedFlag) {
    DefaultSchemaLocationResolver resolver = new DefaultSchemaLocationResolver(getMap());
    List<Type> types = null;
    if (defineViaXSD) {
        types = xsdHelper.define(getXSDString(XSD_PATH));
    } else {
        registerTypes(sequencedFlag);
        types = getControlTypes();
    }
    String generatedSchema = ((SDOXSDHelper) xsdHelper).generate(types, resolver);
    // log(generatedSchema);
    root = createRootObject(loadViaXML, types);
    int aRootsize = preOrderTraversalDataObjectList((SDODataObject) root).size();
    // if(!loadViaXML)  {
    // assertTrue(writeXML(root, URINAME, COMPANY_TYPENAME, System.out));
    // }
    assertEquals(10, aRootsize);
}
Also used : Type(commonj.sdo.Type) SDOType(org.eclipse.persistence.sdo.SDOType) DefaultSchemaLocationResolver(org.eclipse.persistence.sdo.helper.DefaultSchemaLocationResolver) SDOXSDHelper(org.eclipse.persistence.sdo.helper.SDOXSDHelper) SDODataObject(org.eclipse.persistence.sdo.SDODataObject)

Example 7 with DefaultSchemaLocationResolver

use of org.eclipse.persistence.sdo.helper.DefaultSchemaLocationResolver in project eclipselink by eclipse-ee4j.

the class SDOSequenceTest method getRootViaDefineViaDataObjectandLoadViaDataFactory.

// use programmatic define(DataObject) and programmatic DataFactory to load
public void getRootViaDefineViaDataObjectandLoadViaDataFactory() {
    DefaultSchemaLocationResolver resolver = new DefaultSchemaLocationResolver(getMap());
    registerTypes();
    List<Type> types = getTypesToGenerateFrom();
    String generatedSchema = ((SDOXSDHelper) xsdHelper).generate(types, resolver);
    log(generatedSchema);
    root = createRootObject(false, types);
    int aRootsize = preOrderTraversalDataObjectList((SDODataObject) root).size();
    assertEquals(10, aRootsize);
}
Also used : Type(commonj.sdo.Type) SDOType(org.eclipse.persistence.sdo.SDOType) DefaultSchemaLocationResolver(org.eclipse.persistence.sdo.helper.DefaultSchemaLocationResolver) SDOXSDHelper(org.eclipse.persistence.sdo.helper.SDOXSDHelper) SDODataObject(org.eclipse.persistence.sdo.SDODataObject)

Example 8 with DefaultSchemaLocationResolver

use of org.eclipse.persistence.sdo.helper.DefaultSchemaLocationResolver in project eclipselink by eclipse-ee4j.

the class XSDHelperGenerateTestCases method testGenerateSchema.

public void testGenerateSchema() throws Exception {
    // String generatedSchema = xsdHelper.generate(getTypesToGenerateFrom(), getSchemaNamespacesMap());
    DefaultSchemaLocationResolver resolver = new DefaultSchemaLocationResolver(getMap());
    String generatedSchema = ((SDOXSDHelper) xsdHelper).generate(getTypesToGenerateFrom(), resolver);
    String controlSchema = getSchema(getControlFileName());
    log("EXPECTED: \n" + controlSchema);
    log("ACTUAL: \n" + generatedSchema);
    StringReader reader = new StringReader(generatedSchema);
    InputSource inputSource = new InputSource(reader);
    Document generatedSchemaDoc = parser.parse(inputSource);
    reader.close();
    assertSchemaIdentical(getDocument(getControlFileName()), generatedSchemaDoc);
}
Also used : InputSource(org.xml.sax.InputSource) DefaultSchemaLocationResolver(org.eclipse.persistence.sdo.helper.DefaultSchemaLocationResolver) StringReader(java.io.StringReader) SDOXSDHelper(org.eclipse.persistence.sdo.helper.SDOXSDHelper) Document(org.w3c.dom.Document)

Example 9 with DefaultSchemaLocationResolver

use of org.eclipse.persistence.sdo.helper.DefaultSchemaLocationResolver in project eclipselink by eclipse-ee4j.

the class SDODataGraphDataObjectBackPointerTest method testSetDOFromOtherDataGraphWithMixedContainmentNonContainmentWithoutCStoDGwithoutCS.

// This function will exercise the updateDataGraph() function on SDODataObject.updateContainment()
public void testSetDOFromOtherDataGraphWithMixedContainmentNonContainmentWithoutCStoDGwithoutCS() {
    DefaultSchemaLocationResolver resolver = new DefaultSchemaLocationResolver(new HashMap<QName, String>());
    registerTypes();
    List<Type> types = getTypesToGenerateFrom();
    ((SDOXSDHelper) xsdHelper).generate(types, resolver);
    // Create target
    DataObject aDataObjectTarget = createRootObject(types);
    DataGraph aDataGraphTarget = dataGraph;
    aDataGraphTarget.createRootObject(aDataObjectTarget.getType());
    DataObject targetRoot = aDataGraphTarget.getRootObject();
    // Check it
    assertNotNull(targetRoot);
    assertEquals(targetRoot.getType(), aDataGraphTarget.getType(URINAME, COMPANY_TYPENAME));
    ListWrapper pOrdersTarget = (ListWrapper) targetRoot.getList(PO_PATH);
    int poSize = pOrdersTarget.size();
    assertEquals(0, poSize);
    // Create source
    DataObject aDataObjectSource = createRootObject(types);
    DataGraph aDataGraphSource = new SDODataGraph(aHelperContext);
    aDataGraphSource.createRootObject(aDataObjectSource.getType());
    DataObject sourceRoot = aDataGraphSource.getRootObject();
    // Check it
    assertNotNull(sourceRoot);
    assertEquals(sourceRoot.getType(), aDataGraphSource.getType(URINAME, COMPANY_TYPENAME));
    ListWrapper pOrdersSource = (ListWrapper) aDataObjectSource.getList(PO_PATH);
    int poSizeSource = pOrdersSource.size();
    assertEquals(1, poSizeSource);
    // Clear the target CS so that we enter only the DataGraph recursive loop
    ((SDODataObject) targetRoot)._setChangeSummary(null);
    // Get source DO
    DataObject sourcePO = (DataObject) pOrdersSource.get(0);
    // DataGraph should be null before set
    assertNull(sourcePO.getDataGraph());
    // Move the root object from one null data graph to the other
    pOrdersTarget.add(sourcePO);
    // DataGraph should be not be null before set
    assertNotNull(sourcePO.getDataGraph());
    // Target dataGraph should be set on all children
    assertEquals(aDataGraphTarget, sourcePO.getDataGraph());
    DataObject copyPOshipTo = (DataObject) sourcePO.get("shipTo");
    DataObject copyPObillTo = (DataObject) sourcePO.get("billTo");
    DataObject copyPOitem1 = (DataObject) sourcePO.get("item[1]");
    DataObject copyPOitem2 = (DataObject) sourcePO.get("item[2]");
    // Check dataGraph back pointers recursively (containment only)
    List<DataObject> copyPreOrderList = preOrderTraversalDataObjectList(sourcePO);
    assertNotNull(copyPreOrderList);
    assertEquals(5, copyPreOrderList.size());
    copyPreOrderList.contains(copyPOshipTo);
    copyPreOrderList.contains(copyPObillTo);
    copyPreOrderList.contains(copyPOitem1);
    copyPreOrderList.contains(copyPOitem2);
    assertNotNull(copyPOshipTo.getDataGraph());
    assertEquals(aDataGraphTarget, copyPOshipTo.getDataGraph());
    assertNotNull(copyPObillTo.getDataGraph());
    assertEquals(aDataGraphTarget, copyPObillTo.getDataGraph());
    // item property is unidirectional or containment=false - still in the dataGraph in this case
    assertNotNull(copyPOitem1.getDataGraph());
    assertEquals(aDataGraphTarget, copyPOitem1.getDataGraph());
    assertNotNull(copyPOitem2.getDataGraph());
    assertEquals(aDataGraphTarget, copyPOitem2.getDataGraph());
}
Also used : QName(javax.xml.namespace.QName) SDOXSDHelper(org.eclipse.persistence.sdo.helper.SDOXSDHelper) ListWrapper(org.eclipse.persistence.sdo.helper.ListWrapper) Type(commonj.sdo.Type) DataGraph(commonj.sdo.DataGraph) SDODataGraph(org.eclipse.persistence.sdo.SDODataGraph) SDODataObject(org.eclipse.persistence.sdo.SDODataObject) DataObject(commonj.sdo.DataObject) DefaultSchemaLocationResolver(org.eclipse.persistence.sdo.helper.DefaultSchemaLocationResolver) SDODataGraph(org.eclipse.persistence.sdo.SDODataGraph) SDODataObject(org.eclipse.persistence.sdo.SDODataObject)

Example 10 with DefaultSchemaLocationResolver

use of org.eclipse.persistence.sdo.helper.DefaultSchemaLocationResolver in project eclipselink by eclipse-ee4j.

the class SDOSequenceTestXSD method defineAndLoadRoot.

public void defineAndLoadRoot(boolean defineViaXSD, boolean loadViaXML, boolean sequencedFlag, boolean withChangeSummary) {
    DefaultSchemaLocationResolver resolver = new DefaultSchemaLocationResolver(getMap());
    List<Type> types = null;
    if (defineViaXSD) {
        types = xsdHelper.define(getXSDString(XSD_PATH));
    } else {
        registerTypes(sequencedFlag, withChangeSummary);
        types = getControlTypes();
    }
    String generatedSchema = ((SDOXSDHelper) xsdHelper).generate(types, resolver);
    // log(generatedSchema);
    root = createRootObject(loadViaXML, types, withChangeSummary);
    int aRootsize = preOrderTraversalDataObjectList((SDODataObject) root).size();
    // if(!loadViaXML)  {
    // assertTrue(writeXML(root, URINAME, COMPANY_TYPENAME, System.out));
    // }
    assertEquals(10, aRootsize);
}
Also used : Type(commonj.sdo.Type) SDOType(org.eclipse.persistence.sdo.SDOType) DefaultSchemaLocationResolver(org.eclipse.persistence.sdo.helper.DefaultSchemaLocationResolver) SDOXSDHelper(org.eclipse.persistence.sdo.helper.SDOXSDHelper) SDODataObject(org.eclipse.persistence.sdo.SDODataObject)

Aggregations

DefaultSchemaLocationResolver (org.eclipse.persistence.sdo.helper.DefaultSchemaLocationResolver)19 SDOXSDHelper (org.eclipse.persistence.sdo.helper.SDOXSDHelper)19 Type (commonj.sdo.Type)11 SDODataObject (org.eclipse.persistence.sdo.SDODataObject)11 DataObject (commonj.sdo.DataObject)7 StringReader (java.io.StringReader)7 ArrayList (java.util.ArrayList)7 List (java.util.List)7 QName (javax.xml.namespace.QName)7 ListWrapper (org.eclipse.persistence.sdo.helper.ListWrapper)7 Document (org.w3c.dom.Document)7 InputSource (org.xml.sax.InputSource)7 SDOType (org.eclipse.persistence.sdo.SDOType)4 InputStream (java.io.InputStream)3 DataGraph (commonj.sdo.DataGraph)2 FileInputStream (java.io.FileInputStream)2 SDODataGraph (org.eclipse.persistence.sdo.SDODataGraph)2 Property (commonj.sdo.Property)1 SDOProperty (org.eclipse.persistence.sdo.SDOProperty)1