Class TSEncodingBuilder
- java.lang.Object
-
- org.apache.iotdb.tsfile.encoding.encoder.TSEncodingBuilder
-
- Direct Known Subclasses:
TSEncodingBuilder.Chimp,TSEncodingBuilder.Dictionary,TSEncodingBuilder.GorillaV1,TSEncodingBuilder.GorillaV2,TSEncodingBuilder.Plain,TSEncodingBuilder.Regular,TSEncodingBuilder.RLBE,TSEncodingBuilder.Rle,TSEncodingBuilder.Sprintz,TSEncodingBuilder.Ts2Diff,TSEncodingBuilder.Zigzag
public abstract class TSEncodingBuilder extends java.lang.ObjectEach subclass of TSEncodingBuilder responds a enumerate value in TSEncoding, which stores several configuration related to responding encoding type to generate Encoder instance.
Each TSEncoding has a responding TSEncodingBuilder. The design referring to visit pattern provides same outer interface for different TSEncodings and gets rid of the duplicate switch-case code.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classTSEncodingBuilder.Chimpfor FLOAT, DOUBLE, INT, LONG.static classTSEncodingBuilder.Dictionarystatic classTSEncodingBuilder.GorillaV1for FLOAT, DOUBLE.static classTSEncodingBuilder.GorillaV2for FLOAT, DOUBLE, INT, LONG.static classTSEncodingBuilder.Plainfor all TSDataType.static classTSEncodingBuilder.Regularfor INT32, INT64.static classTSEncodingBuilder.RLBEstatic classTSEncodingBuilder.Rlefor ENUMS, INT32, BOOLEAN, INT64, FLOAT, DOUBLE.static classTSEncodingBuilder.Sprintzstatic classTSEncodingBuilder.Ts2Difffor INT32, INT64, FLOAT, DOUBLE.static classTSEncodingBuilder.Zigzag
-
Field Summary
Fields Modifier and Type Field Description protected TSFileConfigconf
-
Constructor Summary
Constructors Modifier Constructor Description protectedTSEncodingBuilder()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract EncodergetEncoder(TSDataType type)return a thread safe series's encoder with different types and parameters according to its measurement id and data type.static TSEncodingBuildergetEncodingBuilder(TSEncoding type)return responding TSEncodingBuilder from a TSEncoding.abstract voidinitFromProps(java.util.Map<java.lang.String,java.lang.String> props)for TSEncoding, JSON is a kind of type for initialization.java.lang.StringtoString()
-
-
-
Field Detail
-
conf
protected final TSFileConfig conf
-
-
Method Detail
-
getEncodingBuilder
public static TSEncodingBuilder getEncodingBuilder(TSEncoding type)
return responding TSEncodingBuilder from a TSEncoding.- Parameters:
type- - given encoding type- Returns:
- - responding TSEncodingBuilder
-
getEncoder
public abstract Encoder getEncoder(TSDataType type)
return a thread safe series's encoder with different types and parameters according to its measurement id and data type.- Parameters:
type- - given data type- Returns:
- - return a Encoder
-
initFromProps
public abstract void initFromProps(java.util.Map<java.lang.String,java.lang.String> props)
for TSEncoding, JSON is a kind of type for initialization.InitFromJsonObjectgets values from JSON object which will be used latter.
if this type has extra parameters to construct, override it.- Parameters:
props- - properties of encoding
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-