Package io.substrait.extension
Class ImmutableSimpleExtension.ExtensionCollection.Builder
java.lang.Object
io.substrait.extension.ImmutableSimpleExtension.ExtensionCollection.Builder
- Enclosing class:
- ImmutableSimpleExtension.ExtensionCollection
Builds instances of type
ExtensionCollection.
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 toaggregateFunctionslist.Adds elements toaggregateFunctionslist.addAllAggregateFunctions(Iterable<? extends SimpleExtension.AggregateFunctionVariant> elements) Adds elements toaggregateFunctionslist.addAllScalarFunctions(Iterable<? extends SimpleExtension.ScalarFunctionVariant> elements) Adds elements toscalarFunctionslist.addAllTypes(Iterable<? extends SimpleExtension.Type> elements) Adds elements totypeslist.addAllWindowFunctions(Iterable<? extends SimpleExtension.WindowFunctionVariant> elements) Adds elements towindowFunctionslist.Adds one element toscalarFunctionslist.addScalarFunctions(SimpleExtension.ScalarFunctionVariant... elements) Adds elements toscalarFunctionslist.addTypes(SimpleExtension.Type element) Adds one element totypeslist.addTypes(SimpleExtension.Type... elements) Adds elements totypeslist.Adds one element towindowFunctionslist.addWindowFunctions(SimpleExtension.WindowFunctionVariant... elements) Adds elements towindowFunctionslist.aggregateFunctions(Iterable<? extends SimpleExtension.AggregateFunctionVariant> elements) Sets or replaces all elements foraggregateFunctionslist.build()Builds a newExtensionCollection.Sets or replaces all mappings from the specified map as entries for theextensionMetadatamap.from(SimpleExtension.ExtensionCollection instance) Fill a builder with attribute values from the providedExtensionCollectioninstance.Put all mappings from the specified map as entries toextensionMetadatamap.putExtensionMetadata(String key, Map<String, Object> value) Put one entry to theextensionMetadatamap.Put one entry to theextensionMetadatamap.scalarFunctions(Iterable<? extends SimpleExtension.ScalarFunctionVariant> elements) Sets or replaces all elements forscalarFunctionslist.types(Iterable<? extends SimpleExtension.Type> elements) Sets or replaces all elements fortypeslist.windowFunctions(Iterable<? extends SimpleExtension.WindowFunctionVariant> elements) Sets or replaces all elements forwindowFunctionslist.
-
Method Details
-
from
public final ImmutableSimpleExtension.ExtensionCollection.Builder from(SimpleExtension.ExtensionCollection instance) Fill a builder with attribute values from the providedExtensionCollectioninstance. 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
-
putExtensionMetadata
public final ImmutableSimpleExtension.ExtensionCollection.Builder putExtensionMetadata(String key, Map<String, Object> value) Put one entry to theextensionMetadatamap.- Parameters:
key- The key in the extensionMetadata mapvalue- The associated value in the extensionMetadata map- Returns:
thisbuilder for use in a chained invocation
-
putExtensionMetadata
public final ImmutableSimpleExtension.ExtensionCollection.Builder putExtensionMetadata(Map.Entry<String, ? extends Map<String, Object>> entry) Put one entry to theextensionMetadatamap. Nulls are not permitted- Parameters:
entry- The key and value entry- Returns:
thisbuilder for use in a chained invocation
-
extensionMetadata
public final ImmutableSimpleExtension.ExtensionCollection.Builder extensionMetadata(Map<String, ? extends Map<String, Object>> entries) Sets or replaces all mappings from the specified map as entries for theextensionMetadatamap. Nulls are not permitted- Parameters:
entries- The entries that will be added to the extensionMetadata map- Returns:
thisbuilder for use in a chained invocation
-
putAllExtensionMetadata
public final ImmutableSimpleExtension.ExtensionCollection.Builder putAllExtensionMetadata(Map<String, ? extends Map<String, Object>> entries) Put all mappings from the specified map as entries toextensionMetadatamap. Nulls are not permitted- Parameters:
entries- The entries that will be added to the extensionMetadata map- Returns:
thisbuilder for use in a chained invocation
-
addTypes
public final ImmutableSimpleExtension.ExtensionCollection.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.ExtensionCollection.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.ExtensionCollection.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.ExtensionCollection.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
-
addScalarFunctions
public final ImmutableSimpleExtension.ExtensionCollection.Builder addScalarFunctions(SimpleExtension.ScalarFunctionVariant element) Adds one element toscalarFunctionslist.- Parameters:
element- A scalarFunctions element- Returns:
thisbuilder for use in a chained invocation
-
addScalarFunctions
public final ImmutableSimpleExtension.ExtensionCollection.Builder addScalarFunctions(SimpleExtension.ScalarFunctionVariant... elements) Adds elements toscalarFunctionslist.- Parameters:
elements- An array of scalarFunctions elements- Returns:
thisbuilder for use in a chained invocation
-
scalarFunctions
public final ImmutableSimpleExtension.ExtensionCollection.Builder scalarFunctions(Iterable<? extends SimpleExtension.ScalarFunctionVariant> elements) Sets or replaces all elements forscalarFunctionslist.- Parameters:
elements- An iterable of scalarFunctions elements- Returns:
thisbuilder for use in a chained invocation
-
addAllScalarFunctions
public final ImmutableSimpleExtension.ExtensionCollection.Builder addAllScalarFunctions(Iterable<? extends SimpleExtension.ScalarFunctionVariant> elements) Adds elements toscalarFunctionslist.- Parameters:
elements- An iterable of scalarFunctions elements- Returns:
thisbuilder for use in a chained invocation
-
addAggregateFunctions
public final ImmutableSimpleExtension.ExtensionCollection.Builder addAggregateFunctions(SimpleExtension.AggregateFunctionVariant element) Adds one element toaggregateFunctionslist.- Parameters:
element- A aggregateFunctions element- Returns:
thisbuilder for use in a chained invocation
-
addAggregateFunctions
public final ImmutableSimpleExtension.ExtensionCollection.Builder addAggregateFunctions(SimpleExtension.AggregateFunctionVariant... elements) Adds elements toaggregateFunctionslist.- Parameters:
elements- An array of aggregateFunctions elements- Returns:
thisbuilder for use in a chained invocation
-
aggregateFunctions
public final ImmutableSimpleExtension.ExtensionCollection.Builder aggregateFunctions(Iterable<? extends SimpleExtension.AggregateFunctionVariant> elements) Sets or replaces all elements foraggregateFunctionslist.- Parameters:
elements- An iterable of aggregateFunctions elements- Returns:
thisbuilder for use in a chained invocation
-
addAllAggregateFunctions
public final ImmutableSimpleExtension.ExtensionCollection.Builder addAllAggregateFunctions(Iterable<? extends SimpleExtension.AggregateFunctionVariant> elements) Adds elements toaggregateFunctionslist.- Parameters:
elements- An iterable of aggregateFunctions elements- Returns:
thisbuilder for use in a chained invocation
-
addWindowFunctions
public final ImmutableSimpleExtension.ExtensionCollection.Builder addWindowFunctions(SimpleExtension.WindowFunctionVariant element) Adds one element towindowFunctionslist.- Parameters:
element- A windowFunctions element- Returns:
thisbuilder for use in a chained invocation
-
addWindowFunctions
public final ImmutableSimpleExtension.ExtensionCollection.Builder addWindowFunctions(SimpleExtension.WindowFunctionVariant... elements) Adds elements towindowFunctionslist.- Parameters:
elements- An array of windowFunctions elements- Returns:
thisbuilder for use in a chained invocation
-
windowFunctions
public final ImmutableSimpleExtension.ExtensionCollection.Builder windowFunctions(Iterable<? extends SimpleExtension.WindowFunctionVariant> elements) Sets or replaces all elements forwindowFunctionslist.- Parameters:
elements- An iterable of windowFunctions elements- Returns:
thisbuilder for use in a chained invocation
-
addAllWindowFunctions
public final ImmutableSimpleExtension.ExtensionCollection.Builder addAllWindowFunctions(Iterable<? extends SimpleExtension.WindowFunctionVariant> elements) Adds elements towindowFunctionslist.- Parameters:
elements- An iterable of windowFunctions elements- Returns:
thisbuilder for use in a chained invocation
-
build
Builds a newExtensionCollection.- Returns:
- An immutable instance of ExtensionCollection
- Throws:
IllegalStateException- if any required attributes are missing
-