Package io.substrait.extension
Class ImmutableSimpleExtension.ExtensionSignatures.Builder
java.lang.Object
io.substrait.extension.ImmutableSimpleExtension.ExtensionSignatures.Builder
- Enclosing class:
- ImmutableSimpleExtension.ExtensionSignatures
Builds instances of type
ExtensionSignatures.
Initialize attributes and then invoke the build() method to create an
immutable instance.
Builder is not thread-safe and generally should not be stored in a field or collection,
but instead used immediately to create instances.
-
Method Summary
Modifier and TypeMethodDescriptionAdds one element toaggregateslist.addAggregates(SimpleExtension.AggregateFunction... elements) Adds elements toaggregateslist.addAllAggregates(Iterable<? extends SimpleExtension.AggregateFunction> elements) Adds elements toaggregateslist.addAllScalars(Iterable<? extends SimpleExtension.ScalarFunction> elements) Adds elements toscalarslist.addAllTypes(Iterable<? extends SimpleExtension.Type> elements) Adds elements totypeslist.addAllWindows(Iterable<? extends SimpleExtension.WindowFunction> elements) Adds elements towindowslist.addScalars(SimpleExtension.ScalarFunction element) Adds one element toscalarslist.addScalars(SimpleExtension.ScalarFunction... elements) Adds elements toscalarslist.addTypes(SimpleExtension.Type element) Adds one element totypeslist.addTypes(SimpleExtension.Type... elements) Adds elements totypeslist.addWindows(SimpleExtension.WindowFunction element) Adds one element towindowslist.addWindows(SimpleExtension.WindowFunction... elements) Adds elements towindowslist.aggregates(Iterable<? extends SimpleExtension.AggregateFunction> elements) Sets or replaces all elements foraggregateslist.build()Builds a newExtensionSignatures.from(SimpleExtension.ExtensionSignatures instance) Fill a builder with attribute values from the providedExtensionSignaturesinstance.Initializes the optional valuemetadatato metadata.Initializes the optional valuemetadatato metadata.scalars(Iterable<? extends SimpleExtension.ScalarFunction> elements) Sets or replaces all elements forscalarslist.types(Iterable<? extends SimpleExtension.Type> elements) Sets or replaces all elements fortypeslist.Initializes the value for theurnattribute.windows(Iterable<? extends SimpleExtension.WindowFunction> elements) Sets or replaces all elements forwindowslist.
-
Method Details
-
from
public final ImmutableSimpleExtension.ExtensionSignatures.Builder from(SimpleExtension.ExtensionSignatures instance) Fill a builder with attribute values from the providedExtensionSignaturesinstance. Regular attribute values will be replaced with those from the given instance. Absent optional values will not replace present values. Collection elements and entries will be added, not replaced.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
addTypes
public final ImmutableSimpleExtension.ExtensionSignatures.Builder addTypes(SimpleExtension.Type element) Adds one element totypeslist.- Parameters:
element- A types element- Returns:
thisbuilder for use in a chained invocation
-
addTypes
public final ImmutableSimpleExtension.ExtensionSignatures.Builder addTypes(SimpleExtension.Type... elements) Adds elements totypeslist.- Parameters:
elements- An array of types elements- Returns:
thisbuilder for use in a chained invocation
-
types
public final ImmutableSimpleExtension.ExtensionSignatures.Builder types(Iterable<? extends SimpleExtension.Type> elements) Sets or replaces all elements fortypeslist.- Parameters:
elements- An iterable of types elements- Returns:
thisbuilder for use in a chained invocation
-
addAllTypes
public final ImmutableSimpleExtension.ExtensionSignatures.Builder addAllTypes(Iterable<? extends SimpleExtension.Type> elements) Adds elements totypeslist.- Parameters:
elements- An iterable of types elements- Returns:
thisbuilder for use in a chained invocation
-
urn
Initializes the value for theurnattribute.- Parameters:
urn- The value for urn- Returns:
thisbuilder for use in a chained invocation
-
addScalars
public final ImmutableSimpleExtension.ExtensionSignatures.Builder addScalars(SimpleExtension.ScalarFunction element) Adds one element toscalarslist.- Parameters:
element- A scalars element- Returns:
thisbuilder for use in a chained invocation
-
addScalars
public final ImmutableSimpleExtension.ExtensionSignatures.Builder addScalars(SimpleExtension.ScalarFunction... elements) Adds elements toscalarslist.- Parameters:
elements- An array of scalars elements- Returns:
thisbuilder for use in a chained invocation
-
scalars
public final ImmutableSimpleExtension.ExtensionSignatures.Builder scalars(Iterable<? extends SimpleExtension.ScalarFunction> elements) Sets or replaces all elements forscalarslist.- Parameters:
elements- An iterable of scalars elements- Returns:
thisbuilder for use in a chained invocation
-
addAllScalars
public final ImmutableSimpleExtension.ExtensionSignatures.Builder addAllScalars(Iterable<? extends SimpleExtension.ScalarFunction> elements) Adds elements toscalarslist.- Parameters:
elements- An iterable of scalars elements- Returns:
thisbuilder for use in a chained invocation
-
addAggregates
public final ImmutableSimpleExtension.ExtensionSignatures.Builder addAggregates(SimpleExtension.AggregateFunction element) Adds one element toaggregateslist.- Parameters:
element- A aggregates element- Returns:
thisbuilder for use in a chained invocation
-
addAggregates
public final ImmutableSimpleExtension.ExtensionSignatures.Builder addAggregates(SimpleExtension.AggregateFunction... elements) Adds elements toaggregateslist.- Parameters:
elements- An array of aggregates elements- Returns:
thisbuilder for use in a chained invocation
-
aggregates
public final ImmutableSimpleExtension.ExtensionSignatures.Builder aggregates(Iterable<? extends SimpleExtension.AggregateFunction> elements) Sets or replaces all elements foraggregateslist.- Parameters:
elements- An iterable of aggregates elements- Returns:
thisbuilder for use in a chained invocation
-
addAllAggregates
public final ImmutableSimpleExtension.ExtensionSignatures.Builder addAllAggregates(Iterable<? extends SimpleExtension.AggregateFunction> elements) Adds elements toaggregateslist.- Parameters:
elements- An iterable of aggregates elements- Returns:
thisbuilder for use in a chained invocation
-
addWindows
public final ImmutableSimpleExtension.ExtensionSignatures.Builder addWindows(SimpleExtension.WindowFunction element) Adds one element towindowslist.- Parameters:
element- A windows element- Returns:
thisbuilder for use in a chained invocation
-
addWindows
public final ImmutableSimpleExtension.ExtensionSignatures.Builder addWindows(SimpleExtension.WindowFunction... elements) Adds elements towindowslist.- Parameters:
elements- An array of windows elements- Returns:
thisbuilder for use in a chained invocation
-
windows
public final ImmutableSimpleExtension.ExtensionSignatures.Builder windows(Iterable<? extends SimpleExtension.WindowFunction> elements) Sets or replaces all elements forwindowslist.- Parameters:
elements- An iterable of windows elements- Returns:
thisbuilder for use in a chained invocation
-
addAllWindows
public final ImmutableSimpleExtension.ExtensionSignatures.Builder addAllWindows(Iterable<? extends SimpleExtension.WindowFunction> elements) Adds elements towindowslist.- Parameters:
elements- An iterable of windows elements- Returns:
thisbuilder for use in a chained invocation
-
metadata
public final ImmutableSimpleExtension.ExtensionSignatures.Builder metadata(Map<String, Object> metadata) Initializes the optional valuemetadatato metadata.- Parameters:
metadata- The value for metadata- Returns:
thisbuilder for chained invocation
-
metadata
public final ImmutableSimpleExtension.ExtensionSignatures.Builder metadata(Optional<? extends Map<String, Object>> metadata) Initializes the optional valuemetadatato metadata.- Parameters:
metadata- The value for metadata- Returns:
thisbuilder for use in a chained invocation
-
build
Builds a newExtensionSignatures.- Returns:
- An immutable instance of ExtensionSignatures
- Throws:
IllegalStateException- if any required attributes are missing
-