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

com.pulumi.cloudflare.outputs.RulesetRuleActionParametersCacheKey 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.cloudflare.outputs;

import com.pulumi.cloudflare.outputs.RulesetRuleActionParametersCacheKeyCustomKey;
import com.pulumi.core.annotations.CustomType;
import java.lang.Boolean;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class RulesetRuleActionParametersCacheKey {
    private @Nullable Boolean cacheByDeviceType;
    private @Nullable Boolean cacheDeceptionArmor;
    private @Nullable RulesetRuleActionParametersCacheKeyCustomKey customKey;
    private @Nullable Boolean ignoreQueryStringsOrder;

    private RulesetRuleActionParametersCacheKey() {}
    public Optional cacheByDeviceType() {
        return Optional.ofNullable(this.cacheByDeviceType);
    }
    public Optional cacheDeceptionArmor() {
        return Optional.ofNullable(this.cacheDeceptionArmor);
    }
    public Optional customKey() {
        return Optional.ofNullable(this.customKey);
    }
    public Optional ignoreQueryStringsOrder() {
        return Optional.ofNullable(this.ignoreQueryStringsOrder);
    }

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

    public static Builder builder(RulesetRuleActionParametersCacheKey defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable Boolean cacheByDeviceType;
        private @Nullable Boolean cacheDeceptionArmor;
        private @Nullable RulesetRuleActionParametersCacheKeyCustomKey customKey;
        private @Nullable Boolean ignoreQueryStringsOrder;
        public Builder() {}
        public Builder(RulesetRuleActionParametersCacheKey defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.cacheByDeviceType = defaults.cacheByDeviceType;
    	      this.cacheDeceptionArmor = defaults.cacheDeceptionArmor;
    	      this.customKey = defaults.customKey;
    	      this.ignoreQueryStringsOrder = defaults.ignoreQueryStringsOrder;
        }

        @CustomType.Setter
        public Builder cacheByDeviceType(@Nullable Boolean cacheByDeviceType) {
            this.cacheByDeviceType = cacheByDeviceType;
            return this;
        }
        @CustomType.Setter
        public Builder cacheDeceptionArmor(@Nullable Boolean cacheDeceptionArmor) {
            this.cacheDeceptionArmor = cacheDeceptionArmor;
            return this;
        }
        @CustomType.Setter
        public Builder customKey(@Nullable RulesetRuleActionParametersCacheKeyCustomKey customKey) {
            this.customKey = customKey;
            return this;
        }
        @CustomType.Setter
        public Builder ignoreQueryStringsOrder(@Nullable Boolean ignoreQueryStringsOrder) {
            this.ignoreQueryStringsOrder = ignoreQueryStringsOrder;
            return this;
        }
        public RulesetRuleActionParametersCacheKey build() {
            final var o = new RulesetRuleActionParametersCacheKey();
            o.cacheByDeviceType = cacheByDeviceType;
            o.cacheDeceptionArmor = cacheDeceptionArmor;
            o.customKey = customKey;
            o.ignoreQueryStringsOrder = ignoreQueryStringsOrder;
            return o;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy