Class MappingGenerator

    • Constructor Detail

      • 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 Detail

      • getClassLoader

        protected ClassLoader getClassLoader()
      • generateMappingClasses

        public DatabaseGenerator.Results generateMappingClasses​(String dbName,
                                                                Boolean uniqueTableNames,
                                                                Properties userPolicy,
                                                                String inputFilesPath)
                                                         throws IOException,
                                                                org.netbeans.modules.schema2beans.Schema2BeansException,
                                                                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
        ModelException
        org.netbeans.modules.dbschema.DBException
        ConversionException
      • loadMappingClasses

        protected Map loadMappingClasses​(SunCmpMappings sunMapping,
                                         ClassLoader classLoader)
                                  throws org.netbeans.modules.dbschema.DBException,
                                         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
        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