Class BigqueryRoutine.Builder

    • Method Detail

      • create

        @Stability(Stable)
        public static BigqueryRoutine.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 BigqueryRoutine.Builder.
      • connection

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

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

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

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

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

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

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

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

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

        @Stability(Stable)
        public BigqueryRoutine.Builder datasetId​(String datasetId)
        The ID of the dataset containing this routine.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/bigquery_routine#dataset_id BigqueryRoutine#dataset_id}

        Parameters:
        datasetId - The ID of the dataset containing this routine. This parameter is required.
        Returns:
        this
      • definitionBody

        @Stability(Stable)
        public BigqueryRoutine.Builder definitionBody​(String definitionBody)
        The body of the routine.

        For functions, this is the expression in the AS clause. If language=SQL, it is the substring inside (but excluding) the parentheses. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/bigquery_routine#definition_body BigqueryRoutine#definition_body}

        Parameters:
        definitionBody - The body of the routine. This parameter is required.
        Returns:
        this
      • routineId

        @Stability(Stable)
        public BigqueryRoutine.Builder routineId​(String routineId)
        The ID of the the routine.

        The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 256 characters. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/bigquery_routine#routine_id BigqueryRoutine#routine_id}

        Parameters:
        routineId - The ID of the the routine. This parameter is required.
        Returns:
        this
      • routineType

        @Stability(Stable)
        public BigqueryRoutine.Builder routineType​(String routineType)
        The type of routine. Possible values: ["SCALAR_FUNCTION", "PROCEDURE", "TABLE_VALUED_FUNCTION"].

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/bigquery_routine#routine_type BigqueryRoutine#routine_type}

        Parameters:
        routineType - The type of routine. Possible values: ["SCALAR_FUNCTION", "PROCEDURE", "TABLE_VALUED_FUNCTION"]. This parameter is required.
        Returns:
        this
      • arguments

        @Stability(Stable)
        public BigqueryRoutine.Builder arguments​(com.hashicorp.cdktf.IResolvable arguments)
        arguments block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/bigquery_routine#arguments BigqueryRoutine#arguments}

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

        @Stability(Stable)
        public BigqueryRoutine.Builder arguments​(List<? extends BigqueryRoutineArguments> arguments)
        arguments block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/bigquery_routine#arguments BigqueryRoutine#arguments}

        Parameters:
        arguments - arguments block. This parameter is required.
        Returns:
        this
      • dataGovernanceType

        @Stability(Stable)
        public BigqueryRoutine.Builder dataGovernanceType​(String dataGovernanceType)
        If set to DATA_MASKING, the function is validated and made available as a masking function.

        For more information, see https://cloud.google.com/bigquery/docs/user-defined-functions#custom-mask Possible values: ["DATA_MASKING"] Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/bigquery_routine#data_governance_type BigqueryRoutine#data_governance_type}

        Parameters:
        dataGovernanceType - If set to DATA_MASKING, the function is validated and made available as a masking function. This parameter is required.
        Returns:
        this
      • description

        @Stability(Stable)
        public BigqueryRoutine.Builder description​(String description)
        The description of the routine if defined.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/bigquery_routine#description BigqueryRoutine#description}

        Parameters:
        description - The description of the routine if defined. This parameter is required.
        Returns:
        this
      • determinismLevel

        @Stability(Stable)
        public BigqueryRoutine.Builder determinismLevel​(String determinismLevel)
        The determinism level of the JavaScript UDF if defined. Possible values: ["DETERMINISM_LEVEL_UNSPECIFIED", "DETERMINISTIC", "NOT_DETERMINISTIC"].

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/bigquery_routine#determinism_level BigqueryRoutine#determinism_level}

        Parameters:
        determinismLevel - The determinism level of the JavaScript UDF if defined. Possible values: ["DETERMINISM_LEVEL_UNSPECIFIED", "DETERMINISTIC", "NOT_DETERMINISTIC"]. This parameter is required.
        Returns:
        this
      • id

        @Stability(Stable)
        public BigqueryRoutine.Builder id​(String id)
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/bigquery_routine#id BigqueryRoutine#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/bigquery_routine#id BigqueryRoutine#id}. This parameter is required.
        Returns:
        this
      • importedLibraries

        @Stability(Stable)
        public BigqueryRoutine.Builder importedLibraries​(List<String> importedLibraries)
        Optional. If language = "JAVASCRIPT", this field stores the path of the imported JAVASCRIPT libraries.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/bigquery_routine#imported_libraries BigqueryRoutine#imported_libraries}

        Parameters:
        importedLibraries - Optional. If language = "JAVASCRIPT", this field stores the path of the imported JAVASCRIPT libraries. This parameter is required.
        Returns:
        this
      • language

        @Stability(Stable)
        public BigqueryRoutine.Builder language​(String language)
        The language of the routine. Possible values: ["SQL", "JAVASCRIPT", "PYTHON", "JAVA", "SCALA"].

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/bigquery_routine#language BigqueryRoutine#language}

        Parameters:
        language - The language of the routine. Possible values: ["SQL", "JAVASCRIPT", "PYTHON", "JAVA", "SCALA"]. This parameter is required.
        Returns:
        this
      • project

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

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

        @Stability(Stable)
        public BigqueryRoutine.Builder remoteFunctionOptions​(BigqueryRoutineRemoteFunctionOptions remoteFunctionOptions)
        remote_function_options block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/bigquery_routine#remote_function_options BigqueryRoutine#remote_function_options}

        Parameters:
        remoteFunctionOptions - remote_function_options block. This parameter is required.
        Returns:
        this
      • returnTableType

        @Stability(Stable)
        public BigqueryRoutine.Builder returnTableType​(String returnTableType)
        Optional. Can be set only if routineType = "TABLE_VALUED_FUNCTION".

        If absent, the return table type is inferred from definitionBody at query time in each query that references this routine. If present, then the columns in the evaluated table result will be cast to match the column types specificed in return table type, at query time. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/bigquery_routine#return_table_type BigqueryRoutine#return_table_type}

        Parameters:
        returnTableType - Optional. Can be set only if routineType = "TABLE_VALUED_FUNCTION". This parameter is required.
        Returns:
        this
      • returnType

        @Stability(Stable)
        public BigqueryRoutine.Builder returnType​(String returnType)
        A JSON schema for the return type.

        Optional if language = "SQL"; required otherwise. If absent, the return type is inferred from definitionBody at query time in each query that references this routine. If present, then the evaluated result will be cast to the specified returned type at query time. ~>**NOTE**: Because this field expects a JSON string, any changes to the string will create a diff, even if the JSON itself hasn't changed. If the API returns a different value for the same schema, e.g. it switche d the order of values or replaced STRUCT field type with RECORD field type, we currently cannot suppress the recurring diff this causes. As a workaround, we recommend using the schema as returned by the API. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/bigquery_routine#return_type BigqueryRoutine#return_type}

        Parameters:
        returnType - A JSON schema for the return type. This parameter is required.
        Returns:
        this
      • sparkOptions

        @Stability(Stable)
        public BigqueryRoutine.Builder sparkOptions​(BigqueryRoutineSparkOptions sparkOptions)
        spark_options block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/bigquery_routine#spark_options BigqueryRoutine#spark_options}

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

        @Stability(Stable)
        public BigqueryRoutine.Builder timeouts​(BigqueryRoutineTimeouts timeouts)
        timeouts block.

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

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