Class ClassInfo

  • All Implemented Interfaces:
    ClassInfoIF

    public class ClassInfo
    extends Object
    implements ClassInfoIF
    INTERNAL: A class descriptor-like class that is used by the RDBMS proxy implementation to access the information it needs about the object relational class descriptor in an optimized manner.

    • Method Detail

      • compile

        protected void compile()
        INTERNAL: Compile the information in the class descriptor to an optimized form. Called from RDBSMapping, because calling it in the constructor leads to never-ending recursion.
      • getName

        public String getName()
        Description copied from interface: ClassInfoIF
        INTERNAL: Returns the name of the descriptor class (the mapped class).
        Specified by:
        getName in interface ClassInfoIF
      • getDescriptorClass

        public Class<?> getDescriptorClass()
        INTERNAL: Return the descriptor class described by the descriptor.
        Specified by:
        getDescriptorClass in interface ClassInfoIF
      • createInstance

        public Object createInstance​(boolean immutable)
                              throws Exception
        Description copied from interface: ClassInfoIF
        INTERNAL: Creates an instance of the descriptor class. Actual implementation will depend on the immutable argument.
        Specified by:
        createInstance in interface ClassInfoIF
        Throws:
        Exception
      • isAbstract

        public boolean isAbstract()
        Description copied from interface: ClassInfoIF
        INTERNAL: Returns true if the descriptor class is declared as an abstract descriptor.
        Specified by:
        isAbstract in interface ClassInfoIF
      • isIdentifiable

        public boolean isIdentifiable()
        Description copied from interface: ClassInfoIF
        INTERNAL: Returns true if the descriptor class is declared as a an identifiable type.
        Specified by:
        isIdentifiable in interface ClassInfoIF
      • isAggregate

        public boolean isAggregate()
        Description copied from interface: ClassInfoIF
        INTERNAL: Returns true if the descriptor class is declared as an aggregate type.
        Specified by:
        isAggregate in interface ClassInfoIF
      • getStructure

        public int getStructure()
        Description copied from interface: ClassInfoIF
        INTERNAL: Returns the structure of the descriptor class. This can either be OBJECT, COLLECTION or MAP.
        Specified by:
        getStructure in interface ClassInfoIF
      • getMasterTable

        public String getMasterTable()
        Description copied from interface: ClassInfoIF
        INTERNAL: Returns the name of the master table in which the class is stored. This is the table which typically contains the instance identity.
        Specified by:
        getMasterTable in interface ClassInfoIF
      • compileFieldInfos

        protected static FieldInfoIF[] compileFieldInfos​(ClassInfoIF cinfo,
                                                         FieldDescriptor[] fdescs)
        INTERNAL: Wraps the field descriptors in the appropriate field info implementations.
      • getFieldInfo

        protected static FieldInfoIF getFieldInfo​(ClassInfoIF cinfo,
                                                  FieldDescriptor fdesc,
                                                  int index)
        INTERNAL: Wraps the field descriptor in the appropriate field info implementation.