org.exolab.castor.builder.factory
Class MemberFactory

java.lang.Object
  extended by org.exolab.castor.builder.factory.BaseFactory
      extended by org.exolab.castor.builder.factory.MemberFactory

public final class MemberFactory
extends BaseFactory

The "Factory" responsible for creating fields for the given schema components.

Version:
$Revision: 6985 $ $Date: 2006-04-25 15:08:23 -0600 (Tue, 25 Apr 2006) $
Author:
Keith Visco

Constructor Summary
MemberFactory(BuilderConfiguration config, FieldInfoFactory infoFactory, GroupNaming groupNaming, SourceGenerator sourceGenerator)
          Creates a new MemberFactory using the given FieldInfo factory.
 
Method Summary
 FieldInfo createFieldInfo(XMLBindingComponent component, ClassInfoResolver resolver, boolean useJava50)
          Creates a FieldInfo object for the given XMLBindingComponent.
 FieldInfo createFieldInfoForAny(Wildcard any, boolean useJava50)
          Creates a FieldInfo for content models that support "any" element.
 FieldInfo createFieldInfoForChoiceValue()
          Creates a FieldInfo to hold the value of a choice.
 FieldInfo createFieldInfoForContent(XMLBindingComponent component, XSType xsType, boolean useJava50)
          Creates a FieldInfo for content.
 
Methods inherited from class org.exolab.castor.builder.factory.BaseFactory
createComment, extractCommentsFromAnnotations, getConfig, getGroupNaming, getInfoFactory, getSourceGenerator, normalize, setGroupNaming
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MemberFactory

public MemberFactory(BuilderConfiguration config,
                     FieldInfoFactory infoFactory,
                     GroupNaming groupNaming,
                     SourceGenerator sourceGenerator)
Creates a new MemberFactory using the given FieldInfo factory.

Parameters:
config - the BuilderConfiguration
infoFactory - the FieldInfoFactory to use
groupNaming - Grou pnaming scheme to be used.
sourceGenerator - Calling source generator
Method Detail

createFieldInfoForAny

public FieldInfo createFieldInfoForAny(Wildcard any,
                                       boolean useJava50)
Creates a FieldInfo for content models that support "any" element.

Parameters:
any - the wildcard we will operate on
useJava50 - if true then we will generate code for Java 5
Returns:
the new FieldInfo

createFieldInfoForChoiceValue

public FieldInfo createFieldInfoForChoiceValue()
Creates a FieldInfo to hold the value of a choice.

Returns:
the new FieldInfo

createFieldInfoForContent

public FieldInfo createFieldInfoForContent(XMLBindingComponent component,
                                           XSType xsType,
                                           boolean useJava50)
Creates a FieldInfo for content.

Parameters:
component - XMLBindingComponent instance for accessing binding information.
xsType - the type of content
useJava50 - if true, code will be generated for Java 5
Returns:
the new FieldInfo

createFieldInfo

public FieldInfo createFieldInfo(XMLBindingComponent component,
                                 ClassInfoResolver resolver,
                                 boolean useJava50)
Creates a FieldInfo object for the given XMLBindingComponent.

Parameters:
component - the XMLBindingComponent to create the FieldInfo for
resolver - resolver to use to find ClassInfo
useJava50 - if true, code will be generated for Java 5
Returns:
the FieldInfo for the given attribute declaration


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