public abstract class org.apache.cassandra.cql3.statements.SchemaAlteringStatement extends org.apache.cassandra.cql3.statements.CFStatement implements org.apache.cassandra.cql3.CQLStatement
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.apache.cassandra.cql3.statements.SchemaAlteringStatement
  super_class: org.apache.cassandra.cql3.statements.CFStatement
{
  private final boolean isColumnFamilyLevel;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected void <init>();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.statements.SchemaAlteringStatement this
         0: .line 45
            aload 0 /* this */
            aconst_null
            invokespecial org.apache.cassandra.cql3.statements.CFStatement.<init>:(Lorg/apache/cassandra/cql3/CFName;)V
         1: .line 46
            aload 0 /* this */
            iconst_0
            putfield org.apache.cassandra.cql3.statements.SchemaAlteringStatement.isColumnFamilyLevel:Z
         2: .line 47
            return
        end local 0 // org.apache.cassandra.cql3.statements.SchemaAlteringStatement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/cassandra/cql3/statements/SchemaAlteringStatement;

  protected void <init>(org.apache.cassandra.cql3.CFName);
    descriptor: (Lorg/apache/cassandra/cql3/CFName;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.statements.SchemaAlteringStatement this
        start local 1 // org.apache.cassandra.cql3.CFName name
         0: .line 51
            aload 0 /* this */
            aload 1 /* name */
            invokespecial org.apache.cassandra.cql3.statements.CFStatement.<init>:(Lorg/apache/cassandra/cql3/CFName;)V
         1: .line 52
            aload 0 /* this */
            iconst_1
            putfield org.apache.cassandra.cql3.statements.SchemaAlteringStatement.isColumnFamilyLevel:Z
         2: .line 53
            return
        end local 1 // org.apache.cassandra.cql3.CFName name
        end local 0 // org.apache.cassandra.cql3.statements.SchemaAlteringStatement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/cassandra/cql3/statements/SchemaAlteringStatement;
            0    3     1  name  Lorg/apache/cassandra/cql3/CFName;
    MethodParameters:
      Name  Flags
      name  

  public int getBoundTerms();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.cql3.statements.SchemaAlteringStatement this
         0: .line 57
            iconst_0
            ireturn
        end local 0 // org.apache.cassandra.cql3.statements.SchemaAlteringStatement this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/cql3/statements/SchemaAlteringStatement;

  public void prepareKeyspace(org.apache.cassandra.service.ClientState);
    descriptor: (Lorg/apache/cassandra/service/ClientState;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.statements.SchemaAlteringStatement this
        start local 1 // org.apache.cassandra.service.ClientState state
         0: .line 63
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SchemaAlteringStatement.isColumnFamilyLevel:Z
            ifeq 2
         1: .line 64
            aload 0 /* this */
            aload 1 /* state */
            invokespecial org.apache.cassandra.cql3.statements.CFStatement.prepareKeyspace:(Lorg/apache/cassandra/service/ClientState;)V
         2: .line 65
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.apache.cassandra.service.ClientState state
        end local 0 // org.apache.cassandra.cql3.statements.SchemaAlteringStatement this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/apache/cassandra/cql3/statements/SchemaAlteringStatement;
            0    3     1  state  Lorg/apache/cassandra/service/ClientState;
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    MethodParameters:
       Name  Flags
      state  

  public org.apache.cassandra.cql3.statements.ParsedStatement$Prepared prepare(org.apache.cassandra.service.ClientState);
    descriptor: (Lorg/apache/cassandra/service/ClientState;)Lorg/apache/cassandra/cql3/statements/ParsedStatement$Prepared;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=2
        start local 0 // org.apache.cassandra.cql3.statements.SchemaAlteringStatement this
        start local 1 // org.apache.cassandra.service.ClientState clientState
         0: .line 76
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.SchemaAlteringStatement.isColumnFamilyLevel:Z
            ifeq 13
            aload 1 /* clientState */
            invokevirtual org.apache.cassandra.service.ClientState.isNoCompactMode:()Z
            ifeq 13
         1: .line 78
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.statements.SchemaAlteringStatement.keyspace:()Ljava/lang/String;
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.statements.SchemaAlteringStatement.columnFamily:()Ljava/lang/String;
            invokestatic org.apache.cassandra.thrift.ThriftValidation.validateColumnFamily:(Ljava/lang/String;Ljava/lang/String;)Lorg/apache/cassandra/config/CFMetaData;
            astore 2 /* table */
        start local 2 // org.apache.cassandra.config.CFMetaData table
         2: .line 79
            aload 2 /* table */
            invokevirtual org.apache.cassandra.config.CFMetaData.isCompactTable:()Z
            ifeq 6
         3: .line 81
            ldc "Cannot alter schema of compact table %s.%s from a connection in NO-COMPACT mode"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
         4: .line 82
            aload 2 /* table */
            getfield org.apache.cassandra.config.CFMetaData.ksName:Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 2 /* table */
            getfield org.apache.cassandra.config.CFMetaData.cfName:Ljava/lang/String;
            aastore
         5: .line 81
            invokestatic org.apache.cassandra.cql3.statements.RequestValidations.invalidRequest:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/apache/cassandra/exceptions/InvalidRequestException;
            athrow
         6: .line 84
      StackMap locals: org.apache.cassandra.config.CFMetaData
      StackMap stack:
            aload 2 /* table */
            invokevirtual org.apache.cassandra.config.CFMetaData.isView:()Z
            ifeq 13
         7: .line 86
            getstatic org.apache.cassandra.config.Schema.instance:Lorg/apache/cassandra/config/Schema;
            aload 2 /* table */
            getfield org.apache.cassandra.config.CFMetaData.ksName:Ljava/lang/String;
            aload 2 /* table */
            getfield org.apache.cassandra.config.CFMetaData.cfName:Ljava/lang/String;
            invokevirtual org.apache.cassandra.config.Schema.getView:(Ljava/lang/String;Ljava/lang/String;)Lorg/apache/cassandra/config/ViewDefinition;
            invokevirtual org.apache.cassandra.config.ViewDefinition.baseTableMetadata:()Lorg/apache/cassandra/config/CFMetaData;
            astore 3 /* baseTable */
        start local 3 // org.apache.cassandra.config.CFMetaData baseTable
         8: .line 87
            aload 3 /* baseTable */
            invokevirtual org.apache.cassandra.config.CFMetaData.isCompactTable:()Z
            ifeq 13
         9: .line 88
            new org.apache.cassandra.exceptions.InvalidRequestException
            dup
            ldc "Cannot ALTER schema of view %s.%s on compact table %s from a connection in NO-COMPACT mode"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
        10: .line 90
            aload 2 /* table */
            getfield org.apache.cassandra.config.CFMetaData.ksName:Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 2 /* table */
            getfield org.apache.cassandra.config.CFMetaData.cfName:Ljava/lang/String;
            aastore
            dup
            iconst_2
        11: .line 91
            aload 3 /* baseTable */
            getfield org.apache.cassandra.config.CFMetaData.ksName:Ljava/lang/String;
            aastore
            dup
            iconst_3
            aload 3 /* baseTable */
            getfield org.apache.cassandra.config.CFMetaData.cfName:Ljava/lang/String;
            aastore
        12: .line 88
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.apache.cassandra.exceptions.InvalidRequestException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // org.apache.cassandra.config.CFMetaData baseTable
        end local 2 // org.apache.cassandra.config.CFMetaData table
        13: .line 95
      StackMap locals:
      StackMap stack:
            new org.apache.cassandra.cql3.statements.ParsedStatement$Prepared
            dup
            aload 0 /* this */
            invokespecial org.apache.cassandra.cql3.statements.ParsedStatement$Prepared.<init>:(Lorg/apache/cassandra/cql3/CQLStatement;)V
            areturn
        end local 1 // org.apache.cassandra.service.ClientState clientState
        end local 0 // org.apache.cassandra.cql3.statements.SchemaAlteringStatement this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   14     0         this  Lorg/apache/cassandra/cql3/statements/SchemaAlteringStatement;
            0   14     1  clientState  Lorg/apache/cassandra/service/ClientState;
            2   13     2        table  Lorg/apache/cassandra/config/CFMetaData;
            8   13     3    baseTable  Lorg/apache/cassandra/config/CFMetaData;
    MethodParameters:
             Name  Flags
      clientState  

  protected void grantPermissionsToCreator(org.apache.cassandra.service.QueryState);
    descriptor: (Lorg/apache/cassandra/service/QueryState;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.apache.cassandra.cql3.statements.SchemaAlteringStatement this
        start local 1 // org.apache.cassandra.service.QueryState state
         0: .line 107
            return
        end local 1 // org.apache.cassandra.service.QueryState state
        end local 0 // org.apache.cassandra.cql3.statements.SchemaAlteringStatement this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/apache/cassandra/cql3/statements/SchemaAlteringStatement;
            0    1     1  state  Lorg/apache/cassandra/service/QueryState;
    MethodParameters:
       Name  Flags
      state  

  protected abstract org.apache.cassandra.transport.Event$SchemaChange announceMigration(org.apache.cassandra.service.QueryState, boolean);
    descriptor: (Lorg/apache/cassandra/service/QueryState;Z)Lorg/apache/cassandra/transport/Event$SchemaChange;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Exceptions:
      throws org.apache.cassandra.exceptions.RequestValidationException
    MethodParameters:
             Name  Flags
      queryState   
      isLocalOnly  

  public org.apache.cassandra.transport.messages.ResultMessage execute(org.apache.cassandra.service.QueryState, org.apache.cassandra.cql3.QueryOptions, long);
    descriptor: (Lorg/apache/cassandra/service/QueryState;Lorg/apache/cassandra/cql3/QueryOptions;J)Lorg/apache/cassandra/transport/messages/ResultMessage;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=4
        start local 0 // org.apache.cassandra.cql3.statements.SchemaAlteringStatement this
        start local 1 // org.apache.cassandra.service.QueryState state
        start local 2 // org.apache.cassandra.cql3.QueryOptions options
        start local 3 // long queryStartNanoTime
         0: .line 123
            aload 0 /* this */
            aload 1 /* state */
            iconst_0
            invokevirtual org.apache.cassandra.cql3.statements.SchemaAlteringStatement.announceMigration:(Lorg/apache/cassandra/service/QueryState;Z)Lorg/apache/cassandra/transport/Event$SchemaChange;
            astore 5 /* ce */
        start local 5 // org.apache.cassandra.transport.Event$SchemaChange ce
         1: .line 124
            aload 5 /* ce */
            ifnonnull 3
         2: .line 125
            new org.apache.cassandra.transport.messages.ResultMessage$Void
            dup
            invokespecial org.apache.cassandra.transport.messages.ResultMessage$Void.<init>:()V
            areturn
         3: .line 132
      StackMap locals: org.apache.cassandra.transport.Event$SchemaChange
      StackMap stack:
            aload 1 /* state */
            invokevirtual org.apache.cassandra.service.QueryState.getClientState:()Lorg/apache/cassandra/service/ClientState;
            invokevirtual org.apache.cassandra.service.ClientState.getUser:()Lorg/apache/cassandra/auth/AuthenticatedUser;
            astore 6 /* user */
        start local 6 // org.apache.cassandra.auth.AuthenticatedUser user
         4: .line 133
            aload 6 /* user */
            ifnull 8
            aload 6 /* user */
            invokevirtual org.apache.cassandra.auth.AuthenticatedUser.isAnonymous:()Z
            ifne 8
            aload 5 /* ce */
            getfield org.apache.cassandra.transport.Event$SchemaChange.change:Lorg/apache/cassandra/transport/Event$SchemaChange$Change;
            getstatic org.apache.cassandra.transport.Event$SchemaChange$Change.CREATED:Lorg/apache/cassandra/transport/Event$SchemaChange$Change;
            if_acmpne 8
         5: .line 137
            aload 0 /* this */
            aload 1 /* state */
            invokevirtual org.apache.cassandra.cql3.statements.SchemaAlteringStatement.grantPermissionsToCreator:(Lorg/apache/cassandra/service/QueryState;)V
         6: .line 138
            goto 8
         7: .line 139
      StackMap locals: org.apache.cassandra.cql3.statements.SchemaAlteringStatement org.apache.cassandra.service.QueryState org.apache.cassandra.cql3.QueryOptions long org.apache.cassandra.transport.Event$SchemaChange org.apache.cassandra.auth.AuthenticatedUser
      StackMap stack: java.lang.UnsupportedOperationException
            pop
         8: .line 145
      StackMap locals:
      StackMap stack:
            new org.apache.cassandra.transport.messages.ResultMessage$SchemaChange
            dup
            aload 5 /* ce */
            invokespecial org.apache.cassandra.transport.messages.ResultMessage$SchemaChange.<init>:(Lorg/apache/cassandra/transport/Event$SchemaChange;)V
            areturn
        end local 6 // org.apache.cassandra.auth.AuthenticatedUser user
        end local 5 // org.apache.cassandra.transport.Event$SchemaChange ce
        end local 3 // long queryStartNanoTime
        end local 2 // org.apache.cassandra.cql3.QueryOptions options
        end local 1 // org.apache.cassandra.service.QueryState state
        end local 0 // org.apache.cassandra.cql3.statements.SchemaAlteringStatement this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    9     0                this  Lorg/apache/cassandra/cql3/statements/SchemaAlteringStatement;
            0    9     1               state  Lorg/apache/cassandra/service/QueryState;
            0    9     2             options  Lorg/apache/cassandra/cql3/QueryOptions;
            0    9     3  queryStartNanoTime  J
            1    9     5                  ce  Lorg/apache/cassandra/transport/Event$SchemaChange;
            4    9     6                user  Lorg/apache/cassandra/auth/AuthenticatedUser;
      Exception table:
        from    to  target  type
           5     6       7  Class java.lang.UnsupportedOperationException
    Exceptions:
      throws org.apache.cassandra.exceptions.RequestValidationException
    MethodParameters:
                    Name  Flags
      state               
      options             
      queryStartNanoTime  

  public org.apache.cassandra.transport.messages.ResultMessage executeInternal(org.apache.cassandra.service.QueryState, org.apache.cassandra.cql3.QueryOptions);
    descriptor: (Lorg/apache/cassandra/service/QueryState;Lorg/apache/cassandra/cql3/QueryOptions;)Lorg/apache/cassandra/transport/messages/ResultMessage;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.apache.cassandra.cql3.statements.SchemaAlteringStatement this
        start local 1 // org.apache.cassandra.service.QueryState state
        start local 2 // org.apache.cassandra.cql3.QueryOptions options
         0: .line 150
            aload 0 /* this */
            aload 1 /* state */
            iconst_1
            invokevirtual org.apache.cassandra.cql3.statements.SchemaAlteringStatement.announceMigration:(Lorg/apache/cassandra/service/QueryState;Z)Lorg/apache/cassandra/transport/Event$SchemaChange;
            astore 3 /* ce */
        start local 3 // org.apache.cassandra.transport.Event$SchemaChange ce
         1: .line 151
            aload 3 /* ce */
            ifnonnull 2
            new org.apache.cassandra.transport.messages.ResultMessage$Void
            dup
            invokespecial org.apache.cassandra.transport.messages.ResultMessage$Void.<init>:()V
            goto 3
      StackMap locals: org.apache.cassandra.transport.Event$SchemaChange
      StackMap stack:
         2: new org.apache.cassandra.transport.messages.ResultMessage$SchemaChange
            dup
            aload 3 /* ce */
            invokespecial org.apache.cassandra.transport.messages.ResultMessage$SchemaChange.<init>:(Lorg/apache/cassandra/transport/Event$SchemaChange;)V
      StackMap locals:
      StackMap stack: org.apache.cassandra.transport.messages.ResultMessage
         3: areturn
        end local 3 // org.apache.cassandra.transport.Event$SchemaChange ce
        end local 2 // org.apache.cassandra.cql3.QueryOptions options
        end local 1 // org.apache.cassandra.service.QueryState state
        end local 0 // org.apache.cassandra.cql3.statements.SchemaAlteringStatement this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/apache/cassandra/cql3/statements/SchemaAlteringStatement;
            0    4     1    state  Lorg/apache/cassandra/service/QueryState;
            0    4     2  options  Lorg/apache/cassandra/cql3/QueryOptions;
            1    4     3       ce  Lorg/apache/cassandra/transport/Event$SchemaChange;
    MethodParameters:
         Name  Flags
      state    
      options  
}
SourceFile: "SchemaAlteringStatement.java"
InnerClasses:
  public Prepared = org.apache.cassandra.cql3.statements.ParsedStatement$Prepared of org.apache.cassandra.cql3.statements.ParsedStatement
  public SchemaChange = org.apache.cassandra.transport.Event$SchemaChange of org.apache.cassandra.transport.Event
  public final Change = org.apache.cassandra.transport.Event$SchemaChange$Change of org.apache.cassandra.transport.Event$SchemaChange
  public SchemaChange = org.apache.cassandra.transport.messages.ResultMessage$SchemaChange of org.apache.cassandra.transport.messages.ResultMessage
  public Void = org.apache.cassandra.transport.messages.ResultMessage$Void of org.apache.cassandra.transport.messages.ResultMessage