This is an automated email from the ASF dual-hosted git repository.
alsuliman pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/asterixdb.git
The following commit(s) were added to refs/heads/master by this push:
new d5e5d0f [NO ISSUE][FUN] Code refactoring of StringJsonParseDescriptor
d5e5d0f is described below
commit d5e5d0f8a71be2220224d19668c9cb7bc51770ec
Author: Ali Alsuliman <[email protected]>
AuthorDate: Thu Dec 9 16:37:41 2021 -0800
[NO ISSUE][FUN] Code refactoring of StringJsonParseDescriptor
- user model changes: no
- storage format changes: no
- interface changes: no
Details:
Change-Id: I3e2dbade466d1a534af39d42a0414ba287d31933
Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/14423
Tested-by: Jenkins <[email protected]>
Reviewed-by: Ali Alsuliman <[email protected]>
Reviewed-by: Dmitry Lychagin <[email protected]>
---
.../external/parser/evaluators/StringJsonParseDescriptor.java | 10 +---------
.../external/parser/evaluators/StringJsonParseEval.java | 7 ++++---
2 files changed, 5 insertions(+), 12 deletions(-)
diff --git
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/evaluators/StringJsonParseDescriptor.java
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/evaluators/StringJsonParseDescriptor.java
index a548fec..4affafe 100644
---
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/evaluators/StringJsonParseDescriptor.java
+++
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/evaluators/StringJsonParseDescriptor.java
@@ -23,8 +23,6 @@ import static
org.apache.asterix.om.functions.BuiltinFunctions.STRING_PARSE_JSON
import java.io.IOException;
import org.apache.asterix.common.annotations.MissingNullInOutFunction;
-import org.apache.asterix.external.parser.JSONDataParser;
-import org.apache.asterix.external.parser.factory.JSONDataParserFactory;
import org.apache.asterix.om.functions.IFunctionDescriptorFactory;
import
org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor;
import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException;
@@ -32,7 +30,6 @@ import
org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier;
import org.apache.hyracks.algebricks.runtime.base.IEvaluatorContext;
import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator;
import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory;
-import org.apache.hyracks.api.context.IHyracksTaskContext;
import org.apache.hyracks.api.exceptions.HyracksDataException;
import org.apache.hyracks.api.exceptions.SourceLocation;
@@ -72,15 +69,10 @@ public class StringJsonParseDescriptor extends
AbstractScalarFunctionDynamicDesc
@Override
public IScalarEvaluator createScalarEvaluator(IEvaluatorContext ctx)
throws HyracksDataException {
try {
- return new StringJsonParseEval(ctx,
stringEvalFactory.createScalarEvaluator(ctx),
- createParser(ctx.getTaskContext()), sourceLocation);
+ return new StringJsonParseEval(ctx,
stringEvalFactory.createScalarEvaluator(ctx), sourceLocation);
} catch (IOException e) {
throw HyracksDataException.create(e);
}
}
-
- private JSONDataParser createParser(IHyracksTaskContext ctx) throws
HyracksDataException {
- return (JSONDataParser) new
JSONDataParserFactory().createInputStreamParser(ctx, 0);
- }
}
}
diff --git
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/evaluators/StringJsonParseEval.java
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/evaluators/StringJsonParseEval.java
index 5c15f15..7589e33 100644
---
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/evaluators/StringJsonParseEval.java
+++
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/evaluators/StringJsonParseEval.java
@@ -25,6 +25,7 @@ import java.io.IOException;
import org.apache.asterix.common.exceptions.ErrorCode;
import org.apache.asterix.external.parser.JSONDataParser;
+import org.apache.asterix.external.parser.factory.JSONDataParserFactory;
import org.apache.asterix.om.exceptions.ExceptionUtil;
import org.apache.asterix.om.types.ATypeTag;
import org.apache.asterix.runtime.evaluators.functions.PointableHelper;
@@ -52,11 +53,11 @@ public class StringJsonParseEval implements
IScalarEvaluator {
private final ArrayBackedValueStorage resultStorage;
private final DataOutput out;
- public StringJsonParseEval(IEvaluatorContext ctx, IScalarEvaluator
inputEval, JSONDataParser parser,
- SourceLocation sourceLocation) throws IOException {
+ public StringJsonParseEval(IEvaluatorContext ctx, IScalarEvaluator
inputEval, SourceLocation sourceLocation)
+ throws IOException {
this.ctx = ctx;
this.inputEval = inputEval;
- this.parser = parser;
+ this.parser = (JSONDataParser) new
JSONDataParserFactory().createInputStreamParser(ctx.getTaskContext(), 0);
this.sourceLocation = sourceLocation;
inputVal = new VoidPointable();
utf8Val = new UTF8StringPointable();