aboutsummaryrefslogtreecommitdiff
path: root/logical/src/main/java/org/apache/drill/common/expression/FunctionHolderExpression.java
diff options
context:
space:
mode:
authorVolodymyr Vysotskyi <vvovyk@gmail.com>2017-05-12 18:21:10 +0000
committerAman Sinha <asinha@maprtech.com>2017-05-19 09:51:35 -0700
commit9972669df1a78c3d4e60f93b4295ad35b43207f0 (patch)
treecb11e6d077e2bda2784dcd61693e4d8c343ea8dd /logical/src/main/java/org/apache/drill/common/expression/FunctionHolderExpression.java
parent2988f716f9a43d93dd3968b5c22a24a76bbd708e (diff)
DRILL-5399: Fix race condition in DrillComplexWriterFuncHolder
Diffstat (limited to 'logical/src/main/java/org/apache/drill/common/expression/FunctionHolderExpression.java')
-rw-r--r--logical/src/main/java/org/apache/drill/common/expression/FunctionHolderExpression.java20
1 files changed, 19 insertions, 1 deletions
diff --git a/logical/src/main/java/org/apache/drill/common/expression/FunctionHolderExpression.java b/logical/src/main/java/org/apache/drill/common/expression/FunctionHolderExpression.java
index d5497f717..ecb0ae6f2 100644
--- a/logical/src/main/java/org/apache/drill/common/expression/FunctionHolderExpression.java
+++ b/logical/src/main/java/org/apache/drill/common/expression/FunctionHolderExpression.java
@@ -1,4 +1,4 @@
-/**
+/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
@@ -29,6 +29,12 @@ public abstract class FunctionHolderExpression extends LogicalExpressionBase {
public final ImmutableList<LogicalExpression> args;
public final String nameUsed;
+ /**
+ * A field reference identifies the output field and
+ * is used to reference that field in the generated classes.
+ */
+ private FieldReference fieldReference;
+
public FunctionHolderExpression(String nameUsed, ExpressionPosition pos, List<LogicalExpression> args) {
super(pos);
if (args == null) {
@@ -80,4 +86,16 @@ public abstract class FunctionHolderExpression extends LogicalExpressionBase {
/** Return the underlying function implementation holder. */
public abstract FuncHolder getHolder();
+ public FieldReference getFieldReference() {
+ return fieldReference;
+ }
+
+ /**
+ * Set the FieldReference to be used during generating code.
+ *
+ * @param fieldReference FieldReference to set.
+ */
+ public void getFieldReference(FieldReference fieldReference) {
+ this.fieldReference = fieldReference;
+ }
}