org.apache.cassandra.cql3.statements

## Class AuthenticationStatement

- java.lang.Object
- - org.apache.cassandra.cql3.statements.ParsedStatement
  - - org.apache.cassandra.cql3.statements.AuthenticationStatement

All Implemented Interfaces:
  CQLStatement

Direct Known Subclasses:
  AlterRoleStatement, CreateRoleStatement, DropRoleStatement, RoleManagementStatement

    public abstract class AuthenticationStatement
    extends ParsedStatement
    implements CQLStatement

### Nested Class Summary

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

`ParsedStatement.Prepared`

### Constructor Summary

Constructors
Constructor and Description
`AuthenticationStatement()`

### Method Summary

All Methods Instance Methods Abstract Methods Concrete Methods
`void` `checkPermission(ClientState state, Permission required, RoleResource resource)`
`abstract ResultMessage` `execute(ClientState state)`
`ResultMessage` `execute(QueryState state, QueryOptions options)` Execute the statement and return the resulting result or null if there is no result.
`ResultMessage` `executeInternal(QueryState state, QueryOptions options)` Variant of execute used for internal query against the system tables, and thus only query the local node.
`int` `getBoundTerms()` Returns the number of bound terms in this statement.
`ParsedStatement.Prepared` `prepare()`

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

`getBoundVariables, getFunctions, 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

`checkAccess, getFunctions, validate`

### Constructor Detail

#### AuthenticationStatement

    public AuthenticationStatement()

### Method Detail

#### prepare

    public ParsedStatement.Prepared prepare()

Specified by:
  `prepare` in class `ParsedStatement`

#### getBoundTerms

    public int getBoundTerms()

Description copied from interface: `CQLStatement`
Returns the number of bound terms in this statement.

Specified by:
  `getBoundTerms` in interface `CQLStatement`

#### execute

    public ResultMessage execute(QueryState state,
                                 QueryOptions options)
                          throws RequestExecutionException,
                                 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`
Parameters:
  `state` - the current query state
  `options` - options for this query (consistency, variables, pageSize, ...)
Throws:
  `RequestExecutionException`
  `RequestValidationException`

#### execute

    public abstract ResultMessage execute(ClientState state)
                                   throws RequestExecutionException,
                                          RequestValidationException

Throws:
  `RequestExecutionException`
  `RequestValidationException`

#### executeInternal

    public ResultMessage executeInternal(QueryState state,
                                         QueryOptions options)

Description copied from interface: `CQLStatement`
Variant of execute used for internal query against the system tables, and thus only query the local node.

Specified by:
  `executeInternal` in interface `CQLStatement`
Parameters:
  `state` - the current query state

#### checkPermission

    public void checkPermission(ClientState state,
                                Permission required,
                                RoleResource resource)
                         throws UnauthorizedException

Throws:
  `UnauthorizedException`