Class Helper

  • All Implemented Interfaces:
    AuxGen
    Direct Known Subclasses:
    Helper24

    public class Helper
    extends java.lang.Object
    implements AuxGen
    • Constructor Summary

      Constructors 
      Constructor Description
      Helper()
      Public zero-argument constructor.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void closeStream()
      Write the stream to file by closing the print stream.
      void generate​(java.util.Hashtable symbolTable, SymtabEntry entry)
      Generate the helper class.
      protected void init()
      Initialize variables unique to this generator.
      protected void openStream()
      Open the print stream for subsequent output.
      protected java.lang.String stubName​(InterfaceEntry entry)
      Return the stub name for the interface entry.
      protected void writeBody()
      Generate members of this class.
      protected void writeClosing()
      Generate the closing statements.
      protected void writeCtors()
      Generate the constructors.
      protected void writeExtract()
      Generate the extract method.
      protected void writeGetClass()
      Generate the get_class method.
      protected void writeGetID()
      Generate the GetID method.
      protected void writeGetInstance()
      Generate the get_instance method.
      protected void writeGetSafeBaseIds()
      Generate the GetSafeBaseIds method.
      protected void writeGetType()
      Generate the GetType method.
      protected void writeHeading()
      Generate the heading, including package, imports, class statements, and open curly.
      protected void writeHelperInterface()
      Generate members of the Helper interface.
      protected void writeID()
      Generate the ID method.
      protected void writeInsert()
      Generate the insert method.
      protected void writeInstVars()
      Generate the instance variables.
      protected void writeNarrow()
      Generate the narrow method.
      protected void writeRead()
      Generate the read method.
      protected void writeRemoteNarrow()
      Write the narrow() method for a remotable object.
      private void writeRemoteNarrowForAbstract​(boolean hasAbstractParent)
      Write the narrow() method for abstract interface.
      private void writeRemoteNarrowForLocal​(boolean hasAbstractParent)
      Write the narrow() method for local interface.
      private void writeRemoteUncheckedNarrowForAbstract​(boolean hasAbstractParent)
      Write the unchecked narrow() method for abstract interface.
      private void writeRemoteUncheckedNarrowForLocal​(boolean hasAbstractParent)
      Write the unchecked narrow() method for local interface.
      protected void writeType()
      Generate the typecode variable and type method.
      protected void writeUncheckedNarrow()
      Generate the unchecked narrow method.
      protected void writeUncheckedRemoteNarrow()
      Write the unchecked narrow() method for a remotable object.
      protected void writeValueHelperInterface()
      Generate members of the ValueHelper interface.
      protected void writeWrite()
      Generate the write method.
      • Methods inherited from class java.lang.Object

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

      • symbolTable

        protected java.util.Hashtable symbolTable
      • helperClass

        protected java.lang.String helperClass
      • helperType

        protected java.lang.String helperType
    • Constructor Detail

      • Helper

        public Helper()
        Public zero-argument constructor.
    • Method Detail

      • generate

        public void generate​(java.util.Hashtable symbolTable,
                             SymtabEntry entry)
        Generate the helper class. Provides general algorithm for auxiliary binding generation: 1.) Initialize symbol table and symbol table entry members, common to all generators. 2.) Initialize members unique to this generator. 3.) Open print stream 4.) Write class heading: package, prologue, class statement, open curly 5.) Write class body: member data and methods 6.) Write class closing: close curly 7.) Close the print stream
        Specified by:
        generate in interface AuxGen
      • init

        protected void init()
        Initialize variables unique to this generator.
      • openStream

        protected void openStream()
        Open the print stream for subsequent output.
      • writeHeading

        protected void writeHeading()
        Generate the heading, including package, imports, class statements, and open curly.
      • writeBody

        protected void writeBody()
        Generate members of this class.
      • writeHelperInterface

        protected void writeHelperInterface()
        Generate members of the Helper interface.
      • writeValueHelperInterface

        protected void writeValueHelperInterface()
        Generate members of the ValueHelper interface.
      • writeClosing

        protected void writeClosing()
        Generate the closing statements.
      • closeStream

        protected void closeStream()
        Write the stream to file by closing the print stream.
      • writeInstVars

        protected void writeInstVars()
        Generate the instance variables.
      • writeCtors

        protected void writeCtors()
        Generate the constructors.
      • writeInsert

        protected void writeInsert()
        Generate the insert method.
      • writeExtract

        protected void writeExtract()
        Generate the extract method.
      • writeType

        protected void writeType()
        Generate the typecode variable and type method.
      • writeID

        protected void writeID()
        Generate the ID method.
      • writeRead

        protected void writeRead()
        Generate the read method.
      • writeWrite

        protected void writeWrite()
        Generate the write method.
      • writeNarrow

        protected void writeNarrow()
        Generate the narrow method.
      • writeRemoteNarrow

        protected void writeRemoteNarrow()
        Write the narrow() method for a remotable object.
      • writeRemoteNarrowForLocal

        private void writeRemoteNarrowForLocal​(boolean hasAbstractParent)
        Write the narrow() method for local interface.
      • writeRemoteNarrowForAbstract

        private void writeRemoteNarrowForAbstract​(boolean hasAbstractParent)
        Write the narrow() method for abstract interface.
      • writeUncheckedNarrow

        protected void writeUncheckedNarrow()
        Generate the unchecked narrow method.
      • writeUncheckedRemoteNarrow

        protected void writeUncheckedRemoteNarrow()
        Write the unchecked narrow() method for a remotable object.
      • writeRemoteUncheckedNarrowForLocal

        private void writeRemoteUncheckedNarrowForLocal​(boolean hasAbstractParent)
        Write the unchecked narrow() method for local interface.
      • writeRemoteUncheckedNarrowForAbstract

        private void writeRemoteUncheckedNarrowForAbstract​(boolean hasAbstractParent)
        Write the unchecked narrow() method for abstract interface.
      • writeGetID

        protected void writeGetID()
        Generate the GetID method.
      • writeGetType

        protected void writeGetType()
        Generate the GetType method.
      • writeGetClass

        protected void writeGetClass()
        Generate the get_class method.
      • writeGetInstance

        protected void writeGetInstance()
        Generate the get_instance method.
      • writeGetSafeBaseIds

        protected void writeGetSafeBaseIds()
        Generate the GetSafeBaseIds method.
      • stubName

        protected java.lang.String stubName​(InterfaceEntry entry)
        Return the stub name for the interface entry.