Skip navigation links

Oracle Fusion Middleware Java API Reference for Oracle TopLink
11g Release 1 (11.1.1)

E28847-01


org.eclipse.persistence.sdo.helper
Class SDOSchemaGenerator

java.lang.Object
  extended by org.eclipse.persistence.sdo.helper.SDOSchemaGenerator


public class SDOSchemaGenerator
extends java.lang.Object

Purpose SDOSchemaGenerator generates an XSD (returned as a String) from a list of SDO Type objects. Populates an org.eclipse.persistence.internal.oxm.schema.model.Schema object and makes use of org.eclipse.persistence.internal.oxm.schema.SchemaModelProject to marshal the Schema Object to XML.

See Also:
commonj.sdo.XSDHelper

Field Summary
private  HelperContext aHelperContext
           
private  java.util.List allTypes
           
private  org.eclipse.persistence.internal.oxm.schema.model.Schema generatedSchema
           
private  java.util.Map namespaceToSchemaLocation
           
private  SchemaLocationResolver schemaLocationResolver
           

 

Constructor Summary
SDOSchemaGenerator(HelperContext aContext)
           

 

Method Summary
private  void addSimpleComponentAnnotations(org.eclipse.persistence.internal.oxm.schema.model.SimpleComponent sc, Property property, boolean element)
           
private  void addTypeToListIfNeeded(Type sourceType, Type targetType)
           
private  java.lang.String buildAliasNameString(java.util.List<java.lang.String> aliasNames)
           
private  org.eclipse.persistence.internal.oxm.schema.model.Attribute buildAttribute(Property property)
           
private  org.eclipse.persistence.internal.oxm.schema.model.Element buildElement(Property property, org.eclipse.persistence.internal.oxm.schema.model.NestedParticle nestedParticle)
           
private  org.eclipse.persistence.internal.oxm.schema.model.Element buildElementForComplexType(org.eclipse.persistence.internal.oxm.schema.model.Schema schema, org.eclipse.persistence.internal.oxm.schema.model.ComplexType type)
           
private  void buildElementsAndAttributes(java.lang.Object owner, Type type)
           
 java.lang.String generate(java.util.List types, java.util.Map aNamespaceToSchemaLocation)
          Method to generate an XSD.
 java.lang.String generate(java.util.List types, SchemaLocationResolver aSchemaLocationResolver)
          Method to generate an XSD.
private  org.eclipse.persistence.internal.oxm.schema.model.ComplexType generateComplexType(Type type)
           
private  void generateSchema(java.lang.String uri, java.util.List typesWithSameUri)
           
private  org.eclipse.persistence.internal.oxm.schema.model.SimpleType generateSimpleType(Type type)
           
private  Type getAutomaticDataTypeForType(Type theType)
           
private  java.lang.String getPrefixForURI(java.lang.String uri)
           
private  java.lang.String getPrefixStringForURI(java.lang.String uri)
           
private  boolean importExists(java.util.List imports, java.lang.String schemaName)
           
private  boolean shouldSuppressDataType(SDOProperty prop, Type dataType)
           

 

Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

 

Field Detail

namespaceToSchemaLocation

private java.util.Map namespaceToSchemaLocation

schemaLocationResolver

private SchemaLocationResolver schemaLocationResolver

allTypes

private java.util.List allTypes

generatedSchema

private org.eclipse.persistence.internal.oxm.schema.model.Schema generatedSchema

aHelperContext

private HelperContext aHelperContext

Constructor Detail

SDOSchemaGenerator

public SDOSchemaGenerator(HelperContext aContext)

Method Detail

generate

public java.lang.String generate(java.util.List types,
                                 SchemaLocationResolver aSchemaLocationResolver)

Method to generate an XSD. Note the following:

Parameters:
types - The list of commonj.sdo.Type objects to generate the XSD from
aSchemaLocationResolver - implementation of the org.eclipse.persistence.sdo.helper.SchemaLocationResolver interface used for getting the value of the schemaLocation attribute of generated imports and includes
Returns:
String The generated XSD.

generate

public java.lang.String generate(java.util.List types,
                                 java.util.Map aNamespaceToSchemaLocation)

Method to generate an XSD. Note the following:

Parameters:
types - The list of commonj.sdo.Type objects to generate the XSD from
aNamespaceToSchemaLocation - map of namespaces to schemaLocations used for getting the value of the schemaLocation attribute of generated imports and includes
Returns:
String The generated XSD.

generateSchema

private void generateSchema(java.lang.String uri,
                            java.util.List typesWithSameUri)

generateSimpleType

private org.eclipse.persistence.internal.oxm.schema.model.SimpleType generateSimpleType(Type type)

generateComplexType

private org.eclipse.persistence.internal.oxm.schema.model.ComplexType generateComplexType(Type type)

buildElementsAndAttributes

private void buildElementsAndAttributes(java.lang.Object owner,
                                        Type type)

addSimpleComponentAnnotations

private void addSimpleComponentAnnotations(org.eclipse.persistence.internal.oxm.schema.model.SimpleComponent sc,
                                           Property property,
                                           boolean element)

shouldSuppressDataType

private boolean shouldSuppressDataType(SDOProperty prop,
                                       Type dataType)

buildAliasNameString

private java.lang.String buildAliasNameString(java.util.List<java.lang.String> aliasNames)

buildElement

private org.eclipse.persistence.internal.oxm.schema.model.Element buildElement(Property property,
                                                                               org.eclipse.persistence.internal.oxm.schema.model.NestedParticle nestedParticle)

buildAttribute

private org.eclipse.persistence.internal.oxm.schema.model.Attribute buildAttribute(Property property)

addTypeToListIfNeeded

private void addTypeToListIfNeeded(Type sourceType,
                                   Type targetType)

buildElementForComplexType

private org.eclipse.persistence.internal.oxm.schema.model.Element buildElementForComplexType(org.eclipse.persistence.internal.oxm.schema.model.Schema schema,
                                                                                             org.eclipse.persistence.internal.oxm.schema.model.ComplexType type)

getPrefixStringForURI

private java.lang.String getPrefixStringForURI(java.lang.String uri)

getPrefixForURI

private java.lang.String getPrefixForURI(java.lang.String uri)

getAutomaticDataTypeForType

private Type getAutomaticDataTypeForType(Type theType)

importExists

private boolean importExists(java.util.List imports,
                             java.lang.String schemaName)

Skip navigation links

Copyright © 1998, 2012, Oracle. All Rights Reserved.