Module org.elasticsearch.server
Record Class PipelineConfig
java.lang.Object
java.lang.Record
org.elasticsearch.index.codec.tsdb.pipeline.PipelineConfig
- Record Components:
dataType- the numeric data typeblockSize- the number of values per block (must be a positive power of 2)transforms- the ordered transform stage specificationspayload- the terminal payload stage specification
public record PipelineConfig(PipelineDescriptor.DataType dataType, int blockSize, List<StageSpec.TransformSpec> transforms, StageSpec.PayloadSpec payload)
extends Record
Immutable specification for a field's encoding pipeline.
Captures the data type, block size, ordered transform stages, and terminal payload stage. The builder separates transforms from the payload at construction time, making illegal states (e.g. two payloads, payload in the middle) unrepresentable.
Use forLongs(int) to start building a configuration via the fluent
builder API.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classBuilder for long (integral) pipelines. -
Constructor Summary
ConstructorsConstructorDescriptionPipelineConfig(PipelineDescriptor.DataType dataType, int blockSize, List<StageSpec.TransformSpec> transforms, StageSpec.PayloadSpec payload) Validates invariants and creates a defensive copy of the transforms list. -
Method Summary
Modifier and TypeMethodDescriptionintReturns the value of theblockSizerecord component.dataType()Returns the value of thedataTyperecord component.Returns a human-readable description of the pipeline stages.final booleanIndicates whether some other object is "equal to" this one.static PipelineConfig.LongBuilderforLongs(int blockSize) Starts building a long (integral) pipeline configuration.final inthashCode()Returns a hash code value for this object.payload()Returns the value of thepayloadrecord component.specs()Returns all stage specifications in order (transforms followed by payload).final StringtoString()Returns a string representation of this record class.Returns the value of thetransformsrecord component.
-
Constructor Details
-
PipelineConfig
public PipelineConfig(PipelineDescriptor.DataType dataType, int blockSize, List<StageSpec.TransformSpec> transforms, StageSpec.PayloadSpec payload) Validates invariants and creates a defensive copy of the transforms list.
-
-
Method Details
-
forLongs
Starts building a long (integral) pipeline configuration.- Parameters:
blockSize- the number of values per block- Returns:
- a new builder for long pipelines
-
specs
Returns all stage specifications in order (transforms followed by payload).- Returns:
- unmodifiable list of all specs
-
describeStages
Returns a human-readable description of the pipeline stages.- Returns:
- the stage names joined by
>delimiters
-
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared withObjects::equals(Object,Object); primitive components are compared with '=='. -
dataType
Returns the value of thedataTyperecord component.- Returns:
- the value of the
dataTyperecord component
-
blockSize
public int blockSize()Returns the value of theblockSizerecord component.- Returns:
- the value of the
blockSizerecord component
-
transforms
Returns the value of thetransformsrecord component.- Returns:
- the value of the
transformsrecord component
-
payload
Returns the value of thepayloadrecord component.- Returns:
- the value of the
payloadrecord component
-