You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by ty...@apache.org on 2014/08/19 18:10:32 UTC
git commit: Verify that UDF class methods are static
Repository: cassandra
Updated Branches:
refs/heads/trunk 16069c351 -> 1ed1af5b9
Verify that UDF class methods are static
Patch by Tyler Hobbs; review by Robert Stupp for CASSANDRA-7781
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/1ed1af5b
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/1ed1af5b
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/1ed1af5b
Branch: refs/heads/trunk
Commit: 1ed1af5b9baaecf5810ce3ca176ed3b14c8893b8
Parents: 16069c3
Author: Tyler Hobbs <ty...@datastax.com>
Authored: Tue Aug 19 11:09:57 2014 -0500
Committer: Tyler Hobbs <ty...@datastax.com>
Committed: Tue Aug 19 11:09:57 2014 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/cql3/udf/UDFunction.java | 4 ++++
2 files changed, 5 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/1ed1af5b/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 63077a7..92d784d 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
3.0
+ * Verify that UDF class methods are static (CASSANDRA-7781)
* Support pure user-defined functions (CASSANDRA-7395)
* Permit configurable timestamps with cassandra-stress (CASSANDRA-7416)
* Move sstable RandomAccessReader to nio2, which allows using the
http://git-wip-us.apache.org/repos/asf/cassandra/blob/1ed1af5b/src/java/org/apache/cassandra/cql3/udf/UDFunction.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/udf/UDFunction.java b/src/java/org/apache/cassandra/cql3/udf/UDFunction.java
index 4866c22..89f37d5 100644
--- a/src/java/org/apache/cassandra/cql3/udf/UDFunction.java
+++ b/src/java/org/apache/cassandra/cql3/udf/UDFunction.java
@@ -20,6 +20,7 @@ package org.apache.cassandra.cql3.udf;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
+import java.lang.reflect.Modifier;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.Arrays;
@@ -91,6 +92,9 @@ public class UDFunction
Method method = cls.getMethod(methodName, paramTypes);
+ if (!Modifier.isStatic(method.getModifiers()))
+ throw new InvalidRequestException("Method " + className + '.' + methodName + '(' + Arrays.toString(paramTypes) + ") is not static");
+
if (!jReturnType.isAssignableFrom(method.getReturnType()))
{
throw new InvalidRequestException("Method " + className + '.' + methodName + '(' + Arrays.toString(paramTypes) + ") " +