Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: src/org/adblockplus/android/api/Filter.java

Issue 6606493159784448: New JNI bindings (Closed)
Patch Set: Reuploaded full diff Created March 28, 2014, 3:56 p.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/org/adblockplus/android/api/Filter.java
diff --git a/src/org/adblockplus/android/api/Filter.java b/src/org/adblockplus/android/api/Filter.java
new file mode 100644
index 0000000000000000000000000000000000000000..82fa2cacb2d99a9ea1a4de65ad2060506af993c8
--- /dev/null
+++ b/src/org/adblockplus/android/api/Filter.java
@@ -0,0 +1,92 @@
+/*
+ * This file is part of Adblock Plus <http://adblockplus.org/>,
+ * Copyright (C) 2006-2014 Eyeo GmbH
+ *
+ * Adblock Plus is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 3 as
+ * published by the Free Software Foundation.
+ *
+ * Adblock Plus is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>.
+ */
+package org.adblockplus.android.api;
+
+public class Filter extends JsValue
+{
+ static
+ {
+ System.loadLibrary("abpEngine");
+ registerNatives();
+ }
+
+ public Filter(final JsValue jsValue)
+ {
+ super(ctor(jsValue.ptr));
+ }
+
+ private Filter(final long pointer)
+ {
+ super(pointer);
+ }
+
+ public Type getType()
+ {
+ return getType(this.ptr);
+ }
+
+ public boolean isListed()
+ {
+ return isListed(this.ptr);
+ }
+
+ public void addToList()
+ {
+ addToList(this.ptr);
+ }
+
+ public void removeFromList()
+ {
+ removeFromList(this.ptr);
+ }
+
+ @Override
+ public int hashCode()
+ {
+ return (int)(this.ptr >> 32) * (int)this.ptr;
+ }
+
+ @Override
+ public boolean equals(final Object o)
+ {
+ if (!(o instanceof Filter))
+ {
+ return false;
+ }
+
+ return operatorEquals(this.ptr, ((Filter)o).ptr);
+ }
+
+ public static enum Type
+ {
+ BLOCKING, EXCEPTION, ELEMHIDE, ELEMHIDE_EXCEPTION, COMMENT, INVALID;
+ }
+
+ private final static native void registerNatives();
+
+ private final static native long ctor(long jsValuePtr);
+
+ private final static native Type getType(long ptr);
+
+ private final static native boolean isListed(long ptr);
+
+ private final static native void addToList(long ptr);
+
+ private final static native void removeFromList(long ptr);
+
+ private final static native boolean operatorEquals(long ptr, long other);
+}

Powered by Google App Engine
This is Rietveld