You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by li...@apache.org on 2016/12/07 04:32:30 UTC
[31/50] [abbrv] kylin git commit: minor, refine MassInTupleFilter
minor, refine MassInTupleFilter
Signed-off-by: Hongbin Ma <ma...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/a03eec88
Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/a03eec88
Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/a03eec88
Branch: refs/heads/master-cdh5.7
Commit: a03eec88f3b4e60d1f1d6bd2fd5922a97aec23f5
Parents: fe9efa8
Author: Roger Shi <ro...@hotmail.com>
Authored: Sun Dec 4 16:28:47 2016 +0800
Committer: Hongbin Ma <ma...@apache.org>
Committed: Sun Dec 4 21:28:17 2016 +0800
----------------------------------------------------------------------
.../metadata/filter/UDF/MassInTupleFilter.java | 34 +++++++++++++++++---
1 file changed, 30 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/kylin/blob/a03eec88/core-metadata/src/main/java/org/apache/kylin/metadata/filter/UDF/MassInTupleFilter.java
----------------------------------------------------------------------
diff --git a/core-metadata/src/main/java/org/apache/kylin/metadata/filter/UDF/MassInTupleFilter.java b/core-metadata/src/main/java/org/apache/kylin/metadata/filter/UDF/MassInTupleFilter.java
index 29c5550..e4e311e 100644
--- a/core-metadata/src/main/java/org/apache/kylin/metadata/filter/UDF/MassInTupleFilter.java
+++ b/core-metadata/src/main/java/org/apache/kylin/metadata/filter/UDF/MassInTupleFilter.java
@@ -19,6 +19,7 @@
package org.apache.kylin.metadata.filter.UDF;
import java.nio.ByteBuffer;
+import java.util.ArrayList;
import java.util.Collection;
import org.apache.kylin.common.KylinConfig;
@@ -40,7 +41,6 @@ import com.google.common.base.Preconditions;
import com.google.common.collect.Lists;
public class MassInTupleFilter extends FunctionTupleFilter {
-
public static final Logger logger = LoggerFactory.getLogger(MassInTupleFilter.class);
public static MassInValueProviderFactory VALUE_PROVIDER_FACTORY = null;
@@ -56,6 +56,16 @@ public class MassInTupleFilter extends FunctionTupleFilter {
super(Lists.<TupleFilter> newArrayList(), TupleFilter.FilterOperatorEnum.MASSIN);
}
+ public MassInTupleFilter(MassInTupleFilter filter) {
+ super(new ArrayList<TupleFilter>(filter.children), filter.operator);
+ this.valueProvider = filter.getValueProvider();
+ this.column = filter.getColumn();
+ this.filterTableName = filter.getFilterTableName();
+ this.filterTableResourceIdentifier = filter.getFilterTableResourceIdentifier();
+ this.filterTableType = filter.getFilterTableType();
+ this.reverse = filter.isReverse();
+ }
+
@Override
public boolean evaluate(IEvaluatableTuple tuple, IFilterCodeSystem<?> cs) {
Preconditions.checkNotNull(tuple);
@@ -132,6 +142,7 @@ public class MassInTupleFilter extends FunctionTupleFilter {
BytesUtil.writeUTFString(filterTableName, buffer);
BytesUtil.writeUTFString(filterTableResourceIdentifier, buffer);
BytesUtil.writeUTFString(filterTableType.toString(), buffer);
+ BytesUtil.writeUTFString(String.valueOf(reverse), buffer);
}
@Override
@@ -139,6 +150,7 @@ public class MassInTupleFilter extends FunctionTupleFilter {
filterTableName = BytesUtil.readUTFString(buffer);
filterTableResourceIdentifier = BytesUtil.readUTFString(buffer);
filterTableType = Functions.FilterTableType.valueOf(BytesUtil.readUTFString(buffer));
+ reverse = Boolean.valueOf(BytesUtil.readUTFString(buffer));
}
public static boolean containsMassInTupleFilter(TupleFilter filter) {
@@ -166,8 +178,22 @@ public class MassInTupleFilter extends FunctionTupleFilter {
@Override
protected Object clone() throws CloneNotSupportedException {
- MassInTupleFilter result = new MassInTupleFilter();
- result.setReverse(this.isReverse());
- return result;
+ return new MassInTupleFilter(this);
+ }
+
+ public MassInValueProvider getValueProvider() {
+ return valueProvider;
+ }
+
+ public String getFilterTableName() {
+ return filterTableName;
+ }
+
+ public String getFilterTableResourceIdentifier() {
+ return filterTableResourceIdentifier;
+ }
+
+ public Functions.FilterTableType getFilterTableType() {
+ return filterTableType;
}
}