org.exolab.castor.builder.types
Class XSClass

java.lang.Object
  extended by org.exolab.castor.builder.types.XSType
      extended by org.exolab.castor.builder.types.XSClass

public final class XSClass
extends XSType

The XML Schema user-defined archetype.

Version:
$Revision: 6907 $ $Date: 2003-03-03 00:05:44 -0700 (Mon, 03 Mar 2003) $
Author:
Keith Visco, Ralf Joachim

Field Summary
static short TYPE
          Type number of this XSType.
 
Fields inherited from class org.exolab.castor.builder.types.XSType
ANYURI_TYPE, BASE64BINARY_TYPE, BOOLEAN_TYPE, BYTE_TYPE, CLASS, COLLECTION, DATE_TYPE, DATETIME_TYPE, DECIMAL_TYPE, DOUBLE_TYPE, DURATION_TYPE, ENTITIES, ENTITY, FLOAT_TYPE, GDAY_TYPE, GMONTH_TYPE, GMONTHDAY_TYPE, GYEAR_TYPE, GYEARMONTH_TYPE, HEXBINARY_TYPE, ID_TYPE, IDREF_TYPE, IDREFS_TYPE, INT_TYPE, INTEGER_TYPE, LANGUAGE_TYPE, LONG_TYPE, NAME_TYPE, NCNAME_TYPE, NEGATIVE_INTEGER_TYPE, NMTOKEN_TYPE, NMTOKENS_TYPE, NON_NEGATIVE_INTEGER_TYPE, NON_POSITIVE_INTEGER_TYPE, NORMALIZEDSTRING_TYPE, NOTATION_TYPE, NULL, POSITIVE_INTEGER_TYPE, QNAME_TYPE, SHORT_TYPE, STRING_TYPE, TIME_TYPE, TOKEN_TYPE, UNSIGNED_BYTE_TYPE, UNSIGNED_INT_TYPE, UNSIGNED_LONG_TYPE, UNSIGNED_SHORT_TYPE
 
Constructor Summary
XSClass(JClass jClass)
          Creates a new XSClass with the given JClass reference.
XSClass(JClass jClass, java.lang.String schemaTypeName)
          Creates a new XSClass with the given JClass reference.
 
Method Summary
 java.lang.String createFromJavaObjectCode(java.lang.String variableName)
          Returns the string necessary to convert an Object to an instance of this XSType.
 java.lang.String createToJavaObjectCode(java.lang.String variableName)
          Returns the string necessary to convert an instance of this XSType to an Object.
 JType getJType()
          Returns the JType that this XSType represents.
 java.lang.String getName()
          Returns the name of this XSType.
 short getType()
          Returns the type of this XSType.
 boolean isDateTime()
          Returns true if the XSType represents an XML Schema date/time type.
 boolean isPrimitive()
          Returns true if this XSType represents a primitive type.
 java.lang.String newInstanceCode()
          Returns the Java code neccessary to create a new instance of the JType associated with this XSType.
protected  void setFacet(Facet facet)
          Set the given facet for XSType if applicable.
 void validationCode(JSourceCode jsc, java.lang.String fixedValue, java.lang.String validatorInstanceName)
          Creates the validation code for an instance of this XSType.
 
Methods inherited from class org.exolab.castor.builder.types.XSType
isCollection, isEnumerated, setAsEnumerated, setFacets
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

TYPE

public static final short TYPE
Type number of this XSType.

See Also:
Constant Field Values
Constructor Detail

XSClass

public XSClass(JClass jClass)
Creates a new XSClass with the given JClass reference.

Parameters:
jClass - The JClass type of this XSClass.

XSClass

public XSClass(JClass jClass,
               java.lang.String schemaTypeName)
Creates a new XSClass with the given JClass reference.

Parameters:
jClass - The JClass associated with this XSType.
schemaTypeName - The XML Schema type name.
Method Detail

getName

public java.lang.String getName()
Returns the name of this XSType.

Specified by:
getName in class XSType
Returns:
The name of this XSType.

getType

public short getType()
Returns the type of this XSType.

Specified by:
getType in class XSType
Returns:
the type of this XSType.

isPrimitive

public boolean isPrimitive()
Returns true if this XSType represents a primitive type.

Specified by:
isPrimitive in class XSType
Returns:
True if this XSType represents a primitive type.

isDateTime

public boolean isDateTime()
Returns true if the XSType represents an XML Schema date/time type.

Specified by:
isDateTime in class XSType
Returns:
True if the XSType represents an XML Schema date/time type.

getJType

public JType getJType()
Returns the JType that this XSType represents.

Specified by:
getJType in class XSType
Returns:
The JType that this XSType represents.

newInstanceCode

public java.lang.String newInstanceCode()
Returns the Java code neccessary to create a new instance of the JType associated with this XSType.

Specified by:
newInstanceCode in class XSType
Returns:
The Java code neccessary to create a new instance.

createToJavaObjectCode

public java.lang.String createToJavaObjectCode(java.lang.String variableName)
Returns the string necessary to convert an instance of this XSType to an Object. This method is really only useful for primitive types.

Specified by:
createToJavaObjectCode in class XSType
Parameters:
variableName - The name of the instance variable.
Returns:
The String necessary to convert an instance of this XSType to an Object.

createFromJavaObjectCode

public java.lang.String createFromJavaObjectCode(java.lang.String variableName)
Returns the string necessary to convert an Object to an instance of this XSType. This method is really only useful for primitive types.

Specified by:
createFromJavaObjectCode in class XSType
Parameters:
variableName - The name of the Object.
Returns:
The String necessary to convert an Object to an instance of this XSType.

setFacet

protected void setFacet(Facet facet)
Set the given facet for XSType if applicable.

Specified by:
setFacet in class XSType
Parameters:
facet - The facet to set for XSType.

validationCode

public void validationCode(JSourceCode jsc,
                           java.lang.String fixedValue,
                           java.lang.String validatorInstanceName)
Creates the validation code for an instance of this XSType. If necessary the validation code should create a newly configured TypeValidator, that should then be added to a FieldValidator instance whose name is provided.

Specified by:
validationCode in class XSType
Parameters:
jsc - The JSourceCode to fill in.
fixedValue - A fixed value to use if any.
validatorInstanceName - The name of the FieldValidator that the configured TypeValidator should be added to.


Intalio Inc. (C) 1999-2007. All rights reserved http://www.intalio.com