| Index: src/org/adblockplus/libadblockplus/Filter.java | 
| diff --git a/src/org/adblockplus/libadblockplus/Filter.java b/src/org/adblockplus/libadblockplus/Filter.java | 
| new file mode 100644 | 
| index 0000000000000000000000000000000000000000..8502b666add1de692849b667aa872b75b0b3e955 | 
| --- /dev/null | 
| +++ b/src/org/adblockplus/libadblockplus/Filter.java | 
| @@ -0,0 +1,93 @@ | 
| +/* | 
| + * 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.libadblockplus; | 
| + | 
| +public class Filter extends JsValue | 
| +{ | 
| + static | 
| + { | 
| + System.loadLibrary("adblockplus-jni"); | 
| + 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); | 
| +} |