@Internal public class JsonObjectAggFunction extends BuiltInAggregateFunction<String,JsonObjectAggFunction.Accumulator>
BuiltInFunctionDefinitions.JSON_OBJECTAGG_NULL_ON_NULL / BuiltInFunctionDefinitions.JSON_OBJECTAGG_ABSENT_ON_NULL.
Note that this function only ever receives strings to accumulate because WrapJsonAggFunctionArgumentsRule wraps arguments into BuiltInFunctionDefinitions.JSON_STRING.
| Modifier and Type | Class and Description |
|---|---|
static class |
JsonObjectAggFunction.Accumulator
Accumulator for
JsonObjectAggFunction. |
| Constructor and Description |
|---|
JsonObjectAggFunction(org.apache.flink.table.types.logical.LogicalType[] argumentTypes,
boolean skipNulls) |
| Modifier and Type | Method and Description |
|---|---|
void |
accumulate(JsonObjectAggFunction.Accumulator acc,
org.apache.flink.table.data.StringData keyData,
org.apache.flink.table.data.StringData valueData) |
JsonObjectAggFunction.Accumulator |
createAccumulator() |
org.apache.flink.table.types.DataType |
getAccumulatorDataType() |
List<org.apache.flink.table.types.DataType> |
getArgumentDataTypes() |
org.apache.flink.table.types.DataType |
getOutputDataType() |
String |
getValue(JsonObjectAggFunction.Accumulator acc) |
void |
merge(JsonObjectAggFunction.Accumulator acc,
Iterable<JsonObjectAggFunction.Accumulator> others) |
void |
resetAccumulator(JsonObjectAggFunction.Accumulator acc) |
void |
retract(JsonObjectAggFunction.Accumulator acc,
org.apache.flink.table.data.StringData keyData,
org.apache.flink.table.data.StringData valueData) |
getRequirements, getTypeInference, isDeterministicgetAccumulatorType, getResultTypepublic JsonObjectAggFunction(org.apache.flink.table.types.logical.LogicalType[] argumentTypes,
boolean skipNulls)
public List<org.apache.flink.table.types.DataType> getArgumentDataTypes()
getArgumentDataTypes in class BuiltInAggregateFunction<String,JsonObjectAggFunction.Accumulator>public org.apache.flink.table.types.DataType getOutputDataType()
getOutputDataType in class BuiltInAggregateFunction<String,JsonObjectAggFunction.Accumulator>public org.apache.flink.table.types.DataType getAccumulatorDataType()
getAccumulatorDataType in class BuiltInAggregateFunction<String,JsonObjectAggFunction.Accumulator>public JsonObjectAggFunction.Accumulator createAccumulator()
createAccumulator in class org.apache.flink.table.functions.ImperativeAggregateFunction<String,JsonObjectAggFunction.Accumulator>public void resetAccumulator(JsonObjectAggFunction.Accumulator acc)
public void accumulate(JsonObjectAggFunction.Accumulator acc, org.apache.flink.table.data.StringData keyData, @Nullable org.apache.flink.table.data.StringData valueData) throws Exception
Exceptionpublic void retract(JsonObjectAggFunction.Accumulator acc, org.apache.flink.table.data.StringData keyData, @Nullable org.apache.flink.table.data.StringData valueData) throws Exception
Exceptionpublic void merge(JsonObjectAggFunction.Accumulator acc, Iterable<JsonObjectAggFunction.Accumulator> others) throws Exception
Exceptionpublic String getValue(JsonObjectAggFunction.Accumulator acc)
getValue in class org.apache.flink.table.functions.AggregateFunction<String,JsonObjectAggFunction.Accumulator>Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.