Class PubsubSchema.Builder

  • All Implemented Interfaces:
    software.amazon.jsii.Builder<PubsubSchema>
    Enclosing class:
    PubsubSchema

    @Stability(Stable)
    public static final class PubsubSchema.Builder
    extends Object
    implements software.amazon.jsii.Builder<PubsubSchema>
    A fluent builder for PubsubSchema.
    • Method Detail

      • create

        @Stability(Stable)
        public static PubsubSchema.Builder create​(software.constructs.Construct scope,
                                                  String id)
        Parameters:
        scope - The scope in which to define this construct. This parameter is required.
        id - The scoped construct ID. This parameter is required.
        Returns:
        a new instance of PubsubSchema.Builder.
      • connection

        @Stability(Experimental)
        public PubsubSchema.Builder connection​(com.hashicorp.cdktf.SSHProvisionerConnection connection)
        Parameters:
        connection - This parameter is required.
        Returns:
        this
      • connection

        @Stability(Experimental)
        public PubsubSchema.Builder connection​(com.hashicorp.cdktf.WinrmProvisionerConnection connection)
        Parameters:
        connection - This parameter is required.
        Returns:
        this
      • count

        @Stability(Experimental)
        public PubsubSchema.Builder count​(Number count)
        Parameters:
        count - This parameter is required.
        Returns:
        this
      • count

        @Stability(Experimental)
        public PubsubSchema.Builder count​(com.hashicorp.cdktf.TerraformCount count)
        Parameters:
        count - This parameter is required.
        Returns:
        this
      • dependsOn

        @Stability(Experimental)
        public PubsubSchema.Builder dependsOn​(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)
        Parameters:
        dependsOn - This parameter is required.
        Returns:
        this
      • forEach

        @Stability(Experimental)
        public PubsubSchema.Builder forEach​(com.hashicorp.cdktf.ITerraformIterator forEach)
        Parameters:
        forEach - This parameter is required.
        Returns:
        this
      • lifecycle

        @Stability(Experimental)
        public PubsubSchema.Builder lifecycle​(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)
        Parameters:
        lifecycle - This parameter is required.
        Returns:
        this
      • provider

        @Stability(Experimental)
        public PubsubSchema.Builder provider​(com.hashicorp.cdktf.TerraformProvider provider)
        Parameters:
        provider - This parameter is required.
        Returns:
        this
      • provisioners

        @Stability(Experimental)
        public PubsubSchema.Builder provisioners​(List<? extends Object> provisioners)
        Parameters:
        provisioners - This parameter is required.
        Returns:
        this
      • name

        @Stability(Stable)
        public PubsubSchema.Builder name​(String name)
        The ID to use for the schema, which will become the final component of the schema's resource name.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/pubsub_schema#name PubsubSchema#name}

        Parameters:
        name - The ID to use for the schema, which will become the final component of the schema's resource name. This parameter is required.
        Returns:
        this
      • definition

        @Stability(Stable)
        public PubsubSchema.Builder definition​(String definition)
        The definition of the schema.

        This should contain a string representing the full definition of the schema that is a valid schema definition of the type specified in type. Changes to the definition commit new [schema revisions](https://cloud.google.com/pubsub/docs/commit-schema-revision). A schema can only have up to 20 revisions, so updates that fail with an error indicating that the limit has been reached require manually [deleting old revisions](https://cloud.google.com/pubsub/docs/delete-schema-revision). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/pubsub_schema#definition PubsubSchema#definition}

        Parameters:
        definition - The definition of the schema. This parameter is required.
        Returns:
        this
      • id

        @Stability(Stable)
        public PubsubSchema.Builder id​(String id)
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/pubsub_schema#id PubsubSchema#id}.

        Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.

        Parameters:
        id - Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/pubsub_schema#id PubsubSchema#id}. This parameter is required.
        Returns:
        this
      • project

        @Stability(Stable)
        public PubsubSchema.Builder project​(String project)
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/pubsub_schema#project PubsubSchema#project}.

        Parameters:
        project - Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/pubsub_schema#project PubsubSchema#project}. This parameter is required.
        Returns:
        this
      • timeouts

        @Stability(Stable)
        public PubsubSchema.Builder timeouts​(PubsubSchemaTimeouts timeouts)
        timeouts block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/pubsub_schema#timeouts PubsubSchema#timeouts}

        Parameters:
        timeouts - timeouts block. This parameter is required.
        Returns:
        this
      • type

        @Stability(Stable)
        public PubsubSchema.Builder type​(String type)
        The type of the schema definition Default value: "TYPE_UNSPECIFIED" Possible values: ["TYPE_UNSPECIFIED", "PROTOCOL_BUFFER", "AVRO"].

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/pubsub_schema#type PubsubSchema#type}

        Parameters:
        type - The type of the schema definition Default value: "TYPE_UNSPECIFIED" Possible values: ["TYPE_UNSPECIFIED", "PROTOCOL_BUFFER", "AVRO"]. This parameter is required.
        Returns:
        this
      • build

        @Stability(Stable)
        public PubsubSchema build()
        Specified by:
        build in interface software.amazon.jsii.Builder<PubsubSchema>
        Returns:
        a newly built instance of PubsubSchema.