Package io.fury.format.encoder
Class BaseBinaryEncoderBuilder
java.lang.Object
io.fury.builder.CodecBuilder
io.fury.format.encoder.BaseBinaryEncoderBuilder
- Direct Known Subclasses:
ArrayEncoderBuilder,MapEncoderBuilder,RowEncoderBuilder
- Author:
- chaokunyang
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final Map<com.google.common.reflect.TypeToken<?>, Expression.Reference> protected static com.google.common.reflect.TypeToken<BinaryArrayWriter> protected static final com.google.common.reflect.TypeToken<org.apache.arrow.vector.types.pojo.Field> protected final Map<com.google.common.reflect.TypeToken<?>, Expression.Reference> protected static com.google.common.reflect.TypeToken<BinaryArray> protected static com.google.common.reflect.TypeToken<BinaryRow> protected static final Stringprotected static com.google.common.reflect.TypeToken<Row> protected final Map<com.google.common.reflect.TypeToken<?>, Expression.Reference> protected static com.google.common.reflect.TypeToken<BinaryRowWriter> protected static final com.google.common.reflect.TypeToken<org.apache.arrow.vector.types.pojo.Schema> protected static com.google.common.reflect.TypeToken<org.apache.arrow.vector.types.pojo.Schema> protected static com.google.common.reflect.TypeToken<BinaryWriter> Fields inherited from class io.fury.builder.CodecBuilder
beanClass, beanType, ctx, fieldMap, FURY_NAME, furyRef, isRecord, recordComponentDefaultValues, recordCtrAccessible, ROOT_OBJECT_NAME -
Constructor Summary
ConstructorsConstructorDescriptionBaseBinaryEncoderBuilder(CodegenContext context, com.google.common.reflect.TypeToken<?> beanType) BaseBinaryEncoderBuilder(CodegenContext context, Class<?> beanClass) -
Method Summary
Modifier and TypeMethodDescriptioncodecClassName(Class<?> beanClass) codecClassName(Class<?> beanClass, String prefix) codecQualifiedClassName(Class<?> beanClass) codecQualifiedClassName(Class<?> beanClass, String prefix) protected Stringprotected ExpressiondeserializeFor(Expression value, com.google.common.reflect.TypeToken<?> typeToken) Returns an expression that deserializevalueas a java object of typetypeToken.protected ExpressiondeserializeForArray(Expression arrayData, com.google.common.reflect.TypeToken<?> typeToken) Return an expression that deserializearrayData.protected ExpressiondeserializeForBean(Expression row, com.google.common.reflect.TypeToken<?> typeToken) Returns an expression that deserializerowas a java bean of typetypeToken.protected ExpressiondeserializeForCollection(Expression arrayData, com.google.common.reflect.TypeToken<?> typeToken) Returns an expression that deserializearrayDataas a java collection.protected ExpressiondeserializeForMap(Expression mapData, com.google.common.reflect.TypeToken<?> typeToken) Returns an expression that deserializemapDataas a java map.protected ExpressiondeserializeForMultiDimensionArray(Expression arrayData, Expression rootJavaArray, int numDimensions, com.google.common.reflect.TypeToken<?> typeToken, Expression[] indexes) Returns an expression to deserialize multi-array fromarrayData, and set value torootJavaArray.protected ExpressiondeserializeForObject(Expression value, com.google.common.reflect.TypeToken<?> typeToken) Using fury to deserialize sliced MemoryBuffer.protected Expression.ReferencegetOrCreateArrayWriter(com.google.common.reflect.TypeToken<?> typeToken, Expression arrayDataType, Expression writer) Get or create an ArrayWriter for giventypeand usewriteras parent writer.protected Expression.ReferencegetOrCreateArrayWriter(com.google.common.reflect.TypeToken<?> typeToken, Expression arrayDataType, Expression writer, boolean reuse) protected ExpressionnewCollection(com.google.common.reflect.TypeToken<?> typeToken) Create a java collection.protected ExpressionnewMap(com.google.common.reflect.TypeToken<?> typeToken) Create a java map.protected ExpressionserializeFor(Expression ordinal, Expression inputObject, Expression writer, com.google.common.reflect.TypeToken<?> typeToken, Expression arrowField) Return an expression for serializing an object of given type to row format representation.protected ExpressionserializeForArray(Expression inputObject, Expression writer, com.google.common.reflect.TypeToken<?> typeToken, Expression arrowField) Returns an expression to write iterableinputObjectof typetypeTokenasBinaryArrayusing givenwriter.protected ExpressionserializeForArray(Expression inputObject, Expression writer, com.google.common.reflect.TypeToken<?> typeToken, Expression arrowField, boolean reuse) protected ExpressionserializeForBean(Expression ordinal, Expression writer, Expression inputObject, com.google.common.reflect.TypeToken<?> typeToken, Expression structField) Returns an expression to write beaninputObjectto positionordinalof row/array using givenwriter.protected ExpressionserializeForMap(Expression ordinal, Expression writer, Expression inputObject, com.google.common.reflect.TypeToken<?> typeToken, Expression arrowField) Returns an expression to write mapinputObjectto positionordinalof row/array using givenwriter.protected ExpressionserializeForObject(Expression ordinal, Expression writer, Expression inputObject) Return an expression to serialize opaqueinputObjectas binary usingfury.protected ExpressionsetValueOrNull(Expression writer, Expression ordinal, Expression inputObject, Expression value) Methods inherited from class io.fury.builder.CodecBuilder
beanClassExpr, beanClassExpr, buildDecodeExpression, buildDefaultComponentsArray, buildEncodeExpression, buildRecordComponentDefaultValues, genCode, getFieldValue, getRecordCtrHandle, newBean, setFieldValue, sourcePublicAccessible, staticBeanClassExpr, tryCastIfPublic, tryCastIfPublic, tryCastIfPublic, tryInlineCast, unsafeGet, unsafeGetBoolean, unsafeGetChar, unsafeGetDouble, unsafeGetFloat, unsafeGetInt, unsafeGetLong, unsafeGetShort, unsafePut, unsafePutBoolean, unsafePutChar, unsafePutDouble, unsafePutFloat, unsafePutInt, unsafePutLong, unsafePutShort
-
Field Details
-
REFERENCES_NAME
- See Also:
-
SCHEMA_TYPE
protected static final com.google.common.reflect.TypeToken<org.apache.arrow.vector.types.pojo.Schema> SCHEMA_TYPE -
ARROW_FIELD_TYPE
protected static final com.google.common.reflect.TypeToken<org.apache.arrow.vector.types.pojo.Field> ARROW_FIELD_TYPE -
schemaTypeToken
protected static com.google.common.reflect.TypeToken<org.apache.arrow.vector.types.pojo.Schema> schemaTypeToken -
writerTypeToken
-
rowWriterTypeToken
-
arrayWriterTypeToken
-
rowTypeToken
-
binaryRowTypeToken
-
binaryArrayTypeToken
-
arrayWriterMap
-
beanEncoderMap
-
rowWriterMap
-
-
Constructor Details
-
BaseBinaryEncoderBuilder
-
BaseBinaryEncoderBuilder
public BaseBinaryEncoderBuilder(CodegenContext context, com.google.common.reflect.TypeToken<?> beanType)
-
-
Method Details
-
codecClassName
-
codecClassName
-
codecSuffix
-
codecQualifiedClassName
-
codecQualifiedClassName
-
serializeFor
protected Expression serializeFor(Expression ordinal, Expression inputObject, Expression writer, com.google.common.reflect.TypeToken<?> typeToken, Expression arrowField) Return an expression for serializing an object of given type to row format representation. The inputObject will be written to positionordinalof row/array using givenwriter -
serializeForArray
protected Expression serializeForArray(Expression inputObject, Expression writer, com.google.common.reflect.TypeToken<?> typeToken, Expression arrowField) Returns an expression to write iterableinputObjectof typetypeTokenasBinaryArrayusing givenwriter. -
serializeForArray
protected Expression serializeForArray(Expression inputObject, Expression writer, com.google.common.reflect.TypeToken<?> typeToken, Expression arrowField, boolean reuse) -
getOrCreateArrayWriter
protected Expression.Reference getOrCreateArrayWriter(com.google.common.reflect.TypeToken<?> typeToken, Expression arrayDataType, Expression writer) Get or create an ArrayWriter for giventypeand usewriteras parent writer. -
getOrCreateArrayWriter
protected Expression.Reference getOrCreateArrayWriter(com.google.common.reflect.TypeToken<?> typeToken, Expression arrayDataType, Expression writer, boolean reuse) -
serializeForMap
protected Expression serializeForMap(Expression ordinal, Expression writer, Expression inputObject, com.google.common.reflect.TypeToken<?> typeToken, Expression arrowField) Returns an expression to write mapinputObjectto positionordinalof row/array using givenwriter. -
serializeForBean
protected Expression serializeForBean(Expression ordinal, Expression writer, Expression inputObject, com.google.common.reflect.TypeToken<?> typeToken, Expression structField) Returns an expression to write beaninputObjectto positionordinalof row/array using givenwriter. -
serializeForObject
protected Expression serializeForObject(Expression ordinal, Expression writer, Expression inputObject) Return an expression to serialize opaqueinputObjectas binary usingfury. When deserialization, using fury to deserialize sliced MemoryBuffer. SeeBinaryUtils.getElemAccessMethodName(TypeToken),Getters.getBuffer(int) -
setValueOrNull
protected Expression setValueOrNull(Expression writer, Expression ordinal, Expression inputObject, Expression value) -
deserializeFor
protected Expression deserializeFor(Expression value, com.google.common.reflect.TypeToken<?> typeToken) Returns an expression that deserializevalueas a java object of typetypeToken. -
deserializeForBean
protected Expression deserializeForBean(Expression row, com.google.common.reflect.TypeToken<?> typeToken) Returns an expression that deserializerowas a java bean of typetypeToken. -
deserializeForMap
protected Expression deserializeForMap(Expression mapData, com.google.common.reflect.TypeToken<?> typeToken) Returns an expression that deserializemapDataas a java map. -
deserializeForCollection
protected Expression deserializeForCollection(Expression arrayData, com.google.common.reflect.TypeToken<?> typeToken) Returns an expression that deserializearrayDataas a java collection. -
newCollection
-
newMap
Create a java map. Create aHashMapiftypeTokenis super class of HashMap; Create an instance oftypeTokenotherwise. -
deserializeForMultiDimensionArray
protected Expression deserializeForMultiDimensionArray(Expression arrayData, Expression rootJavaArray, int numDimensions, com.google.common.reflect.TypeToken<?> typeToken, Expression[] indexes) Returns an expression to deserialize multi-array fromarrayData, and set value torootJavaArray. -
deserializeForArray
protected Expression deserializeForArray(Expression arrayData, com.google.common.reflect.TypeToken<?> typeToken) Return an expression that deserializearrayData. If array is multi-array, forward todeserializeForMultiDimensionArray(io.fury.codegen.Expression, io.fury.codegen.Expression, int, com.google.common.reflect.TypeToken<?>, io.fury.codegen.Expression[]) -
deserializeForObject
protected Expression deserializeForObject(Expression value, com.google.common.reflect.TypeToken<?> typeToken) Using fury to deserialize sliced MemoryBuffer. seeBinaryUtils.getElemAccessMethodName(TypeToken),Getters.getBuffer(int)
-