org.exolab.castor.builder.factory
Class FieldInfoFactory

java.lang.Object
  extended by org.exolab.castor.builder.factory.FieldInfoFactory

public class FieldInfoFactory
extends java.lang.Object

This class is used as a factory to create all the FieldInfo objects used by the source generator. You may override the FieldInfo classes and this factory for specific adaptions.

Version:
$Revision: 7148 $ $Date: 2005-03-05 06:42:06 -0700 (Sat, 05 Mar 2005) $
Author:
Frank Thelen, Arnaud Blandin

Constructor Summary
FieldInfoFactory()
          Creates a new FieldInfoFactory.
FieldInfoFactory(java.lang.String collectionName)
          Creates a new FieldInfoFactory of the given type.
 
Method Summary
 CollectionInfo createCollection(XSType contentType, java.lang.String name, java.lang.String elementName, JavaNaming javaNaming, boolean usejava50)
          Creates a CollectionInfo instance based upon the various parameters provided.
 CollectionInfo createCollection(XSType contentType, java.lang.String name, java.lang.String elementName, java.lang.String collectionName, JavaNaming javaNaming, boolean useJava50)
          Creates a CollectionInfo instance based upon the various parameters provided.
 FieldInfo createFieldInfo(XSType type, java.lang.String name)
          Creates a FieldInfo instance for the given XSType and its name.
 IdentityInfo createIdentity(java.lang.String name)
          Creates an IdentityInfo instance for the given name.
 void setBoundProperties(boolean bound)
          Sets whether or not the fields should be bound properties.
 void setCreateExtraMethods(boolean extraMethods)
          Sets whether or not to create extra collection methods for accessing the actual collection.
 void setReferenceMethodSuffix(java.lang.String suffix)
          Sets the method suffix (ending) to use when creating the extra collection methods.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FieldInfoFactory

public FieldInfoFactory()
Creates a new FieldInfoFactory. The default collection used will be Java 1 type.


FieldInfoFactory

public FieldInfoFactory(java.lang.String collectionName)
Creates a new FieldInfoFactory of the given type.

Parameters:
collectionName - The type for the FieldInfoFactory.
Method Detail

createIdentity

public IdentityInfo createIdentity(java.lang.String name)
Creates an IdentityInfo instance for the given name.

Parameters:
name - Identity field name.
Returns:
The IdentityInfo instance just created.

createCollection

public CollectionInfo createCollection(XSType contentType,
                                       java.lang.String name,
                                       java.lang.String elementName,
                                       JavaNaming javaNaming,
                                       boolean usejava50)
Creates a CollectionInfo instance based upon the various parameters provided.

Parameters:
contentType - Content type of the collection.
name - Name of the collection member.
elementName - Name of the (content) element.
javaNaming - the Java naming to be used
usejava50 - Whether we are targeting Java 5.0 or above or not
Returns:
A CollectionInfo instance representing a collection typed member.
See Also:
#createCollection(XSType, String, String, String, boolean)

createCollection

public CollectionInfo createCollection(XSType contentType,
                                       java.lang.String name,
                                       java.lang.String elementName,
                                       java.lang.String collectionName,
                                       JavaNaming javaNaming,
                                       boolean useJava50)
Creates a CollectionInfo instance based upon the various parameters provided.

Parameters:
contentType - Content type of the collection.
name - Name of the collection member.
elementName - Name of the (content) element.
collectionName - Name of the collection.
javaNaming - the Java naming to be used
useJava50 - Whether we are targeting Java 5.0 or above or not
Returns:
A CollectionInfo instance representing a collection typed member.

createFieldInfo

public FieldInfo createFieldInfo(XSType type,
                                 java.lang.String name)
Creates a FieldInfo instance for the given XSType and its name.

Parameters:
type - XSType of the field.
name - Field name.
Returns:
The FieldInfo instance just created.

setBoundProperties

public final void setBoundProperties(boolean bound)
Sets whether or not the fields should be bound properties.

Parameters:
bound - a boolean that when true indicates the FieldInfo should have the bound property enabled.

setCreateExtraMethods

public final 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:
org.exolab.castor.builder.FieldInfoFactory#setReferenceMethodSuffix

setReferenceMethodSuffix

public final void setReferenceMethodSuffix(java.lang.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:
org.exolab.castor.builder.FieldInfoFactory#setCreateExtraMethods


Copyright © 2011. All Rights Reserved.