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

## Interface InternalDBIndex

- All Superinterfaces:
    `java.lang.Comparable<IDBSchemaElement>`, `org.eclipse.net4j.util.container.IContainer<IDBSchemaElement>`, `IDBElement`, `IDBIndex`, `IDBNamedElement`, `IDBSchemaElement`, `org.eclipse.net4j.util.event.INotifier`, `InternalDBElement`, `InternalDBNamedElement`, `InternalDBSchemaElement`

      public interface InternalDBIndex
      extends IDBIndex, 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.IDBIndex

      `IDBIndex.Type`

    - ### 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 IDBIndexField[]` | `NO_INDEX_FIELDS` |

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `IDBIndex` | `getWrapper()` |
    `boolean` | `isOptional()` |
    `void` | `removeIndexField​(IDBIndexField indexFieldToRemove)` |
    `void` | `setOptional​(boolean optional)` |

    - ### 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.IDBIndex

      `addIndexField, addIndexField, getField, getField, getFieldCount, getFields, getFieldSafe, getIndexField, getIndexField, getIndexFields, getIndexFieldSafe, getParent, getPosition, getTable, getType, setType`

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

      `getName`

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

      `accept, getElement, getFullName, 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_INDEX_FIELDS

          static final IDBIndexField[] NO_INDEX_FIELDS

  - ### Method Detail

    - #### getWrapper

          IDBIndex getWrapper()

      Specified by:
        `getWrapper` in interface `InternalDBSchemaElement`

    - #### removeIndexField

          void removeIndexField​(IDBIndexField indexFieldToRemove)

    - #### isOptional

          boolean isOptional()

      Since:
        4.5

    - #### setOptional

          void setOptional​(boolean optional)

      Since:
        4.5