Class EnumerationFactory


  • public final class EnumerationFactory
    extends BaseFactory
    This class creates the Java sources for XML Schema components that define an enumeration.
    Version:
    $Revision: 6287 $ $Date: 2006-04-25 15:08:23 -0600 (Tue, 25 Apr 2006) $
    Author:
    Werner Guttmann
    • Constructor Detail

      • EnumerationFactory

        public EnumerationFactory​(BuilderConfiguration config,
                                  GroupNaming groupNaming,
                                  SourceGenerator sourceGenerator)
        Creates a new EnumerationFactory for the builder configuration given.
        Parameters:
        config - the current BuilderConfiguration instance.
        groupNaming - The group naming scheme to be used.
        sourceGenerator - the calling source generator.
    • Method Detail

      • processEnumerationAsBaseType

        void processEnumerationAsBaseType​(ExtendedBinding binding,
                                          SimpleType simpleType,
                                          FactoryState state)
        Creates all the necessary enumeration code from the given SimpleType. Enumerations are handled by creating an Object like the following:
             public class {name} {
                 // list of values
                 {type}[] values = {
                     ...
                 };
         
                 // Returns true if the given value is part
                 // of this enumeration
                 public boolean contains({type} value);
         
                 // Returns the {type} value whose String value
                 // is equal to the given String
                 public {type} valueOf(String strValue);
             }
         
        Parameters:
        binding - Extended binding instance
        simpleType - the SimpleType we are processing an enumeration for
        state - our current state
      • 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