Package org.eclipse.net4j.spi.db.ddl

## Interface InternalDBSchema

- All Superinterfaces:
    `java.lang.Comparable<IDBSchemaElement>`, `org.eclipse.net4j.util.container.IContainer<IDBSchemaElement>`, `IDBElement`, `IDBNamedElement`, `IDBSchema`, `IDBSchemaElement`, `org.eclipse.net4j.util.event.INotifier`, `InternalDBElement`, `InternalDBNamedElement`, `InternalDBSchemaElement`
  All Known Implementing Classes:
    `org.eclipse.net4j.internal.db.ddl.DBSchema`, `DBSchema`

      public interface InternalDBSchema
      extends IDBSchema, InternalDBSchemaElement

  Since:
    4.2
  Author:
    Eike Stepper
  No Implement
    This interface is not intended to be implemented by clients.
  No Extend
    This interface is not intended to be extended by clients.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.eclipse.net4j.util.container.IContainer

      `org.eclipse.net4j.util.container.IContainer.Modifiable<E extends java.lang.Object>, org.eclipse.net4j.util.container.IContainer.Persistable<E extends java.lang.Object>, org.eclipse.net4j.util.container.IContainer.Persistence<E extends java.lang.Object>`

    - ### Nested classes/interfaces inherited from interface org.eclipse.net4j.db.ddl.IDBSchemaElement

      `IDBSchemaElement.SchemaElementType`

    - ### Nested classes/interfaces inherited from interface org.eclipse.net4j.util.event.INotifier

      `org.eclipse.net4j.util.event.INotifier.INotifier2`

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static IDBTable[]` | `NO_TABLES` |

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `IDBTable` | `addTable​(java.lang.String name)` |
    `void` | `assertUnlocked()` |
    `java.lang.String` | `createIndexName​(IDBTable table, IDBIndex.Type type, IDBField[] fields, int position)` |
    `IDBSchema` | `getWrapper()` |
    `boolean` | `lock()` |
    `IDBTable` | `removeTable​(java.lang.String name)` |
    `boolean` | `unlock()` |

    - ### Methods inherited from interface java.lang.Comparable

      `compareTo`

    - ### Methods inherited from interface org.eclipse.net4j.util.container.IContainer

      `getElements, isEmpty`

    - ### Methods inherited from interface org.eclipse.net4j.db.ddl.IDBElement

      `getProperties`

    - ### Methods inherited from interface org.eclipse.net4j.db.ddl.IDBNamedElement

      `getName`

    - ### Methods inherited from interface org.eclipse.net4j.db.ddl.IDBSchema

      `compare, create, create, create, drop, drop, drop, export, export, export, findElement, getTable, getTables, getTableSafe, isLocked`

    - ### Methods inherited from interface org.eclipse.net4j.db.ddl.IDBSchemaElement

      `accept, getElement, getFullName, getParent, getSchema, getSchemaElementType, remove, setName`

    - ### Methods inherited from interface org.eclipse.net4j.util.event.INotifier

      `addListener, getListeners, hasListeners, removeListener`

    - ### Methods inherited from interface org.eclipse.net4j.spi.db.ddl.InternalDBNamedElement

      `dump, dump, dumpToString, setName`

    - ### Methods inherited from interface org.eclipse.net4j.spi.db.ddl.InternalDBSchemaElement

      `setWrapper`

- - ### Field Detail

    - #### NO_TABLES

          static final IDBTable[] NO_TABLES

  - ### Method Detail

    - #### getWrapper

          IDBSchema getWrapper()

      Specified by:
        `getWrapper` in interface `InternalDBSchemaElement`

    - #### addTable

          IDBTable addTable​(java.lang.String name)

      Specified by:
        `addTable` in interface `IDBSchema`

    - #### removeTable

          IDBTable removeTable​(java.lang.String name)

      Specified by:
        `removeTable` in interface `IDBSchema`

    - #### createIndexName

          java.lang.String createIndexName​(IDBTable table,
                                           IDBIndex.Type type,
                                           IDBField[] fields,
                                           int position)

    - #### lock

          boolean lock()

    - #### unlock

          boolean unlock()

    - #### assertUnlocked

          void assertUnlocked()
                       throws DBException

      Throws:
        `DBException`