Class MappingGenerator

java.lang.Object
com.sun.jdo.api.persistence.mapping.ejb.MappingGenerator

public class MappingGenerator extends Object
  • Constructor Details

    • MappingGenerator

      public MappingGenerator(EJBInfoHelper infoHelper, ClassLoader loader, boolean skipGeneratedFields)
      Constructor
      Parameters:
      infoHelper - an instance of an EJBInfoHelper
      loader - a class loader
      skipGeneratedFields - a boolean indicating to remove generated fields from jdo model and mapping model
  • Method Details

    • getInfoHelper

      protected EJBInfoHelper getInfoHelper()
    • getClassLoader

      protected ClassLoader getClassLoader()
    • getNameMapper

      protected AbstractNameMapper getNameMapper()
    • getConversionHelper

      protected ConversionHelper getConversionHelper()
    • generateMappingClasses

      public com.sun.jdo.spi.persistence.generator.database.DatabaseGenerator.Results generateMappingClasses(String dbName, Boolean uniqueTableNames, Properties userPolicy, String inputFilesPath) throws IOException, org.netbeans.modules.schema2beans.Schema2BeansException, com.sun.jdo.api.persistence.model.ModelException, org.netbeans.modules.dbschema.DBException, ConversionException
      Create mapping classes and schema based on database vendor name.
      Parameters:
      dbName - a string for database vendor name
      uniqueTableNames - a Boolean to determin if use unique table names during database generation
      userPolicy - a property object holding user overrides
      inputFilesPath - a directory where sun-cmp-mappings.xml is located
      Throws:
      IOException
      org.netbeans.modules.schema2beans.Schema2BeansException
      com.sun.jdo.api.persistence.model.ModelException
      org.netbeans.modules.dbschema.DBException
      ConversionException
    • loadMappingClasses

      protected Map loadMappingClasses(SunCmpMappings sunMapping, ClassLoader classLoader) throws org.netbeans.modules.dbschema.DBException, com.sun.jdo.api.persistence.model.ModelException, ConversionException
      load mapping classes from SunCmpMappings object
      Parameters:
      sunMapping - a SunCmpMappings object representing sun-cmp-mappings.xml in memory
      classLoader - a class loader object
      Returns:
      a map object containing ejb names and mapping classes
      Throws:
      org.netbeans.modules.dbschema.DBException
      com.sun.jdo.api.persistence.model.ModelException
      ConversionException
    • cleanup

      public void cleanup()
      Clean up strong reference. It should be called by end of deployment or deploytool.
    • isPropertyDefined

      protected boolean isPropertyDefined(String propertyValue)
      Returns true if the specified propertyValue represents a defined value, false otherwise. This implementation returns true if the value is not empty, but subclasses may override this method to compare to a constant which represents an undefined value.
      Parameters:
      propertyValue - the value to be tested for defined
      Returns:
      true if the specified propertyValue represents a defined value, false otherwise
    • updateColumn

      public static void updateColumn(org.netbeans.modules.dbschema.ColumnElement column, int jdbcType, Integer length, Integer scale, Integer precision) throws org.netbeans.modules.dbschema.DBException
      Update column in the SchemaElement with jdbc type and its length, scale and precision.
      Parameters:
      column - a ColumnElement to be updated
      jdbcType - jdbc type from java.sql.Types
      length - an Integer for length or null if it does not apply
      scale - an Integer for scale or null if it does not apply
      precision - an Integer for precision or null if it does not apply
      Throws:
      org.netbeans.modules.dbschema.DBException
    • updateProperties

      public static void updateProperties(Properties prop, String className, String fieldName, int jdbcType, Integer length, Integer scale, Integer precision)
      This method updates properties which stores user override policy.
      Parameters:
      prop - the property for user override
      className - a string for bean class
      fieldName - a string for field
      jdbcType - jdbc type from java.sql.Types
      length - an Integer for length or null if it does not apply
      scale - an Integer for scale or null if it does not apply
      precision - an Integer for precision or null if it does not apply