Class ValidatedBuilder<T>

java.lang.Object
co.yellowdog.platform.model.builders.ValidatedBuilder<T>
Type Parameters:
T - the type of the object to build
Direct Known Subclasses:
Account.Builder, AccountAllowance.Builder, AddConfiguredWorkerPoolRequest.Builder, AddNodeActionsRequest.Builder, AlibabaCredential.Builder, AlibabaInstancesComputeSource.Builder, AlibabaNamespaceStorageConfiguration.Builder, AllowanceSearch.Builder, AutoShutdown.Builder, AwsAccountRoleCredential.Builder, AwsCapacityReservation.Builder, AwsCredential.Builder, AwsFleetComputeSource.Builder, AwsFleetInstanceOverride.Builder, AwsFleetOnDemandOptions.Builder, AwsFleetSpotOptions.Builder, AwsInstancesComputeSource.Builder, AwsPlacementGroup.Builder, AwsSecondaryNetworkInterface.Builder, AzureClientCredential.Builder, AzureInstanceCredential.Builder, AzureInstancesComputeSource.Builder, AzureNamespaceStorageConfiguration.Builder, AzureScaleSetComputeSource.Builder, AzureStorageCredential.Builder, ComputeRequirement.Builder, ComputeRequirementDynamicTemplate.Builder, ComputeRequirementSearch.Builder, ComputeRequirementStaticTemplate.Builder, ComputeRequirementSummarySearch.Builder, ComputeRequirementTemplateUsage.Builder, ComputeSourceTemplate.Builder, ComputeSourceUsage.Builder, ConfiguredWorkerPoolProperties.Builder, DoubleRange.Builder, GceInstanceGroupComputeSource.Builder, GceInstancesComputeSource.Builder, GcsNamespaceStorageConfiguration.Builder, GoogleCloudCredential.Builder, Group.Builder, GroupRole.Builder, GroupSearch.Builder, InstanceId.Builder, InstanceTypePriceSearch.Builder, InstanceTypeSearch.Builder, InstantRange.Builder, IntegerRange.Builder, LongRange.Builder, MachineImage.Builder, MachineImageFamily.Builder, MachineImageGroup.Builder, NamespacePolicy.Builder, NodeActionGroup.Builder, NodeCreateWorkersAction.Builder, NodeRunCommandAction.Builder, NodeSearch.Builder, NodeType.Builder, NodeWorkerTarget.Builder, NodeWriteFileAction.Builder, NumericAttributeConstraint.Builder, NumericAttributeDefinition.Builder, NumericAttributePreference.Builder, NumericAttributeRange.Builder, NumericAttributeValue.Builder, ObjectPath.Builder, ObjectPathsRequest.Builder, ObjectPathsSliceRequest.Builder, OciCredential.Builder, OciInstancePoolComputeSource.Builder, OciInstancesComputeSource.Builder, OciNamespaceStorageConfiguration.Builder, ProvisionedWorkerPoolProperties.Builder, ProvisionTemplateWorkerPoolRequest.Builder, RegionSearch.Builder, RequirementAllowance.Builder, RequirementsAllowance.Builder, RetryProperties.Builder, Role.Builder, RoleSearch.Builder, RoleSummary.Builder, RunSpecification.Builder, S3NamespaceStorageConfiguration.Builder, ServicesSchema.Builder, SimulatorComputeSource.Builder, SingleSourceProvisionStrategy.Builder, SliceReference.Builder, SourceAllowance.Builder, SourcesAllowance.Builder, SplitProvisionStrategy.Builder, StringAttributeConstraint.Builder, StringAttributeDefinition.Builder, StringAttributePreference.Builder, StringAttributeValue.Builder, SubRegionSearch.Builder, Task.Builder, TaskGroup.Builder, TaskInput.Builder, TaskOutput.Builder, TaskSearch.Builder, Track.Builder, WaterfallProvisionStrategy.Builder, WorkerPoolNodeConfiguration.Builder, WorkerPoolSearch.Builder, WorkRequirement.Builder, WorkRequirementSearch.Builder

public abstract class ValidatedBuilder<T> extends Object
Provides an abstract base for Lombok generated builders that includes automatic validation of built objects.
  • Constructor Details

    • ValidatedBuilder

      public ValidatedBuilder()
  • Method Details

    • buildUnchecked

      public T buildUnchecked()
      Builds the object without enforcing validation constraints. This should only be used for testing purposes
      Returns:
      the object being built
    • validate

      public Set<jakarta.validation.ConstraintViolation<T>> validate()
      Performs validation based on the current builder properties and returns the ConstraintViolations without throwing.
      Returns:
      A set of ConstraintViolations describing any validation failures
    • build

      public T build()
      Builds and validates the object.
      Returns:
      the object being built