org.apache.cassandra.cql3.statements

## Class DropIndexStatement

- java.lang.Object
- - org.apache.cassandra.cql3.statements.ParsedStatement
  - - org.apache.cassandra.cql3.statements.CFStatement
    - - org.apache.cassandra.cql3.statements.SchemaAlteringStatement
      - - org.apache.cassandra.cql3.statements.DropIndexStatement

- All Implemented Interfaces:
    CQLStatement

      public class DropIndexStatement
      extends SchemaAlteringStatement

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.apache.cassandra.cql3.statements.ParsedStatement

      `ParsedStatement.Prepared`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `boolean` | `ifExists`
    `java.lang.String` | `indexName`

    - ### Fields inherited from class org.apache.cassandra.cql3.statements.CFStatement

      `cfName`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `DropIndexStatement(IndexName indexName, boolean ifExists)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Event.SchemaChange` | `announceMigration(QueryState queryState, boolean isLocalOnly)` Announces the migration to other nodes in the cluster.
    `void` | `checkAccess(ClientState state)` Perform any access verification necessary for the statement.
    `java.lang.String` | `columnFamily()`
    `ResultMessage` | `execute(QueryState state, QueryOptions options, long queryStartNanoTime)` Execute the statement and return the resulting result or null if there is no result.
    `void` | `validate(ClientState state)` Perform additional validation required by the statment.

    - ### Methods inherited from class org.apache.cassandra.cql3.statements.SchemaAlteringStatement

      `executeInternal, getBoundTerms, grantPermissionsToCreator, prepare, prepareKeyspace`

    - ### Methods inherited from class org.apache.cassandra.cql3.statements.CFStatement

      `keyspace, prepareKeyspace`

    - ### Methods inherited from class org.apache.cassandra.cql3.statements.ParsedStatement

      `getBoundVariables, getFunctions, setBoundVariables, setBoundVariables`

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

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

    - ### Methods inherited from interface org.apache.cassandra.cql3.CQLStatement

      `getFunctions`

- - ### Field Detail

    - #### indexName

          public final java.lang.String indexName

    - #### ifExists

          public final boolean ifExists

  - ### Constructor Detail

    - #### DropIndexStatement

          public DropIndexStatement(IndexName indexName,
                                    boolean ifExists)

  - ### Method Detail

    - #### columnFamily

          public java.lang.String columnFamily()

      Overrides:
        `columnFamily` in class `CFStatement`

    - #### checkAccess

          public void checkAccess(ClientState state)
                           throws UnauthorizedException,
                                  InvalidRequestException

      Description copied from interface: `CQLStatement`
      Perform any access verification necessary for the statement.
      Parameters:
        `state` - the current client state
      Throws:
        `UnauthorizedException`
        `InvalidRequestException`

    - #### validate

          public void validate(ClientState state)

      Description copied from interface: `CQLStatement`
      Perform additional validation required by the statment. To be overriden by subclasses if needed.
      Parameters:
        `state` - the current client state

    - #### execute

          public ResultMessage execute(QueryState state,
                                       QueryOptions options,
                                       long queryStartNanoTime)
                                throws RequestValidationException

      Description copied from interface: `CQLStatement`
      Execute the statement and return the resulting result or null if there is no result.
      Specified by:
        `execute` in interface `CQLStatement`
      Overrides:
        `execute` in class `SchemaAlteringStatement`
      Parameters:
        `state` - the current query state
        `options` - options for this query (consistency, variables, pageSize, ...)
        `queryStartNanoTime` - the timestamp returned by System.nanoTime() when this statement was received
      Throws:
        `RequestValidationException`

    - #### announceMigration

          public Event.SchemaChange announceMigration(QueryState queryState,
                                                      boolean isLocalOnly)
                                               throws InvalidRequestException,
                                                      ConfigurationException

      Description copied from class: `SchemaAlteringStatement`
      Announces the migration to other nodes in the cluster.
      Specified by:
        `announceMigration` in class `SchemaAlteringStatement`
      Returns:
        the schema change event corresponding to the execution of this statement, or `null` if no schema change has occurred (when IF NOT EXISTS is used, for example)
      Throws:
        `InvalidRequestException`
        `ConfigurationException`

Copyright © 2018 The Apache Software Foundation