org.apache.ws.jaxme.generator.sg

Interface SimpleTypeSG

All Superinterfaces:
SGItem
Known Implementing Classes:
SimpleTypeSGImpl

public interface SimpleTypeSG
extends SGItem

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

Method Summary

void
addValidation(JavaMethod pMethod, DirectAccessible pValue)
Adds code for validating the value pValue to the "add" or "set" method pMethod.
void
forAllNonNullValues(JavaMethod pMethod, Object pValue, SGlet pSGlet)
Invokes the given SGlet on any non null value.
void
forAllValues(JavaMethod pMethod, Object pValue, SGlet pSGlet)
Invokes the given SGlet on any value, assuming they are non null.
void
generate()
Generates helper classes required by the simple type.
void
generate(JavaSource pSource)
Generates helper classes required by the simple type.
AtomicTypeSG
getAtomicType()
If the simple type is atomic: Returns its atomic type details.
TypedValue
getCastFromString(String pValue)
Returns a piece of Java code converting the string pValue into the runtime type.
TypedValue
getCastFromString(JavaMethod pMethod, Object pValue, Object pData)
Returns a piece of Java code converting the string pValue into the runtime type.
TypedValue
getCastToString(JavaMethod pMethod, Object pValue, DirectAccessible pData)
Returns a piece of Java code converting the runtime type pValue into a string.
String
getCollectionType()
Returns the collection type, which is either of "indexed" (an array) or a list implementation, as specified by JAXB's property tag.
Object
getEqualsCheck(JavaMethod pMethod, Object pValue1, Object pValue2)
Returns code creating a boolean value indicating whether the given values are equal.
Facet
getFacet(Facet.Type pType)
Returns the simple types facets with the given type or null, if no such facet exists.
Facet[]
getFacets()
Returns all of the simple types facets.
Object
getInitialValue(JavaSource pSource)
Returns the types initial value, as created by the constructor.
ListTypeSG
getListType()
If the simple type is a list: Returns its item type details.
JavaQName
getRuntimeType()
Returns the data types runtime type.
UnionTypeSG
getUnionType()
If the simple type is a union: Returns its union type details.
JavaMethod
getXMLSetMethod(JavaSource pSource, String pFieldName, String pParamName, String pMethodName)
Generates a set method for the simple type.
boolean
hasSetMethod()
Returns whether the simple type does have a "set" method.
boolean
isAtomic()
Returns whether the simple type is atomic.
boolean
isCausingParseConversionEvent()
Returns whether converting this type from a string can cause a ParseConversionEvent.
boolean
isList()
Returns whether the simple type is a list.
boolean
isNullable()
Returns whether the simple type is nullable.
boolean
isUnion()
Returns whether the simple type is a union.
void
setNullable(boolean pNullable)
Sets whether the simple type is nullable.

Methods inherited from interface org.apache.ws.jaxme.generator.sg.SGItem

getFactory, getLocator, getSchema, init

Method Details

addValidation

public void addValidation(JavaMethod pMethod,
                          DirectAccessible pValue)
            throws SAXException
Adds code for validating the value pValue to the "add" or "set" method pMethod.

forAllNonNullValues

public void forAllNonNullValues(JavaMethod pMethod,
                                Object pValue,
                                SGlet pSGlet)
            throws SAXException
Invokes the given SGlet on any non null value.

forAllValues

public void forAllValues(JavaMethod pMethod,
                         Object pValue,
                         SGlet pSGlet)
            throws SAXException
Invokes the given SGlet on any value, assuming they are non null.

generate

public void generate()
            throws SAXException
Generates helper classes required by the simple type.

generate

public void generate(JavaSource pSource)
            throws SAXException
Generates helper classes required by the simple type. The generated classes are inner classes of the given.

getAtomicType

public AtomicTypeSG getAtomicType()
If the simple type is atomic: Returns its atomic type details.

getCastFromString

public TypedValue getCastFromString(String pValue)
            throws SAXException
Returns a piece of Java code converting the string pValue into the runtime type. Conversion occurs at compile time.

getCastFromString

public TypedValue getCastFromString(JavaMethod pMethod,
                                    Object pValue,
                                    Object pData)
            throws SAXException
Returns a piece of Java code converting the string pValue into the runtime type. Conversion occurs at runtime, using the given instance of JMUnmarshallerHandler.
Parameters:
pMethod - The method performing the type convertion.
pValue - The value being casted
pData - A piece of Java code holding an instance of JMUnmarshallerHandler; may be used to support the conversion.

getCastToString

public TypedValue getCastToString(JavaMethod pMethod,
                                  Object pValue,
                                  DirectAccessible pData)
            throws SAXException
Returns a piece of Java code converting the runtime type pValue into a string. Conversion occurs at runtime, using the given instance of JMUnmarshallerHandlerImpl.

getCollectionType

public String getCollectionType()
Returns the collection type, which is either of "indexed" (an array) or a list implementation, as specified by JAXB's property tag.

getEqualsCheck

public Object getEqualsCheck(JavaMethod pMethod,
                             Object pValue1,
                             Object pValue2)
            throws SAXException
Returns code creating a boolean value indicating whether the given values are equal.

getFacet

public Facet getFacet(Facet.Type pType)
Returns the simple types facets with the given type or null, if no such facet exists.

getFacets

public Facet[] getFacets()
Returns all of the simple types facets.

getInitialValue

public Object getInitialValue(JavaSource pSource)
            throws SAXException
Returns the types initial value, as created by the constructor.

getListType

public ListTypeSG getListType()
If the simple type is a list: Returns its item type details.

getRuntimeType

public JavaQName getRuntimeType()
Returns the data types runtime type.

getUnionType

public UnionTypeSG getUnionType()
If the simple type is a union: Returns its union type details.

getXMLSetMethod

public JavaMethod getXMLSetMethod(JavaSource pSource,
                                  String pFieldName,
                                  String pParamName,
                                  String pMethodName)
            throws SAXException
Generates a set method for the simple type.

hasSetMethod

public boolean hasSetMethod()
            throws SAXException
Returns whether the simple type does have a "set" method.

isAtomic

public boolean isAtomic()
Returns whether the simple type is atomic.

isCausingParseConversionEvent

public boolean isCausingParseConversionEvent()

isList

public boolean isList()
Returns whether the simple type is a list.

isNullable

public boolean isNullable()
Returns whether the simple type is nullable.

isUnion

public boolean isUnion()
Returns whether the simple type is a union.

setNullable

public void setNullable(boolean pNullable)
Sets whether the simple type is nullable.