Class SGStateInfo

  • All Implemented Interfaces:
    ClassInfoResolver

    public final class SGStateInfo
    extends ClassInfoResolverImpl
    A class for maintaining state for the SourceGenerator.
    Version:
    $Revision: 7996 $ $Date: 2005-06-22 22:13:21 -0600 (Wed, 22 Jun 2005) $
    Author:
    Keith Visco
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int NORMAL_STATUS
      The SourceGenerator is still generating source.
      static int STOP_STATUS
      The SourceGenerator has been stopped by an error or by the user.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void bindSourceCode​(Annotated annotated, JClass[] classes)
      Binds the given Annotated structure with its generated source classes.
      java.util.Properties getCDRFile​(java.lang.String filename)
      Returns the CDRFile (Properties file) associated with the given filename.
      java.util.Enumeration<java.lang.String> getCDRFilenames()
      Returns the set of CDR file names.
      FactoryState getCurrentFactoryState()
      Returns the current FactoryState that holds information about the classes being generated.
      Dialog getDialog()
      Returns the Dialog used for interacting with the user.
      JClass getImportedSourceCode​(java.lang.String className)
      Returns the JClass with the given name or null if no bindings have been specified for a JClass with the name.
      java.util.Map<java.lang.String,​JClass> getImportedSourcesByName()
      Returns the sources as generated through XML schema imports.
      MappingRoot getMapping​(java.lang.String filename)
      Returns the Mapping file associated with the given filename.
      java.util.Enumeration<java.lang.String> getMappingFilenames()
      Returns the set of mapping filenames.
      java.lang.String getPackageName()
      Get package used when creating new classes.
      (package private) JClass getProcessed​(java.lang.String className)
      Returns the processed JClass with the given name.
      (package private) Schema getSchema()
      Returns a reference to the schema for which we are generating source.
      JClass getSourceCode​(java.lang.String className)
      Returns the JClass with the given name or null if no bindings have been specified for a JClass with the name.
      JClass[] getSourceCode​(Annotated annotated)
      Returns the array of JClass for the given Annotated structure or null if no bindings have been specified for the given Structure.
      SourceGenerator getSourceGenerator()
      Returns the SourceGenerator instance being used.
      java.util.Map<java.lang.String,​JClass> getSourcesByName()
      Returns the sources as generated through XML schema imports.
      int getStatusCode()
      Returns the current status.
      boolean getSuppressNonFatalWarnings()
      Returns true if non-fatal warnings should be suppressed.
      (package private) void markAsProcessed​(JClass jClass)
      Marks the given JClass as having been processed.
      (package private) boolean processed​(java.lang.String className)
      Returns true if a JClass with the given name has been marked as processed.
      (package private) boolean processed​(JClass jClass)
      Returns true if the given JClass has been marked as processed.
      (package private) boolean promptForOverwrite()
      Returns true if existing source files should be prompted before being overwritten.
      void setCDRFile​(java.lang.String filename, java.util.Properties props)
      Sets the CDR (ClassDescriptorResolver) file associated with the given filename.
      void setCurrentFactoryState​(FactoryState state)
      Sets the current FactoryState.
      (package private) void setDialog​(Dialog dialog)
      Sets the Dialog used for interacting with the user.
      void setMapping​(java.lang.String filename, MappingRoot mapping)
      Sets the Mapping file associated with the given filename.
      protected void setPackageName​(java.lang.String packageName)
      Set package used when creating new classes.
      (package private) void setPromptForOverwrite​(boolean promptForOverwrite)
      Sets whether or not existing source files should be silently overwritten or whether the user should be prompted first.
      void setStatusCode​(int status)
      Sets the current status code to the given one.
      (package private) void setSuppressNonFatalWarnings​(boolean suppressNonFatalWarnings)
      Sets whether non-fatal warnings should be supporessed.
      (package private) void setVerbose​(boolean verbose)
      Sets whether or not the source code generator prints additional messages during generating source code.
      void storeImportedSourcesByName​(java.util.Map<java.lang.String,​JClass> importedSourcesByName)
      Stores generated sources as processed within an imported schema.
      boolean verbose()
      Returns the value of the verbose flag.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • NORMAL_STATUS

        public static final int NORMAL_STATUS
        The SourceGenerator is still generating source.
        See Also:
        Constant Field Values
      • STOP_STATUS

        public static final int STOP_STATUS
        The SourceGenerator has been stopped by an error or by the user.
        See Also:
        Constant Field Values
    • Constructor Detail

      • SGStateInfo

        protected SGStateInfo​(Schema schema,
                              SourceGenerator sgen)
        Creates a new SGStateInfo.
        Parameters:
        schema - the Schema to generate source for
        sgen - the SourceGenerator instance
    • Method Detail

      • getPackageName

        public java.lang.String getPackageName()
        Get package used when creating new classes.
        Returns:
        Package used when creating new classes.
      • setPackageName

        protected void setPackageName​(java.lang.String packageName)
        Set package used when creating new classes.
        Parameters:
        packageName - Package used when creating new classes.
      • bindSourceCode

        public void bindSourceCode​(Annotated annotated,
                                   JClass[] classes)
        Binds the given Annotated structure with its generated source classes.
        Parameters:
        annotated - the Annotated structure to add JClass bindings for
        classes - the JClass[] to bind
      • storeImportedSourcesByName

        public void storeImportedSourcesByName​(java.util.Map<java.lang.String,​JClass> importedSourcesByName)
        Stores generated sources as processed within an imported schema.
        Parameters:
        importedSourcesByName - Generated sources as processed within an imported schema.
      • getProcessed

        JClass getProcessed​(java.lang.String className)
        Returns the processed JClass with the given name. If no such JClass has been marked as processed, null is returned.
        Parameters:
        className - the JClass name to check against
        Returns:
        the JClass with the given name
      • getSourceCode

        public JClass[] getSourceCode​(Annotated annotated)
        Returns the array of JClass for the given Annotated structure or null if no bindings have been specified for the given Structure.
        Parameters:
        annotated - the Annotated structure to search
        Returns:
        the JClass array
      • getSourceCode

        public JClass getSourceCode​(java.lang.String className)
        Returns the JClass with the given name or null if no bindings have been specified for a JClass with the name.
        Parameters:
        className - the name of the JClass
        Returns:
        the JClass if found
      • getImportedSourceCode

        public JClass getImportedSourceCode​(java.lang.String className)
        Returns the JClass with the given name or null if no bindings have been specified for a JClass with the name. This method consults with JClass instances imported through a Schema import only.
        Parameters:
        className - the name of the JClass
        Returns:
        the (imported) JClass if found
      • getMapping

        public MappingRoot getMapping​(java.lang.String filename)
        Returns the Mapping file associated with the given filename.
        Parameters:
        filename - The filename to search for a Mapping File association
        Returns:
        the Mapping file.
      • getCDRFile

        public java.util.Properties getCDRFile​(java.lang.String filename)
        Returns the CDRFile (Properties file) associated with the given filename.
        Parameters:
        filename - filename of the CDR file to be processed
        Returns:
        the Properties file.
      • getCDRFilenames

        public java.util.Enumeration<java.lang.String> getCDRFilenames()
        Returns the set of CDR file names.
        Returns:
        the set of CDR file names.
      • getMappingFilenames

        public java.util.Enumeration<java.lang.String> getMappingFilenames()
        Returns the set of mapping filenames.
        Returns:
        the set of mapping filenames.
      • getStatusCode

        public int getStatusCode()
        Returns the current status.
        Returns:
        the current status.
      • markAsProcessed

        void markAsProcessed​(JClass jClass)
        Marks the given JClass as having been processed.
        Parameters:
        jClass - the JClass to mark as having been processed.
      • processed

        boolean processed​(JClass jClass)
        Returns true if the given JClass has been marked as processed.
        Parameters:
        jClass - the JClass to check for being marked as processed
        Returns:
        true if the given JClass has been marked as processed.
      • processed

        boolean processed​(java.lang.String className)
        Returns true if a JClass with the given name has been marked as processed.
        Parameters:
        className - the JClass name to check against
        Returns:
        true if a JClass with the given name has been marked as processed
      • promptForOverwrite

        boolean promptForOverwrite()
        Returns true if existing source files should be prompted before being overwritten.
        Returns:
        true if existing source files should be prompted before being overwritten
      • setPromptForOverwrite

        void setPromptForOverwrite​(boolean promptForOverwrite)
        Sets whether or not existing source files should be silently overwritten or whether the user should be prompted first.
        Parameters:
        promptForOverwrite - true if existing files should not be silently overwritten.
      • getSchema

        Schema getSchema()
        Returns a reference to the schema for which we are generating source.
        Returns:
        a reference to the schema for which we are generating source.
      • getSourceGenerator

        public SourceGenerator getSourceGenerator()
        Returns the SourceGenerator instance being used.
        Returns:
        the SourceGenerator instance being used.
      • getSuppressNonFatalWarnings

        public boolean getSuppressNonFatalWarnings()
        Returns true if non-fatal warnings should be suppressed.
        Returns:
        true if non-fatal warnings should be suppressed.
      • setSuppressNonFatalWarnings

        void setSuppressNonFatalWarnings​(boolean suppressNonFatalWarnings)
        Sets whether non-fatal warnings should be supporessed.
        Parameters:
        suppressNonFatalWarnings - true if non-fatal warnings should be supporessed
      • setCDRFile

        public void setCDRFile​(java.lang.String filename,
                               java.util.Properties props)
        Sets the CDR (ClassDescriptorResolver) file associated with the given filename.
        Parameters:
        filename - the filename associated with the CDR file
        props - the Properties file
      • setMapping

        public void setMapping​(java.lang.String filename,
                               MappingRoot mapping)
        Sets the Mapping file associated with the given filename.
        Parameters:
        filename - the filename associated with the Mapping
        mapping - the MappingRoot
      • getDialog

        public Dialog getDialog()
        Returns the Dialog used for interacting with the user.
        Returns:
        the Dialog, or null if none has been set.
      • setDialog

        void setDialog​(Dialog dialog)
        Sets the Dialog used for interacting with the user.
        Parameters:
        dialog - the Dialog to use
      • setStatusCode

        public void setStatusCode​(int status)
        Sets the current status code to the given one.
        Parameters:
        status - the new status code
      • setVerbose

        void setVerbose​(boolean verbose)
        Sets whether or not the source code generator prints additional messages during generating source code.
        Parameters:
        verbose - a boolean, when true indicates to print additional messages
      • verbose

        public boolean verbose()
        Returns the value of the verbose flag. A true value indicates that additional messages may be printed during processing.
        Returns:
        the value of the verbose flag.
      • getCurrentFactoryState

        public FactoryState getCurrentFactoryState()
        Returns the current FactoryState that holds information about the classes being generated.
        Returns:
        the current FactoryState
      • setCurrentFactoryState

        public void setCurrentFactoryState​(FactoryState state)
        Sets the current FactoryState.
        Parameters:
        state - the current FactoryState
        See Also:
        getCurrentFactoryState()
      • getImportedSourcesByName

        public java.util.Map<java.lang.String,​JClass> getImportedSourcesByName()
        Returns the sources as generated through XML schema imports.
        Returns:
        the sources as generated through XML schema imports.
      • getSourcesByName

        public java.util.Map<java.lang.String,​JClass> getSourcesByName()
        Returns the sources as generated through XML schema imports.
        Returns:
        the sources as generated through XML schema imports.