Package software.amazon.smithy.utils
Interface SmithyBuilder<T>
-
- Type Parameters:
T- the type that the builder will build.
- All Known Implementing Classes:
AbstractShapeBuilder,AbstractTraitBuilder,ArnReferenceTrait.Builder,ArnTrait.Builder,AuthDefinitionTrait.Builder,AuthorizerDefinition.Builder,AuthorizersTrait.Builder,AwsJson1_0Trait.Builder,AwsJson1_1Trait.Builder,AwsProtocolTrait.Builder,BigDecimalShape.Builder,BigIntegerShape.Builder,BlobShape.Builder,BooleanShape.Builder,ByteShape.Builder,CallbackObject.Builder,ClientDiscoveredEndpointTrait.Builder,ClientEndpointDiscoveryTrait.Builder,CognitoUserPoolsTrait.Builder,CollectionShape.Builder,Component.Builder,ComponentsObject.Builder,ConditionKeyDefinition.Builder,ConditionKeysTrait.Builder,CorsTrait.Builder,DefineConditionKeysTrait.Builder,DeprecatedTrait.Builder,DocumentShape.Builder,DoubleShape.Builder,EffectiveTraitQuery.Builder,EncodingObject.Builder,EndpointTrait.Builder,EntityShape.Builder,EnumDefinition.Builder,EnumTrait.Builder,ExamplesTrait.Builder,ExamplesTrait.Example.Builder,ExternalDocumentation.Builder,ExternalDocumentationTrait.Builder,FloatShape.Builder,HttpApiKeyAuthTrait.Builder,HttpRequestTestCase.Builder,HttpResponseTestCase.Builder,HttpTrait.Builder,IdRefTrait.Builder,InfoObject.Builder,IntegerShape.Builder,IntegrationResponse.Builder,IntegrationTrait.Builder,JsonSchemaConverter.Builder,LengthTrait.Builder,LinkObject.Builder,ListShape.Builder,LongShape.Builder,MappedReservedWords.Builder,MapShape.Builder,MediaTypeObject.Builder,MemberShape.Builder,MockIntegrationTrait.Builder,Model.Builder,ModelSerializer.Builder,NodeValidationVisitor.Builder,ObjectNode.Builder,OpenApi.Builder,OperationObject.Builder,OperationShape.Builder,PaginatedTrait.Builder,ParameterObject.Builder,Parser.Builder,PathItem.Builder,PluginContext.Builder,ProjectionConfig.Builder,ProjectionResult.Builder,ProtocolDefinitionTrait.Builder,RangeTrait.Builder,ReferencesTrait.Builder,ReferencesTrait.Reference.Builder,RequestBodyObject.Builder,RequiredActionsTrait.Builder,ResourceShape.Builder,ResponseObject.Builder,RestJson1Trait.Builder,RestXmlTrait.Builder,RetryableTrait.Builder,Schema.Builder,SchemaDocument.Builder,SecurityScheme.Builder,ServerObject.Builder,ServiceShape.Builder,ServiceTrait.Builder,SetShape.Builder,ShortShape.Builder,SigV4Trait.Builder,SmithyBuildConfig.Builder,SmithyBuildResult.Builder,SmithyIdlModelSerializer.Builder,StringListTrait.Builder,StringShape.Builder,StructureShape.Builder,SuppressTrait.Builder,Symbol.Builder,SymbolDependency.Builder,SymbolReference.Builder,TagObject.Builder,TagsTrait.Builder,TimestampShape.Builder,TraitDefinition.Builder,TransformConfig.Builder,TransformContext.Builder,UnionShape.Builder,ValidationEvent.Builder,XmlNamespaceTrait.Builder,XmlObject.Builder
public interface SmithyBuilder<T>A mutable object that can be used to create an immutable object of type T.
-
-
Method Summary
Modifier and Type Method Description Tbuild()Creates an immutable object that is created from the properties that have been set on the builder.static <T> TrequiredState(java.lang.String method, T value)Convenience method for ensuring that a value was set on a builder, and if not, throws an IllegalStateException with a useful message.
-
-
-
Method Detail
-
build
T build()
Creates an immutable object that is created from the properties that have been set on the builder.- Returns:
- an instance of T
-
requiredState
static <T> T requiredState(java.lang.String method, T value)Convenience method for ensuring that a value was set on a builder, and if not, throws an IllegalStateException with a useful message.- Type Parameters:
T- Type of value being checked.- Parameters:
method- Method that needs to be called to set this value.value- Value to check.- Returns:
- Returns the value.
-
-