public final class org.apache.cassandra.cql3.statements.DropAggregateStatement extends org.apache.cassandra.cql3.statements.SchemaAlteringStatement
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.apache.cassandra.cql3.statements.DropAggregateStatement
super_class: org.apache.cassandra.cql3.statements.SchemaAlteringStatement
{
private org.apache.cassandra.cql3.functions.FunctionName functionName;
descriptor: Lorg/apache/cassandra/cql3/functions/FunctionName;
flags: (0x0002) ACC_PRIVATE
private final boolean ifExists;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.List<org.apache.cassandra.cql3.CQL3Type$Raw> argRawTypes;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Lorg/apache/cassandra/cql3/CQL3Type$Raw;>;
private final boolean argsPresent;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(org.apache.cassandra.cql3.functions.FunctionName, java.util.List<org.apache.cassandra.cql3.CQL3Type$Raw>, boolean, );
descriptor: (Lorg/apache/cassandra/cql3/functions/FunctionName;Ljava/util/List;ZZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial org.apache.cassandra.cql3.statements.SchemaAlteringStatement.<init>:()V
1: aload 0
aload 1
putfield org.apache.cassandra.cql3.statements.DropAggregateStatement.functionName:Lorg/apache/cassandra/cql3/functions/FunctionName;
2: aload 0
aload 2
putfield org.apache.cassandra.cql3.statements.DropAggregateStatement.argRawTypes:Ljava/util/List;
3: aload 0
iload 3
putfield org.apache.cassandra.cql3.statements.DropAggregateStatement.argsPresent:Z
4: aload 0
iload 4
putfield org.apache.cassandra.cql3.statements.DropAggregateStatement.ifExists:Z
5: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/cassandra/cql3/statements/DropAggregateStatement;
0 6 1 functionName Lorg/apache/cassandra/cql3/functions/FunctionName;
0 6 2 argRawTypes Ljava/util/List<Lorg/apache/cassandra/cql3/CQL3Type$Raw;>;
0 6 3 argsPresent Z
0 6 4 ifExists Z
Signature: (Lorg/apache/cassandra/cql3/functions/FunctionName;Ljava/util/List<Lorg/apache/cassandra/cql3/CQL3Type$Raw;>;ZZ)V
MethodParameters:
Name Flags
functionName
argRawTypes
argsPresent
ifExists
public void prepareKeyspace(org.apache.cassandra.service.ClientState);
descriptor: (Lorg/apache/cassandra/service/ClientState;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.functionName:Lorg/apache/cassandra/cql3/functions/FunctionName;
invokevirtual org.apache.cassandra.cql3.functions.FunctionName.hasKeyspace:()Z
ifne 2
aload 1
invokevirtual org.apache.cassandra.service.ClientState.getRawKeyspace:()Ljava/lang/String;
ifnull 2
1: aload 0
new org.apache.cassandra.cql3.functions.FunctionName
dup
aload 1
invokevirtual org.apache.cassandra.service.ClientState.getKeyspace:()Ljava/lang/String;
aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.functionName:Lorg/apache/cassandra/cql3/functions/FunctionName;
getfield org.apache.cassandra.cql3.functions.FunctionName.name:Ljava/lang/String;
invokespecial org.apache.cassandra.cql3.functions.FunctionName.<init>:(Ljava/lang/String;Ljava/lang/String;)V
putfield org.apache.cassandra.cql3.statements.DropAggregateStatement.functionName:Lorg/apache/cassandra/cql3/functions/FunctionName;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.functionName:Lorg/apache/cassandra/cql3/functions/FunctionName;
invokevirtual org.apache.cassandra.cql3.functions.FunctionName.hasKeyspace:()Z
ifne 4
3: new org.apache.cassandra.exceptions.InvalidRequestException
dup
ldc "Functions must be fully qualified with a keyspace name if a keyspace is not set for the session"
invokespecial org.apache.cassandra.exceptions.InvalidRequestException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.functionName:Lorg/apache/cassandra/cql3/functions/FunctionName;
getfield org.apache.cassandra.cql3.functions.FunctionName.keyspace:Ljava/lang/String;
invokestatic org.apache.cassandra.thrift.ThriftValidation.validateKeyspaceNotSystem:(Ljava/lang/String;)V
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/cassandra/cql3/statements/DropAggregateStatement;
0 6 1 state Lorg/apache/cassandra/service/ClientState;
Exceptions:
throws org.apache.cassandra.exceptions.InvalidRequestException
MethodParameters:
Name Flags
state
public void checkAccess(org.apache.cassandra.service.ClientState);
descriptor: (Lorg/apache/cassandra/service/ClientState;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.functionName:Lorg/apache/cassandra/cql3/functions/FunctionName;
getfield org.apache.cassandra.cql3.functions.FunctionName.keyspace:Ljava/lang/String;
getstatic org.apache.cassandra.auth.Permission.DROP:Lorg/apache/cassandra/auth/Permission;
invokevirtual org.apache.cassandra.service.ClientState.hasKeyspaceAccess:(Ljava/lang/String;Lorg/apache/cassandra/auth/Permission;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/cassandra/cql3/statements/DropAggregateStatement;
0 2 1 state Lorg/apache/cassandra/service/ClientState;
Exceptions:
throws org.apache.cassandra.exceptions.UnauthorizedException, org.apache.cassandra.exceptions.InvalidRequestException
MethodParameters:
Name Flags
state
public void validate(org.apache.cassandra.service.ClientState);
descriptor: (Lorg/apache/cassandra/service/ClientState;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/cql3/statements/DropAggregateStatement;
0 1 1 state Lorg/apache/cassandra/service/ClientState;
Exceptions:
throws org.apache.cassandra.exceptions.RequestValidationException
MethodParameters:
Name Flags
state
public 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: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=8, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.apache.cassandra.config.Schema.instance:Lorg/apache/cassandra/config/Schema;
aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.functionName:Lorg/apache/cassandra/cql3/functions/FunctionName;
invokevirtual org.apache.cassandra.config.Schema.getFunctions:(Lorg/apache/cassandra/cql3/functions/FunctionName;)Ljava/util/Collection;
astore 3
start local 3 1: aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.argsPresent:Z
ifne 5
aload 3
ifnull 5
aload 3
invokeinterface java.util.Collection.size:()I
iconst_1
if_icmple 5
2: new org.apache.cassandra.exceptions.InvalidRequestException
dup
ldc "'DROP AGGREGATE %s' matches multiple function definitions; specify the argument types by issuing a statement like 'DROP AGGREGATE %s (type, type, ...)'. Hint: use cqlsh 'DESCRIBE AGGREGATE %s' command to find all overloads"
iconst_3
anewarray java.lang.Object
dup
iconst_0
3: aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.functionName:Lorg/apache/cassandra/cql3/functions/FunctionName;
aastore
dup
iconst_1
aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.functionName:Lorg/apache/cassandra/cql3/functions/FunctionName;
aastore
dup
iconst_2
aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.functionName:Lorg/apache/cassandra/cql3/functions/FunctionName;
aastore
4: 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
5: StackMap locals: java.util.Collection
StackMap stack:
aconst_null
astore 4
start local 4 6: aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.argsPresent:Z
ifeq 27
7: getstatic org.apache.cassandra.config.Schema.instance:Lorg/apache/cassandra/config/Schema;
aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.functionName:Lorg/apache/cassandra/cql3/functions/FunctionName;
getfield org.apache.cassandra.cql3.functions.FunctionName.keyspace:Ljava/lang/String;
invokevirtual org.apache.cassandra.config.Schema.getKSMetaData:(Ljava/lang/String;)Lorg/apache/cassandra/schema/KeyspaceMetadata;
ifnull 14
8: new java.util.ArrayList
dup
aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.argRawTypes:Ljava/util/List;
invokeinterface java.util.List.size:()I
invokespecial java.util.ArrayList.<init>:(I)V
astore 5
start local 5 9: aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.argRawTypes:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 12
StackMap locals: org.apache.cassandra.cql3.statements.DropAggregateStatement org.apache.cassandra.service.QueryState int java.util.Collection org.apache.cassandra.cql3.functions.Function java.util.List top java.util.Iterator
StackMap stack:
10: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.cql3.CQL3Type$Raw
astore 6
start local 6 11: aload 5
aload 0
ldc "arguments"
aload 6
invokevirtual org.apache.cassandra.cql3.statements.DropAggregateStatement.prepareType:(Ljava/lang/String;Lorg/apache/cassandra/cql3/CQL3Type$Raw;)Lorg/apache/cassandra/db/marshal/AbstractType;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 6 12: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 10
13: getstatic org.apache.cassandra.config.Schema.instance:Lorg/apache/cassandra/config/Schema;
aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.functionName:Lorg/apache/cassandra/cql3/functions/FunctionName;
aload 5
invokevirtual org.apache.cassandra.config.Schema.findFunction:(Lorg/apache/cassandra/cql3/functions/FunctionName;Ljava/util/List;)Ljava/util/Optional;
aconst_null
invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.apache.cassandra.cql3.functions.Function
astore 4
end local 5 14: StackMap locals: org.apache.cassandra.cql3.statements.DropAggregateStatement org.apache.cassandra.service.QueryState int java.util.Collection org.apache.cassandra.cql3.functions.Function
StackMap stack:
aload 4
ifnull 15
aload 4
instanceof org.apache.cassandra.cql3.functions.AggregateFunction
ifne 32
15: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.ifExists:Z
ifeq 17
16: aconst_null
areturn
17: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 5
start local 5 18: aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.argRawTypes:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 23
StackMap locals: org.apache.cassandra.cql3.statements.DropAggregateStatement org.apache.cassandra.service.QueryState int java.util.Collection org.apache.cassandra.cql3.functions.Function java.lang.StringBuilder top java.util.Iterator
StackMap stack:
19: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.cql3.CQL3Type$Raw
astore 6
start local 6 20: aload 5
invokevirtual java.lang.StringBuilder.length:()I
ifle 22
21: aload 5
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
22: StackMap locals: org.apache.cassandra.cql3.statements.DropAggregateStatement org.apache.cassandra.service.QueryState int java.util.Collection org.apache.cassandra.cql3.functions.Function java.lang.StringBuilder org.apache.cassandra.cql3.CQL3Type$Raw java.util.Iterator
StackMap stack:
aload 5
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
pop
end local 6 23: StackMap locals: org.apache.cassandra.cql3.statements.DropAggregateStatement org.apache.cassandra.service.QueryState int java.util.Collection org.apache.cassandra.cql3.functions.Function java.lang.StringBuilder top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 19
24: new org.apache.cassandra.exceptions.InvalidRequestException
dup
ldc "Cannot drop non existing aggregate '%s(%s)'"
iconst_2
anewarray java.lang.Object
dup
iconst_0
25: aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.functionName:Lorg/apache/cassandra/cql3/functions/FunctionName;
aastore
dup
iconst_1
aload 5
aastore
26: 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 5 27: StackMap locals: org.apache.cassandra.cql3.statements.DropAggregateStatement org.apache.cassandra.service.QueryState int java.util.Collection org.apache.cassandra.cql3.functions.Function
StackMap stack:
aload 3
ifnull 28
aload 3
invokeinterface java.util.Collection.isEmpty:()Z
ifne 28
aload 3
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
instanceof org.apache.cassandra.cql3.functions.AggregateFunction
ifne 31
28: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.ifExists:Z
ifeq 30
29: aconst_null
areturn
30: StackMap locals:
StackMap stack:
new org.apache.cassandra.exceptions.InvalidRequestException
dup
ldc "Cannot drop non existing aggregate '%s'"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.functionName:Lorg/apache/cassandra/cql3/functions/FunctionName;
aastore
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
31: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.cql3.functions.Function
astore 4
32: StackMap locals:
StackMap stack:
aload 4
invokeinterface org.apache.cassandra.cql3.functions.Function.isNative:()Z
ifeq 36
33: new org.apache.cassandra.exceptions.InvalidRequestException
dup
ldc "Cannot drop aggregate '%s' because it is a native (built-in) function"
iconst_1
anewarray java.lang.Object
dup
iconst_0
34: aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.functionName:Lorg/apache/cassandra/cql3/functions/FunctionName;
aastore
35: 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
36: StackMap locals:
StackMap stack:
aload 4
checkcast org.apache.cassandra.cql3.functions.UDAggregate
iload 2
invokestatic org.apache.cassandra.service.MigrationManager.announceAggregateDrop:(Lorg/apache/cassandra/cql3/functions/UDAggregate;Z)V
37: new org.apache.cassandra.transport.Event$SchemaChange
dup
getstatic org.apache.cassandra.transport.Event$SchemaChange$Change.DROPPED:Lorg/apache/cassandra/transport/Event$SchemaChange$Change;
getstatic org.apache.cassandra.transport.Event$SchemaChange$Target.AGGREGATE:Lorg/apache/cassandra/transport/Event$SchemaChange$Target;
38: aload 4
invokeinterface org.apache.cassandra.cql3.functions.Function.name:()Lorg/apache/cassandra/cql3/functions/FunctionName;
getfield org.apache.cassandra.cql3.functions.FunctionName.keyspace:Ljava/lang/String;
aload 4
invokeinterface org.apache.cassandra.cql3.functions.Function.name:()Lorg/apache/cassandra/cql3/functions/FunctionName;
getfield org.apache.cassandra.cql3.functions.FunctionName.name:Ljava/lang/String;
aload 4
invokeinterface org.apache.cassandra.cql3.functions.Function.argTypes:()Ljava/util/List;
invokestatic org.apache.cassandra.db.marshal.AbstractType.asCQLTypeStringList:(Ljava/util/List;)Ljava/util/List;
39: invokespecial org.apache.cassandra.transport.Event$SchemaChange.<init>:(Lorg/apache/cassandra/transport/Event$SchemaChange$Change;Lorg/apache/cassandra/transport/Event$SchemaChange$Target;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)V
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 40 0 this Lorg/apache/cassandra/cql3/statements/DropAggregateStatement;
0 40 1 queryState Lorg/apache/cassandra/service/QueryState;
0 40 2 isLocalOnly Z
1 40 3 olds Ljava/util/Collection<Lorg/apache/cassandra/cql3/functions/Function;>;
6 40 4 old Lorg/apache/cassandra/cql3/functions/Function;
9 14 5 argTypes Ljava/util/List<Lorg/apache/cassandra/db/marshal/AbstractType<*>;>;
11 12 6 rawType Lorg/apache/cassandra/cql3/CQL3Type$Raw;
18 27 5 sb Ljava/lang/StringBuilder;
20 23 6 rawType Lorg/apache/cassandra/cql3/CQL3Type$Raw;
Exceptions:
throws org.apache.cassandra.exceptions.RequestValidationException
MethodParameters:
Name Flags
queryState
isLocalOnly
private org.apache.cassandra.db.marshal.AbstractType<?> prepareType(java.lang.String, org.apache.cassandra.cql3.CQL3Type$Raw);
descriptor: (Ljava/lang/String;Lorg/apache/cassandra/cql3/CQL3Type$Raw;)Lorg/apache/cassandra/db/marshal/AbstractType;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual org.apache.cassandra.cql3.CQL3Type$Raw.isFrozen:()Z
ifeq 2
1: new org.apache.cassandra.exceptions.InvalidRequestException
dup
ldc "The function %s should not be frozen; remove the frozen<> modifier"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
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
2: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.apache.cassandra.cql3.CQL3Type$Raw.canBeNonFrozen:()Z
ifne 4
3: aload 2
invokevirtual org.apache.cassandra.cql3.CQL3Type$Raw.freeze:()V
4: StackMap locals:
StackMap stack:
aload 2
aload 0
getfield org.apache.cassandra.cql3.statements.DropAggregateStatement.functionName:Lorg/apache/cassandra/cql3/functions/FunctionName;
getfield org.apache.cassandra.cql3.functions.FunctionName.keyspace:Ljava/lang/String;
invokevirtual org.apache.cassandra.cql3.CQL3Type$Raw.prepare:(Ljava/lang/String;)Lorg/apache/cassandra/cql3/CQL3Type;
invokeinterface org.apache.cassandra.cql3.CQL3Type.getType:()Lorg/apache/cassandra/db/marshal/AbstractType;
astore 3
start local 3 5: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/cassandra/cql3/statements/DropAggregateStatement;
0 6 1 typeName Ljava/lang/String;
0 6 2 rawType Lorg/apache/cassandra/cql3/CQL3Type$Raw;
5 6 3 type Lorg/apache/cassandra/db/marshal/AbstractType<*>;
Signature: (Ljava/lang/String;Lorg/apache/cassandra/cql3/CQL3Type$Raw;)Lorg/apache/cassandra/db/marshal/AbstractType<*>;
MethodParameters:
Name Flags
typeName
rawType
}
SourceFile: "DropAggregateStatement.java"
InnerClasses:
public abstract Raw = org.apache.cassandra.cql3.CQL3Type$Raw of org.apache.cassandra.cql3.CQL3Type
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 final Target = org.apache.cassandra.transport.Event$SchemaChange$Target of org.apache.cassandra.transport.Event$SchemaChange