All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.googlenative.dlp.v2.inputs.GooglePrivacyDlpV2PrimitiveTransformationArgs Maven / Gradle / Ivy

// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.googlenative.dlp.v2.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.googlenative.dlp.v2.inputs.GooglePrivacyDlpV2BucketingConfigArgs;
import com.pulumi.googlenative.dlp.v2.inputs.GooglePrivacyDlpV2CharacterMaskConfigArgs;
import com.pulumi.googlenative.dlp.v2.inputs.GooglePrivacyDlpV2CryptoDeterministicConfigArgs;
import com.pulumi.googlenative.dlp.v2.inputs.GooglePrivacyDlpV2CryptoHashConfigArgs;
import com.pulumi.googlenative.dlp.v2.inputs.GooglePrivacyDlpV2CryptoReplaceFfxFpeConfigArgs;
import com.pulumi.googlenative.dlp.v2.inputs.GooglePrivacyDlpV2DateShiftConfigArgs;
import com.pulumi.googlenative.dlp.v2.inputs.GooglePrivacyDlpV2FixedSizeBucketingConfigArgs;
import com.pulumi.googlenative.dlp.v2.inputs.GooglePrivacyDlpV2RedactConfigArgs;
import com.pulumi.googlenative.dlp.v2.inputs.GooglePrivacyDlpV2ReplaceDictionaryConfigArgs;
import com.pulumi.googlenative.dlp.v2.inputs.GooglePrivacyDlpV2ReplaceValueConfigArgs;
import com.pulumi.googlenative.dlp.v2.inputs.GooglePrivacyDlpV2ReplaceWithInfoTypeConfigArgs;
import com.pulumi.googlenative.dlp.v2.inputs.GooglePrivacyDlpV2TimePartConfigArgs;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


/**
 * A rule for transforming a value.
 * 
 */
public final class GooglePrivacyDlpV2PrimitiveTransformationArgs extends com.pulumi.resources.ResourceArgs {

    public static final GooglePrivacyDlpV2PrimitiveTransformationArgs Empty = new GooglePrivacyDlpV2PrimitiveTransformationArgs();

    /**
     * Bucketing
     * 
     */
    @Import(name="bucketingConfig")
    private @Nullable Output bucketingConfig;

    /**
     * @return Bucketing
     * 
     */
    public Optional> bucketingConfig() {
        return Optional.ofNullable(this.bucketingConfig);
    }

    /**
     * Mask
     * 
     */
    @Import(name="characterMaskConfig")
    private @Nullable Output characterMaskConfig;

    /**
     * @return Mask
     * 
     */
    public Optional> characterMaskConfig() {
        return Optional.ofNullable(this.characterMaskConfig);
    }

    /**
     * Deterministic Crypto
     * 
     */
    @Import(name="cryptoDeterministicConfig")
    private @Nullable Output cryptoDeterministicConfig;

    /**
     * @return Deterministic Crypto
     * 
     */
    public Optional> cryptoDeterministicConfig() {
        return Optional.ofNullable(this.cryptoDeterministicConfig);
    }

    /**
     * Crypto
     * 
     */
    @Import(name="cryptoHashConfig")
    private @Nullable Output cryptoHashConfig;

    /**
     * @return Crypto
     * 
     */
    public Optional> cryptoHashConfig() {
        return Optional.ofNullable(this.cryptoHashConfig);
    }

    /**
     * Ffx-Fpe
     * 
     */
    @Import(name="cryptoReplaceFfxFpeConfig")
    private @Nullable Output cryptoReplaceFfxFpeConfig;

    /**
     * @return Ffx-Fpe
     * 
     */
    public Optional> cryptoReplaceFfxFpeConfig() {
        return Optional.ofNullable(this.cryptoReplaceFfxFpeConfig);
    }

    /**
     * Date Shift
     * 
     */
    @Import(name="dateShiftConfig")
    private @Nullable Output dateShiftConfig;

    /**
     * @return Date Shift
     * 
     */
    public Optional> dateShiftConfig() {
        return Optional.ofNullable(this.dateShiftConfig);
    }

    /**
     * Fixed size bucketing
     * 
     */
    @Import(name="fixedSizeBucketingConfig")
    private @Nullable Output fixedSizeBucketingConfig;

    /**
     * @return Fixed size bucketing
     * 
     */
    public Optional> fixedSizeBucketingConfig() {
        return Optional.ofNullable(this.fixedSizeBucketingConfig);
    }

    /**
     * Redact
     * 
     */
    @Import(name="redactConfig")
    private @Nullable Output redactConfig;

    /**
     * @return Redact
     * 
     */
    public Optional> redactConfig() {
        return Optional.ofNullable(this.redactConfig);
    }

    /**
     * Replace with a specified value.
     * 
     */
    @Import(name="replaceConfig")
    private @Nullable Output replaceConfig;

    /**
     * @return Replace with a specified value.
     * 
     */
    public Optional> replaceConfig() {
        return Optional.ofNullable(this.replaceConfig);
    }

    /**
     * Replace with a value randomly drawn (with replacement) from a dictionary.
     * 
     */
    @Import(name="replaceDictionaryConfig")
    private @Nullable Output replaceDictionaryConfig;

    /**
     * @return Replace with a value randomly drawn (with replacement) from a dictionary.
     * 
     */
    public Optional> replaceDictionaryConfig() {
        return Optional.ofNullable(this.replaceDictionaryConfig);
    }

    /**
     * Replace with infotype
     * 
     */
    @Import(name="replaceWithInfoTypeConfig")
    private @Nullable Output replaceWithInfoTypeConfig;

    /**
     * @return Replace with infotype
     * 
     */
    public Optional> replaceWithInfoTypeConfig() {
        return Optional.ofNullable(this.replaceWithInfoTypeConfig);
    }

    /**
     * Time extraction
     * 
     */
    @Import(name="timePartConfig")
    private @Nullable Output timePartConfig;

    /**
     * @return Time extraction
     * 
     */
    public Optional> timePartConfig() {
        return Optional.ofNullable(this.timePartConfig);
    }

    private GooglePrivacyDlpV2PrimitiveTransformationArgs() {}

    private GooglePrivacyDlpV2PrimitiveTransformationArgs(GooglePrivacyDlpV2PrimitiveTransformationArgs $) {
        this.bucketingConfig = $.bucketingConfig;
        this.characterMaskConfig = $.characterMaskConfig;
        this.cryptoDeterministicConfig = $.cryptoDeterministicConfig;
        this.cryptoHashConfig = $.cryptoHashConfig;
        this.cryptoReplaceFfxFpeConfig = $.cryptoReplaceFfxFpeConfig;
        this.dateShiftConfig = $.dateShiftConfig;
        this.fixedSizeBucketingConfig = $.fixedSizeBucketingConfig;
        this.redactConfig = $.redactConfig;
        this.replaceConfig = $.replaceConfig;
        this.replaceDictionaryConfig = $.replaceDictionaryConfig;
        this.replaceWithInfoTypeConfig = $.replaceWithInfoTypeConfig;
        this.timePartConfig = $.timePartConfig;
    }

    public static Builder builder() {
        return new Builder();
    }
    public static Builder builder(GooglePrivacyDlpV2PrimitiveTransformationArgs defaults) {
        return new Builder(defaults);
    }

    public static final class Builder {
        private GooglePrivacyDlpV2PrimitiveTransformationArgs $;

        public Builder() {
            $ = new GooglePrivacyDlpV2PrimitiveTransformationArgs();
        }

        public Builder(GooglePrivacyDlpV2PrimitiveTransformationArgs defaults) {
            $ = new GooglePrivacyDlpV2PrimitiveTransformationArgs(Objects.requireNonNull(defaults));
        }

        /**
         * @param bucketingConfig Bucketing
         * 
         * @return builder
         * 
         */
        public Builder bucketingConfig(@Nullable Output bucketingConfig) {
            $.bucketingConfig = bucketingConfig;
            return this;
        }

        /**
         * @param bucketingConfig Bucketing
         * 
         * @return builder
         * 
         */
        public Builder bucketingConfig(GooglePrivacyDlpV2BucketingConfigArgs bucketingConfig) {
            return bucketingConfig(Output.of(bucketingConfig));
        }

        /**
         * @param characterMaskConfig Mask
         * 
         * @return builder
         * 
         */
        public Builder characterMaskConfig(@Nullable Output characterMaskConfig) {
            $.characterMaskConfig = characterMaskConfig;
            return this;
        }

        /**
         * @param characterMaskConfig Mask
         * 
         * @return builder
         * 
         */
        public Builder characterMaskConfig(GooglePrivacyDlpV2CharacterMaskConfigArgs characterMaskConfig) {
            return characterMaskConfig(Output.of(characterMaskConfig));
        }

        /**
         * @param cryptoDeterministicConfig Deterministic Crypto
         * 
         * @return builder
         * 
         */
        public Builder cryptoDeterministicConfig(@Nullable Output cryptoDeterministicConfig) {
            $.cryptoDeterministicConfig = cryptoDeterministicConfig;
            return this;
        }

        /**
         * @param cryptoDeterministicConfig Deterministic Crypto
         * 
         * @return builder
         * 
         */
        public Builder cryptoDeterministicConfig(GooglePrivacyDlpV2CryptoDeterministicConfigArgs cryptoDeterministicConfig) {
            return cryptoDeterministicConfig(Output.of(cryptoDeterministicConfig));
        }

        /**
         * @param cryptoHashConfig Crypto
         * 
         * @return builder
         * 
         */
        public Builder cryptoHashConfig(@Nullable Output cryptoHashConfig) {
            $.cryptoHashConfig = cryptoHashConfig;
            return this;
        }

        /**
         * @param cryptoHashConfig Crypto
         * 
         * @return builder
         * 
         */
        public Builder cryptoHashConfig(GooglePrivacyDlpV2CryptoHashConfigArgs cryptoHashConfig) {
            return cryptoHashConfig(Output.of(cryptoHashConfig));
        }

        /**
         * @param cryptoReplaceFfxFpeConfig Ffx-Fpe
         * 
         * @return builder
         * 
         */
        public Builder cryptoReplaceFfxFpeConfig(@Nullable Output cryptoReplaceFfxFpeConfig) {
            $.cryptoReplaceFfxFpeConfig = cryptoReplaceFfxFpeConfig;
            return this;
        }

        /**
         * @param cryptoReplaceFfxFpeConfig Ffx-Fpe
         * 
         * @return builder
         * 
         */
        public Builder cryptoReplaceFfxFpeConfig(GooglePrivacyDlpV2CryptoReplaceFfxFpeConfigArgs cryptoReplaceFfxFpeConfig) {
            return cryptoReplaceFfxFpeConfig(Output.of(cryptoReplaceFfxFpeConfig));
        }

        /**
         * @param dateShiftConfig Date Shift
         * 
         * @return builder
         * 
         */
        public Builder dateShiftConfig(@Nullable Output dateShiftConfig) {
            $.dateShiftConfig = dateShiftConfig;
            return this;
        }

        /**
         * @param dateShiftConfig Date Shift
         * 
         * @return builder
         * 
         */
        public Builder dateShiftConfig(GooglePrivacyDlpV2DateShiftConfigArgs dateShiftConfig) {
            return dateShiftConfig(Output.of(dateShiftConfig));
        }

        /**
         * @param fixedSizeBucketingConfig Fixed size bucketing
         * 
         * @return builder
         * 
         */
        public Builder fixedSizeBucketingConfig(@Nullable Output fixedSizeBucketingConfig) {
            $.fixedSizeBucketingConfig = fixedSizeBucketingConfig;
            return this;
        }

        /**
         * @param fixedSizeBucketingConfig Fixed size bucketing
         * 
         * @return builder
         * 
         */
        public Builder fixedSizeBucketingConfig(GooglePrivacyDlpV2FixedSizeBucketingConfigArgs fixedSizeBucketingConfig) {
            return fixedSizeBucketingConfig(Output.of(fixedSizeBucketingConfig));
        }

        /**
         * @param redactConfig Redact
         * 
         * @return builder
         * 
         */
        public Builder redactConfig(@Nullable Output redactConfig) {
            $.redactConfig = redactConfig;
            return this;
        }

        /**
         * @param redactConfig Redact
         * 
         * @return builder
         * 
         */
        public Builder redactConfig(GooglePrivacyDlpV2RedactConfigArgs redactConfig) {
            return redactConfig(Output.of(redactConfig));
        }

        /**
         * @param replaceConfig Replace with a specified value.
         * 
         * @return builder
         * 
         */
        public Builder replaceConfig(@Nullable Output replaceConfig) {
            $.replaceConfig = replaceConfig;
            return this;
        }

        /**
         * @param replaceConfig Replace with a specified value.
         * 
         * @return builder
         * 
         */
        public Builder replaceConfig(GooglePrivacyDlpV2ReplaceValueConfigArgs replaceConfig) {
            return replaceConfig(Output.of(replaceConfig));
        }

        /**
         * @param replaceDictionaryConfig Replace with a value randomly drawn (with replacement) from a dictionary.
         * 
         * @return builder
         * 
         */
        public Builder replaceDictionaryConfig(@Nullable Output replaceDictionaryConfig) {
            $.replaceDictionaryConfig = replaceDictionaryConfig;
            return this;
        }

        /**
         * @param replaceDictionaryConfig Replace with a value randomly drawn (with replacement) from a dictionary.
         * 
         * @return builder
         * 
         */
        public Builder replaceDictionaryConfig(GooglePrivacyDlpV2ReplaceDictionaryConfigArgs replaceDictionaryConfig) {
            return replaceDictionaryConfig(Output.of(replaceDictionaryConfig));
        }

        /**
         * @param replaceWithInfoTypeConfig Replace with infotype
         * 
         * @return builder
         * 
         */
        public Builder replaceWithInfoTypeConfig(@Nullable Output replaceWithInfoTypeConfig) {
            $.replaceWithInfoTypeConfig = replaceWithInfoTypeConfig;
            return this;
        }

        /**
         * @param replaceWithInfoTypeConfig Replace with infotype
         * 
         * @return builder
         * 
         */
        public Builder replaceWithInfoTypeConfig(GooglePrivacyDlpV2ReplaceWithInfoTypeConfigArgs replaceWithInfoTypeConfig) {
            return replaceWithInfoTypeConfig(Output.of(replaceWithInfoTypeConfig));
        }

        /**
         * @param timePartConfig Time extraction
         * 
         * @return builder
         * 
         */
        public Builder timePartConfig(@Nullable Output timePartConfig) {
            $.timePartConfig = timePartConfig;
            return this;
        }

        /**
         * @param timePartConfig Time extraction
         * 
         * @return builder
         * 
         */
        public Builder timePartConfig(GooglePrivacyDlpV2TimePartConfigArgs timePartConfig) {
            return timePartConfig(Output.of(timePartConfig));
        }

        public GooglePrivacyDlpV2PrimitiveTransformationArgs build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy