org.apache.ws.jaxme.generator.sg

Interface ComplexTypeSG

Known Implementing Classes:
ComplexTypeSGImpl

public interface ComplexTypeSG

Interface of a source generator for complex types.
Author:
Jochen Wiedmann

Method Summary

void
addAttributeSG(AttributeSG pAttribute)
Adds the given AttributeSG to the list of attributes and invokes the method SGItem.init() on it.
AttributeSG[]
getAttributes()
Returns the data types array of attributes.
Context
getClassContext()
Returns the datatypes runtime type, which is the binding interface.
ComplexContentSG
getComplexContentSG()
If the data type has complex content: Returns an instance of ComplexContentSG.
Locator
getLocator()
Returns the types Locator.
SimpleContentSG
getSimpleContentSG()
If the data type has simple content: Returns an instance of SimpleContentSG.
TypeSG
getTypeSG()
Returns the TypeSG that created this instance.
JavaSource
getXMLHandler(JavaQName pQName)
Generates the types XML handler as a standalone class.
JavaSource
getXMLHandler(JavaSource pSource)
Generates the types XML handler as an inner class of the given.
JavaSource
getXMLImplementation()
Generates the types implementation as a standalone class.
JavaSource
getXMLImplementation(JavaSource pSource)
Generates the types implementation as an inner class of the given.
JavaSource
getXMLInterface()
Generates the types interface as a standalone class.
JavaSource
getXMLInterface(JavaSource pSource)
Generates the types interface as an inner class of the given.
JavaSource
getXMLSerializer()
Generates the types XML serializer as a standalone class.
JavaSource
getXMLSerializer(JavaSource pSource)
Generates the types XML serializer as an inner class of the given.
boolean
hasAttributes()
Returns whether the data type has attributes.
boolean
hasSimpleContent()
Returns whether the data type has simple content.
void
init()
Initializes the instance.
Object
newAttributeSG(XSAttribute pAttribute)
Creates a new instance of AttributeSGChain generating the given attribute.
Object
newAttributeSG(XSWildcard pWildcard)
Creates a new instance of AttributeSGChain generating the given wildcard attributes.
Object
newComplexContentTypeSG()
If the complex type has complex content: Creates an instance of ComplexContentSGChain generating the given complex type.
Object
newSimpleContentTypeSG()
If the complex type has simple content: Creates an instance of SimpleContentSGChain generating the type.

Method Details

addAttributeSG

public void addAttributeSG(AttributeSG pAttribute)
            throws SAXException
Adds the given AttributeSG to the list of attributes and invokes the method SGItem.init() on it.

getAttributes

public AttributeSG[] getAttributes()
Returns the data types array of attributes.

getClassContext

public Context getClassContext()
Returns the datatypes runtime type, which is the binding interface.

getComplexContentSG

public ComplexContentSG getComplexContentSG()
If the data type has complex content: Returns an instance of ComplexContentSG. Uses newComplexContentTypeSG() internally.

getLocator

public Locator getLocator()
Returns the types Locator.

getSimpleContentSG

public SimpleContentSG getSimpleContentSG()
If the data type has simple content: Returns an instance of SimpleContentSG. Uses newSimpleContentTypeSG() internally.

getTypeSG

public TypeSG getTypeSG()
Returns the TypeSG that created this instance.

getXMLHandler

public JavaSource getXMLHandler(JavaQName pQName)
            throws SAXException
Generates the types XML handler as a standalone class. This is used for global types.

getXMLHandler

public JavaSource getXMLHandler(JavaSource pSource)
            throws SAXException
Generates the types XML handler as an inner class of the given. This is used for local types.

getXMLImplementation

public JavaSource getXMLImplementation()
            throws SAXException
Generates the types implementation as a standalone class. This is used for global types.

getXMLImplementation

public JavaSource getXMLImplementation(JavaSource pSource)
            throws SAXException
Generates the types implementation as an inner class of the given.

getXMLInterface

public JavaSource getXMLInterface()
            throws SAXException
Generates the types interface as a standalone class. This is used for global types.

getXMLInterface

public JavaSource getXMLInterface(JavaSource pSource)
            throws SAXException
Generates the types interface as an inner class of the given.

getXMLSerializer

public JavaSource getXMLSerializer()
            throws SAXException
Generates the types XML serializer as a standalone class. This is used for global types.

getXMLSerializer

public JavaSource getXMLSerializer(JavaSource pSource)
            throws SAXException
Generates the types XML serializer as an inner class of the given. This is used for local types.

hasAttributes

public boolean hasAttributes()
Returns whether the data type has attributes.

hasSimpleContent

public boolean hasSimpleContent()
Returns whether the data type has simple content.

init

public void init()
            throws SAXException
Initializes the instance.

newAttributeSG

public Object newAttributeSG(XSAttribute pAttribute)
            throws SAXException
Creates a new instance of AttributeSGChain generating the given attribute.

newAttributeSG

public Object newAttributeSG(XSWildcard pWildcard)
            throws SAXException
Creates a new instance of AttributeSGChain generating the given wildcard attributes.

newComplexContentTypeSG

public Object newComplexContentTypeSG()
            throws SAXException
If the complex type has complex content: Creates an instance of ComplexContentSGChain generating the given complex type.

Implementation note: The type ComplexContentSGChain must not be exposed in the interface, because the interface class is used to generate this type. In other words, this interface must be compilable without the ComplexContentSGChain interface.


newSimpleContentTypeSG

public Object newSimpleContentTypeSG()
            throws SAXException
If the complex type has simple content: Creates an instance of SimpleContentSGChain generating the type.

Implementation note: The type SimpleContentSGChain must not be exposed in the interface, because the interface class is used to generate this type. In other words, this interface must be compilable without the SimpleContentSGChain interface.