Class RulesComponentBuilder<B extends RulesComponentBuilder<?,?>,T>
java.lang.Object
software.amazon.smithy.rulesengine.language.RulesComponentBuilder<B,T>
- Type Parameters:
B- Type of the builderT- Type of the type that is built
- All Implemented Interfaces:
FromSourceLocation,SmithyBuilder<T>
- Direct Known Subclasses:
Endpoint.Builder,EndpointRuleSet.Builder,EndpointValue.Builder,FunctionNode.Builder,Parameter.Builder,Parameters.Builder,Partition.Builder,PartitionOutputs.Builder,Partitions.Builder,RegionOverride.Builder
public abstract class RulesComponentBuilder<B extends RulesComponentBuilder<?,?>,T>
extends Object
implements SmithyBuilder<T>, FromSourceLocation
Builder which also tracks sourceLocation of inputs. If no source location is provided, the source location defaults
to the Java file/line number of the caller.
-
Constructor Summary
ConstructorsConstructorDescriptionRulesComponentBuilder(FromSourceLocation fromSourceLocation) Creates a builder with the given source location. -
Method Summary
Modifier and TypeMethodDescriptionGets the source location of a value.static SourceLocationReturns the source code location of the caller.sourceLocation(FromSourceLocation fromSourceLocation) Sets the source location for the builder.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface software.amazon.smithy.utils.SmithyBuilder
build
-
Constructor Details
-
RulesComponentBuilder
Creates a builder with the given source location.- Parameters:
fromSourceLocation- the source location for the builder.
-
-
Method Details
-
getSourceLocation
Description copied from interface:FromSourceLocationGets the source location of a value.- Specified by:
getSourceLocationin interfaceFromSourceLocation- Returns:
- Returns the source location of the value.
-
sourceLocation
Sets the source location for the builder.- Parameters:
fromSourceLocation- the source location to set.- Returns:
- the updated builder.
-
javaLocation
Returns the source code location of the caller. This is very helpful when determining where rules generated from Java-based builders originated.Library-local and JDK stack frames are discarded. If no relevant location can be found, `SourceLocation.none()` is returned.
- Returns:
- The SourceLocation.
-