Interface of a source generator for complex types.
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
.
pMethod
- The method performing the type convertion.pValue
- The value being castedpData
- A piece of Java code holding an instance of
JMUnmarshallerHandler
;
may be used to support the conversion.
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.