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

com.pulumi.meraki.networks.inputs.GroupPoliciesState Maven / Gradle / Ivy

There is a newer version: 0.4.0-alpha.1731736975
Show newest version
// *** 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.meraki.networks.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.meraki.networks.inputs.GroupPoliciesBandwidthArgs;
import com.pulumi.meraki.networks.inputs.GroupPoliciesBonjourForwardingArgs;
import com.pulumi.meraki.networks.inputs.GroupPoliciesContentFilteringArgs;
import com.pulumi.meraki.networks.inputs.GroupPoliciesFirewallAndTrafficShapingArgs;
import com.pulumi.meraki.networks.inputs.GroupPoliciesSchedulingArgs;
import com.pulumi.meraki.networks.inputs.GroupPoliciesVlanTaggingArgs;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


public final class GroupPoliciesState extends com.pulumi.resources.ResourceArgs {

    public static final GroupPoliciesState Empty = new GroupPoliciesState();

    /**
     * The bandwidth settings for clients bound to your group policy.
     * 
     */
    @Import(name="bandwidth")
    private @Nullable Output bandwidth;

    /**
     * @return The bandwidth settings for clients bound to your group policy.
     * 
     */
    public Optional> bandwidth() {
        return Optional.ofNullable(this.bandwidth);
    }

    /**
     * The Bonjour settings for your group policy. Only valid if your network has a wireless configuration.
     * 
     */
    @Import(name="bonjourForwarding")
    private @Nullable Output bonjourForwarding;

    /**
     * @return The Bonjour settings for your group policy. Only valid if your network has a wireless configuration.
     * 
     */
    public Optional> bonjourForwarding() {
        return Optional.ofNullable(this.bonjourForwarding);
    }

    /**
     * The content filtering settings for your group policy
     * 
     */
    @Import(name="contentFiltering")
    private @Nullable Output contentFiltering;

    /**
     * @return The content filtering settings for your group policy
     * 
     */
    public Optional> contentFiltering() {
        return Optional.ofNullable(this.contentFiltering);
    }

    /**
     * The firewall and traffic shaping rules and settings for your policy.
     * 
     */
    @Import(name="firewallAndTrafficShaping")
    private @Nullable Output firewallAndTrafficShaping;

    /**
     * @return The firewall and traffic shaping rules and settings for your policy.
     * 
     */
    public Optional> firewallAndTrafficShaping() {
        return Optional.ofNullable(this.firewallAndTrafficShaping);
    }

    /**
     * The ID of the group policy
     * 
     */
    @Import(name="groupPolicyId")
    private @Nullable Output groupPolicyId;

    /**
     * @return The ID of the group policy
     * 
     */
    public Optional> groupPolicyId() {
        return Optional.ofNullable(this.groupPolicyId);
    }

    /**
     * The name for your group policy. Required.
     * 
     */
    @Import(name="name")
    private @Nullable Output name;

    /**
     * @return The name for your group policy. Required.
     * 
     */
    public Optional> name() {
        return Optional.ofNullable(this.name);
    }

    /**
     * networkId path parameter. Network ID
     * 
     */
    @Import(name="networkId")
    private @Nullable Output networkId;

    /**
     * @return networkId path parameter. Network ID
     * 
     */
    public Optional> networkId() {
        return Optional.ofNullable(this.networkId);
    }

    /**
     * The schedule for the group policy. Schedules are applied to days of the week.
     * 
     */
    @Import(name="scheduling")
    private @Nullable Output scheduling;

    /**
     * @return The schedule for the group policy. Schedules are applied to days of the week.
     * 
     */
    public Optional> scheduling() {
        return Optional.ofNullable(this.scheduling);
    }

    /**
     * Whether clients bound to your policy will bypass splash authorization or behave according to the network's rules. Can be one of 'network default' or 'bypass'. Only available if your network has a wireless configuration.
     * 
     */
    @Import(name="splashAuthSettings")
    private @Nullable Output splashAuthSettings;

    /**
     * @return Whether clients bound to your policy will bypass splash authorization or behave according to the network's rules. Can be one of 'network default' or 'bypass'. Only available if your network has a wireless configuration.
     * 
     */
    public Optional> splashAuthSettings() {
        return Optional.ofNullable(this.splashAuthSettings);
    }

    /**
     * The VLAN tagging settings for your group policy. Only available if your network has a wireless configuration.
     * 
     */
    @Import(name="vlanTagging")
    private @Nullable Output vlanTagging;

    /**
     * @return The VLAN tagging settings for your group policy. Only available if your network has a wireless configuration.
     * 
     */
    public Optional> vlanTagging() {
        return Optional.ofNullable(this.vlanTagging);
    }

    private GroupPoliciesState() {}

    private GroupPoliciesState(GroupPoliciesState $) {
        this.bandwidth = $.bandwidth;
        this.bonjourForwarding = $.bonjourForwarding;
        this.contentFiltering = $.contentFiltering;
        this.firewallAndTrafficShaping = $.firewallAndTrafficShaping;
        this.groupPolicyId = $.groupPolicyId;
        this.name = $.name;
        this.networkId = $.networkId;
        this.scheduling = $.scheduling;
        this.splashAuthSettings = $.splashAuthSettings;
        this.vlanTagging = $.vlanTagging;
    }

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

    public static final class Builder {
        private GroupPoliciesState $;

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

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

        /**
         * @param bandwidth The bandwidth settings for clients bound to your group policy.
         * 
         * @return builder
         * 
         */
        public Builder bandwidth(@Nullable Output bandwidth) {
            $.bandwidth = bandwidth;
            return this;
        }

        /**
         * @param bandwidth The bandwidth settings for clients bound to your group policy.
         * 
         * @return builder
         * 
         */
        public Builder bandwidth(GroupPoliciesBandwidthArgs bandwidth) {
            return bandwidth(Output.of(bandwidth));
        }

        /**
         * @param bonjourForwarding The Bonjour settings for your group policy. Only valid if your network has a wireless configuration.
         * 
         * @return builder
         * 
         */
        public Builder bonjourForwarding(@Nullable Output bonjourForwarding) {
            $.bonjourForwarding = bonjourForwarding;
            return this;
        }

        /**
         * @param bonjourForwarding The Bonjour settings for your group policy. Only valid if your network has a wireless configuration.
         * 
         * @return builder
         * 
         */
        public Builder bonjourForwarding(GroupPoliciesBonjourForwardingArgs bonjourForwarding) {
            return bonjourForwarding(Output.of(bonjourForwarding));
        }

        /**
         * @param contentFiltering The content filtering settings for your group policy
         * 
         * @return builder
         * 
         */
        public Builder contentFiltering(@Nullable Output contentFiltering) {
            $.contentFiltering = contentFiltering;
            return this;
        }

        /**
         * @param contentFiltering The content filtering settings for your group policy
         * 
         * @return builder
         * 
         */
        public Builder contentFiltering(GroupPoliciesContentFilteringArgs contentFiltering) {
            return contentFiltering(Output.of(contentFiltering));
        }

        /**
         * @param firewallAndTrafficShaping The firewall and traffic shaping rules and settings for your policy.
         * 
         * @return builder
         * 
         */
        public Builder firewallAndTrafficShaping(@Nullable Output firewallAndTrafficShaping) {
            $.firewallAndTrafficShaping = firewallAndTrafficShaping;
            return this;
        }

        /**
         * @param firewallAndTrafficShaping The firewall and traffic shaping rules and settings for your policy.
         * 
         * @return builder
         * 
         */
        public Builder firewallAndTrafficShaping(GroupPoliciesFirewallAndTrafficShapingArgs firewallAndTrafficShaping) {
            return firewallAndTrafficShaping(Output.of(firewallAndTrafficShaping));
        }

        /**
         * @param groupPolicyId The ID of the group policy
         * 
         * @return builder
         * 
         */
        public Builder groupPolicyId(@Nullable Output groupPolicyId) {
            $.groupPolicyId = groupPolicyId;
            return this;
        }

        /**
         * @param groupPolicyId The ID of the group policy
         * 
         * @return builder
         * 
         */
        public Builder groupPolicyId(String groupPolicyId) {
            return groupPolicyId(Output.of(groupPolicyId));
        }

        /**
         * @param name The name for your group policy. Required.
         * 
         * @return builder
         * 
         */
        public Builder name(@Nullable Output name) {
            $.name = name;
            return this;
        }

        /**
         * @param name The name for your group policy. Required.
         * 
         * @return builder
         * 
         */
        public Builder name(String name) {
            return name(Output.of(name));
        }

        /**
         * @param networkId networkId path parameter. Network ID
         * 
         * @return builder
         * 
         */
        public Builder networkId(@Nullable Output networkId) {
            $.networkId = networkId;
            return this;
        }

        /**
         * @param networkId networkId path parameter. Network ID
         * 
         * @return builder
         * 
         */
        public Builder networkId(String networkId) {
            return networkId(Output.of(networkId));
        }

        /**
         * @param scheduling The schedule for the group policy. Schedules are applied to days of the week.
         * 
         * @return builder
         * 
         */
        public Builder scheduling(@Nullable Output scheduling) {
            $.scheduling = scheduling;
            return this;
        }

        /**
         * @param scheduling The schedule for the group policy. Schedules are applied to days of the week.
         * 
         * @return builder
         * 
         */
        public Builder scheduling(GroupPoliciesSchedulingArgs scheduling) {
            return scheduling(Output.of(scheduling));
        }

        /**
         * @param splashAuthSettings Whether clients bound to your policy will bypass splash authorization or behave according to the network's rules. Can be one of 'network default' or 'bypass'. Only available if your network has a wireless configuration.
         * 
         * @return builder
         * 
         */
        public Builder splashAuthSettings(@Nullable Output splashAuthSettings) {
            $.splashAuthSettings = splashAuthSettings;
            return this;
        }

        /**
         * @param splashAuthSettings Whether clients bound to your policy will bypass splash authorization or behave according to the network's rules. Can be one of 'network default' or 'bypass'. Only available if your network has a wireless configuration.
         * 
         * @return builder
         * 
         */
        public Builder splashAuthSettings(String splashAuthSettings) {
            return splashAuthSettings(Output.of(splashAuthSettings));
        }

        /**
         * @param vlanTagging The VLAN tagging settings for your group policy. Only available if your network has a wireless configuration.
         * 
         * @return builder
         * 
         */
        public Builder vlanTagging(@Nullable Output vlanTagging) {
            $.vlanTagging = vlanTagging;
            return this;
        }

        /**
         * @param vlanTagging The VLAN tagging settings for your group policy. Only available if your network has a wireless configuration.
         * 
         * @return builder
         * 
         */
        public Builder vlanTagging(GroupPoliciesVlanTaggingArgs vlanTagging) {
            return vlanTagging(Output.of(vlanTagging));
        }

        public GroupPoliciesState build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy