org.exolab.castor.builder

Class SourceFactory

public class SourceFactory extends BaseFactory

Creates the Java Source classes for Schema components.

Version: $Revision: 6391 $ $Date: 2006-04-25 15:08:23 -0600 (Tue, 25 Apr 2006) $

Author: Keith Visco Arnaud Blandin

Constructor Summary
SourceFactory(BuilderConfiguration config, FieldInfoFactory infoFactory, GroupNaming groupNaming)
Creates a new SourceFactory with the given FieldInfoFactory.
Method Summary
voidcreateEqualsMethod(JClass jclass)
Create an 'equals' method on the given JClass
static voidcreateHashCodeMethod(JClass jclass)
Create an "hashCode" method on the given JClass.
JClass[]createSourceCode(XMLBindingComponent component, SGStateInfo sgState)
Creates a new ClassInfo for the given XMLBindingComponent.
JClasscreateSourceCode(SimpleType simpleType, SGStateInfo sgState)
Creates the Java source code to support the given Simpletype
voidcreateTestableMethods(JClass jclass, FactoryState state)
Implement org.exolab.castor.tests.framework.CastorTestable im the given JClass.
voidsetCaseInsensitive(boolean caseInsensitive)
Set to true if enumerated type lookups should be performed in a case insensitive manner.
voidsetCreateExtraMethods(boolean extraMethods)
Sets whether or not to create extra collection methods for accessing the actual collection.
voidsetCreateMarshalMethods(boolean createMarshalMethods)
Sets whether or not to create the XML marshalling framework specific methods (marshall, unmarshall, validate) in the generated classes.
voidsetReferenceMethodSuffix(String suffix)
Sets the method suffix (ending) to use when creating the extra collection methods.
voidsetSAX1(boolean sax1)
Sets to true if SAX1 should be used in the marshall method.
voidsetTestable(boolean testable)
Sets whether or not to implement CastorTestable.

Constructor Detail

SourceFactory

public SourceFactory(BuilderConfiguration config, FieldInfoFactory infoFactory, GroupNaming groupNaming)
Creates a new SourceFactory with the given FieldInfoFactory.

Parameters: config the BuilderConfiguration instance (must not be null). infoFactory the FieldInfoFactory to use groupNaming Group naming scheme to be used.

Method Detail

createEqualsMethod

public void createEqualsMethod(JClass jclass)
Create an 'equals' method on the given JClass

Parameters: jclass the Jclass in which we create the equals method

createHashCodeMethod

public static void createHashCodeMethod(JClass jclass)
Create an "hashCode" method on the given JClass.

Parameters: jclass the JClass in wich we create the hashCode method.

createSourceCode

public JClass[] createSourceCode(XMLBindingComponent component, SGStateInfo sgState)
Creates a new ClassInfo for the given XMLBindingComponent.

Parameters: component the XMLBindingComponent that abstracts all XML Schema definition for a XML Schema component. sgState The given state of the SourceGenerator.

Returns: an array of JClasses reflecting the given XMLBindingComponent.

createSourceCode

public JClass createSourceCode(SimpleType simpleType, SGStateInfo sgState)
Creates the Java source code to support the given Simpletype

Parameters: simpleType the Simpletype to create the Java source for sgState the current SGStateInfo (cannot be null).

Returns: the JClass representation of the given Simpletype

createTestableMethods

public void createTestableMethods(JClass jclass, FactoryState state)
Implement org.exolab.castor.tests.framework.CastorTestable im the given JClass.

Parameters: jclass The JClass which will implement the CastorTestable Interface. state our state, e.g., state of this Factory instance.

setCaseInsensitive

public void setCaseInsensitive(boolean caseInsensitive)
Set to true if enumerated type lookups should be performed in a case insensitive manner.

Parameters: caseInsensitive when true

setCreateExtraMethods

public void setCreateExtraMethods(boolean extraMethods)
Sets whether or not to create extra collection methods for accessing the actual collection.

Parameters: extraMethods a boolean that when true indicates that extra collection accessor methods should be created. False by default.

See Also: SourceFactory

setCreateMarshalMethods

public void setCreateMarshalMethods(boolean createMarshalMethods)
Sets whether or not to create the XML marshalling framework specific methods (marshall, unmarshall, validate) in the generated classes. By default, these methods are generated.

Parameters: createMarshalMethods a boolean, when true indicates to generated the marshalling framework methods

setReferenceMethodSuffix

public void setReferenceMethodSuffix(String suffix)
Sets the method suffix (ending) to use when creating the extra collection methods.

Parameters: suffix the method suffix to use when creating the extra collection methods. If null or emtpty the default value, as specified in CollectionInfo will be used.

See Also: SourceFactory

setSAX1

public void setSAX1(boolean sax1)
Sets to true if SAX1 should be used in the marshall method.

Parameters: sax1 true if SAX1 should be used.

setTestable

public void setTestable(boolean testable)
Sets whether or not to implement CastorTestable.

Parameters: testable if true, indicates to implement CastorTestable

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