org.qi4j.index.sql.support.skeletons

## Class AbstractSQLStartup

- java.lang.Object
- - org.qi4j.index.sql.support.skeletons.AbstractSQLStartup

- All Implemented Interfaces:
    SQLAppStartup
  Direct Known Subclasses:
    PostgreSQLAppStartup

      public abstract class AbstractSQLStartup
      extends Object
      implements SQLAppStartup

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.qi4j.index.sql.support.api.SQLAppStartup

      `SQLAppStartup.Activator`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `DEFAULT_SCHEMA_NAME`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AbstractSQLStartup(ServiceDescriptor descriptor)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `checkSchemaName(String schemaName)`
    `protected static String` | `compositeDescriptorToString(LayerDescriptor layer, ModuleDescriptor module, CompositeDescriptor descriptor)`
    `protected boolean` | `dropTablesIfExist(String schemaName, String tableName, Statement stmt)`
    `protected abstract org.sql.generation.api.grammar.common.datatypes.SQLDataType` | `getCollectionPathDataType()`
    `protected Long` | `getNextPK(Statement stmt, String schemaName, String columnName, String tableName, Long defaultPK)`
    `void` | `initConnection()` This method is called when connection may be safely initialized - for example, possibly (re-)building database structure.
    `protected abstract void` | `modifyPrimitiveTypes(Map<Class<?>,org.sql.generation.api.grammar.common.datatypes.SQLDataType> primitiveTypes, Map<Class<?>,Integer> jdbcTypes)`
    `protected static <TCompositeDescriptor extends CompositeDescriptor> TCompositeDescriptor` | `stringToCompositeDescriptor(Class<TCompositeDescriptor> descriptorClass, ApplicationDescriptor appDesc, String str)`
    `protected abstract void` | `testRequiredCapabilities(Connection connection)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### DEFAULT_SCHEMA_NAME

          public static final String DEFAULT_SCHEMA_NAME

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### AbstractSQLStartup

          public AbstractSQLStartup(@Uses
                            ServiceDescriptor descriptor)

  - ### Method Detail

    - #### initConnection

          public void initConnection()
                              throws SQLException

      Description copied from interface: `SQLAppStartup`
      This method is called when connection may be safely initialized - for example, possibly (re-)building database structure.
      Specified by:
        `initConnection` in interface `SQLAppStartup`
      Throws:
        `SQLException` - If SQL error.

    - #### checkSchemaName

          protected void checkSchemaName(String schemaName)

    - #### getNextPK

          protected Long getNextPK(Statement stmt,
                       String schemaName,
                       String columnName,
                       String tableName,
                       Long defaultPK)
                            throws SQLException

      Throws:
        `SQLException`

    - #### testRequiredCapabilities

          protected abstract void testRequiredCapabilities(Connection connection)
                                                    throws SQLException

      Throws:
        `SQLException`

    - #### dropTablesIfExist

          protected boolean dropTablesIfExist(String schemaName,
                                  String tableName,
                                  Statement stmt)
                                       throws SQLException

      Throws:
        `SQLException`

    - #### compositeDescriptorToString

          protected static String compositeDescriptorToString(LayerDescriptor layer,
                                           ModuleDescriptor module,
                                           CompositeDescriptor descriptor)

    - #### stringToCompositeDescriptor

          protected static <TCompositeDescriptor extends CompositeDescriptor> TCompositeDescriptor stringToCompositeDescriptor(Class<TCompositeDescriptor> descriptorClass,
                                                                                                            ApplicationDescriptor appDesc,
                                                                                                            String str)

    - #### modifyPrimitiveTypes

          protected abstract void modifyPrimitiveTypes(Map<Class<?>,org.sql.generation.api.grammar.common.datatypes.SQLDataType> primitiveTypes,
                                  Map<Class<?>,Integer> jdbcTypes)

    - #### getCollectionPathDataType

          protected abstract org.sql.generation.api.grammar.common.datatypes.SQLDataType getCollectionPathDataType()