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

com.pulumi.azurenative.mobilenetwork.SimArgs Maven / Gradle / Ivy

There is a newer version: 2.78.0
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.azurenative.mobilenetwork;

import com.pulumi.azurenative.mobilenetwork.inputs.SimPolicyResourceIdArgs;
import com.pulumi.azurenative.mobilenetwork.inputs.SimStaticIpPropertiesArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final SimArgs Empty = new SimArgs();

    /**
     * The Ki value for the SIM.
     * 
     */
    @Import(name="authenticationKey")
    private @Nullable Output authenticationKey;

    /**
     * @return The Ki value for the SIM.
     * 
     */
    public Optional> authenticationKey() {
        return Optional.ofNullable(this.authenticationKey);
    }

    /**
     * An optional free-form text field that can be used to record the device type this SIM is associated with, for example 'Video camera'. The Azure portal allows SIMs to be grouped and filtered based on this value.
     * 
     */
    @Import(name="deviceType")
    private @Nullable Output deviceType;

    /**
     * @return An optional free-form text field that can be used to record the device type this SIM is associated with, for example 'Video camera'. The Azure portal allows SIMs to be grouped and filtered based on this value.
     * 
     */
    public Optional> deviceType() {
        return Optional.ofNullable(this.deviceType);
    }

    /**
     * The integrated circuit card ID (ICCID) for the SIM.
     * 
     */
    @Import(name="integratedCircuitCardIdentifier")
    private @Nullable Output integratedCircuitCardIdentifier;

    /**
     * @return The integrated circuit card ID (ICCID) for the SIM.
     * 
     */
    public Optional> integratedCircuitCardIdentifier() {
        return Optional.ofNullable(this.integratedCircuitCardIdentifier);
    }

    /**
     * The international mobile subscriber identity (IMSI) for the SIM.
     * 
     */
    @Import(name="internationalMobileSubscriberIdentity", required=true)
    private Output internationalMobileSubscriberIdentity;

    /**
     * @return The international mobile subscriber identity (IMSI) for the SIM.
     * 
     */
    public Output internationalMobileSubscriberIdentity() {
        return this.internationalMobileSubscriberIdentity;
    }

    /**
     * The Opc value for the SIM.
     * 
     */
    @Import(name="operatorKeyCode")
    private @Nullable Output operatorKeyCode;

    /**
     * @return The Opc value for the SIM.
     * 
     */
    public Optional> operatorKeyCode() {
        return Optional.ofNullable(this.operatorKeyCode);
    }

    /**
     * The name of the resource group. The name is case insensitive.
     * 
     */
    @Import(name="resourceGroupName", required=true)
    private Output resourceGroupName;

    /**
     * @return The name of the resource group. The name is case insensitive.
     * 
     */
    public Output resourceGroupName() {
        return this.resourceGroupName;
    }

    /**
     * The name of the SIM Group.
     * 
     */
    @Import(name="simGroupName", required=true)
    private Output simGroupName;

    /**
     * @return The name of the SIM Group.
     * 
     */
    public Output simGroupName() {
        return this.simGroupName;
    }

    /**
     * The name of the SIM.
     * 
     */
    @Import(name="simName")
    private @Nullable Output simName;

    /**
     * @return The name of the SIM.
     * 
     */
    public Optional> simName() {
        return Optional.ofNullable(this.simName);
    }

    /**
     * The SIM policy used by this SIM. The SIM policy must be in the same location as the SIM.
     * 
     */
    @Import(name="simPolicy")
    private @Nullable Output simPolicy;

    /**
     * @return The SIM policy used by this SIM. The SIM policy must be in the same location as the SIM.
     * 
     */
    public Optional> simPolicy() {
        return Optional.ofNullable(this.simPolicy);
    }

    /**
     * A list of static IP addresses assigned to this SIM. Each address is assigned at a defined network scope, made up of {attached data network, slice}.
     * 
     */
    @Import(name="staticIpConfiguration")
    private @Nullable Output> staticIpConfiguration;

    /**
     * @return A list of static IP addresses assigned to this SIM. Each address is assigned at a defined network scope, made up of {attached data network, slice}.
     * 
     */
    public Optional>> staticIpConfiguration() {
        return Optional.ofNullable(this.staticIpConfiguration);
    }

    private SimArgs() {}

    private SimArgs(SimArgs $) {
        this.authenticationKey = $.authenticationKey;
        this.deviceType = $.deviceType;
        this.integratedCircuitCardIdentifier = $.integratedCircuitCardIdentifier;
        this.internationalMobileSubscriberIdentity = $.internationalMobileSubscriberIdentity;
        this.operatorKeyCode = $.operatorKeyCode;
        this.resourceGroupName = $.resourceGroupName;
        this.simGroupName = $.simGroupName;
        this.simName = $.simName;
        this.simPolicy = $.simPolicy;
        this.staticIpConfiguration = $.staticIpConfiguration;
    }

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

    public static final class Builder {
        private SimArgs $;

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

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

        /**
         * @param authenticationKey The Ki value for the SIM.
         * 
         * @return builder
         * 
         */
        public Builder authenticationKey(@Nullable Output authenticationKey) {
            $.authenticationKey = authenticationKey;
            return this;
        }

        /**
         * @param authenticationKey The Ki value for the SIM.
         * 
         * @return builder
         * 
         */
        public Builder authenticationKey(String authenticationKey) {
            return authenticationKey(Output.of(authenticationKey));
        }

        /**
         * @param deviceType An optional free-form text field that can be used to record the device type this SIM is associated with, for example 'Video camera'. The Azure portal allows SIMs to be grouped and filtered based on this value.
         * 
         * @return builder
         * 
         */
        public Builder deviceType(@Nullable Output deviceType) {
            $.deviceType = deviceType;
            return this;
        }

        /**
         * @param deviceType An optional free-form text field that can be used to record the device type this SIM is associated with, for example 'Video camera'. The Azure portal allows SIMs to be grouped and filtered based on this value.
         * 
         * @return builder
         * 
         */
        public Builder deviceType(String deviceType) {
            return deviceType(Output.of(deviceType));
        }

        /**
         * @param integratedCircuitCardIdentifier The integrated circuit card ID (ICCID) for the SIM.
         * 
         * @return builder
         * 
         */
        public Builder integratedCircuitCardIdentifier(@Nullable Output integratedCircuitCardIdentifier) {
            $.integratedCircuitCardIdentifier = integratedCircuitCardIdentifier;
            return this;
        }

        /**
         * @param integratedCircuitCardIdentifier The integrated circuit card ID (ICCID) for the SIM.
         * 
         * @return builder
         * 
         */
        public Builder integratedCircuitCardIdentifier(String integratedCircuitCardIdentifier) {
            return integratedCircuitCardIdentifier(Output.of(integratedCircuitCardIdentifier));
        }

        /**
         * @param internationalMobileSubscriberIdentity The international mobile subscriber identity (IMSI) for the SIM.
         * 
         * @return builder
         * 
         */
        public Builder internationalMobileSubscriberIdentity(Output internationalMobileSubscriberIdentity) {
            $.internationalMobileSubscriberIdentity = internationalMobileSubscriberIdentity;
            return this;
        }

        /**
         * @param internationalMobileSubscriberIdentity The international mobile subscriber identity (IMSI) for the SIM.
         * 
         * @return builder
         * 
         */
        public Builder internationalMobileSubscriberIdentity(String internationalMobileSubscriberIdentity) {
            return internationalMobileSubscriberIdentity(Output.of(internationalMobileSubscriberIdentity));
        }

        /**
         * @param operatorKeyCode The Opc value for the SIM.
         * 
         * @return builder
         * 
         */
        public Builder operatorKeyCode(@Nullable Output operatorKeyCode) {
            $.operatorKeyCode = operatorKeyCode;
            return this;
        }

        /**
         * @param operatorKeyCode The Opc value for the SIM.
         * 
         * @return builder
         * 
         */
        public Builder operatorKeyCode(String operatorKeyCode) {
            return operatorKeyCode(Output.of(operatorKeyCode));
        }

        /**
         * @param resourceGroupName The name of the resource group. The name is case insensitive.
         * 
         * @return builder
         * 
         */
        public Builder resourceGroupName(Output resourceGroupName) {
            $.resourceGroupName = resourceGroupName;
            return this;
        }

        /**
         * @param resourceGroupName The name of the resource group. The name is case insensitive.
         * 
         * @return builder
         * 
         */
        public Builder resourceGroupName(String resourceGroupName) {
            return resourceGroupName(Output.of(resourceGroupName));
        }

        /**
         * @param simGroupName The name of the SIM Group.
         * 
         * @return builder
         * 
         */
        public Builder simGroupName(Output simGroupName) {
            $.simGroupName = simGroupName;
            return this;
        }

        /**
         * @param simGroupName The name of the SIM Group.
         * 
         * @return builder
         * 
         */
        public Builder simGroupName(String simGroupName) {
            return simGroupName(Output.of(simGroupName));
        }

        /**
         * @param simName The name of the SIM.
         * 
         * @return builder
         * 
         */
        public Builder simName(@Nullable Output simName) {
            $.simName = simName;
            return this;
        }

        /**
         * @param simName The name of the SIM.
         * 
         * @return builder
         * 
         */
        public Builder simName(String simName) {
            return simName(Output.of(simName));
        }

        /**
         * @param simPolicy The SIM policy used by this SIM. The SIM policy must be in the same location as the SIM.
         * 
         * @return builder
         * 
         */
        public Builder simPolicy(@Nullable Output simPolicy) {
            $.simPolicy = simPolicy;
            return this;
        }

        /**
         * @param simPolicy The SIM policy used by this SIM. The SIM policy must be in the same location as the SIM.
         * 
         * @return builder
         * 
         */
        public Builder simPolicy(SimPolicyResourceIdArgs simPolicy) {
            return simPolicy(Output.of(simPolicy));
        }

        /**
         * @param staticIpConfiguration A list of static IP addresses assigned to this SIM. Each address is assigned at a defined network scope, made up of {attached data network, slice}.
         * 
         * @return builder
         * 
         */
        public Builder staticIpConfiguration(@Nullable Output> staticIpConfiguration) {
            $.staticIpConfiguration = staticIpConfiguration;
            return this;
        }

        /**
         * @param staticIpConfiguration A list of static IP addresses assigned to this SIM. Each address is assigned at a defined network scope, made up of {attached data network, slice}.
         * 
         * @return builder
         * 
         */
        public Builder staticIpConfiguration(List staticIpConfiguration) {
            return staticIpConfiguration(Output.of(staticIpConfiguration));
        }

        /**
         * @param staticIpConfiguration A list of static IP addresses assigned to this SIM. Each address is assigned at a defined network scope, made up of {attached data network, slice}.
         * 
         * @return builder
         * 
         */
        public Builder staticIpConfiguration(SimStaticIpPropertiesArgs... staticIpConfiguration) {
            return staticIpConfiguration(List.of(staticIpConfiguration));
        }

        public SimArgs build() {
            if ($.internationalMobileSubscriberIdentity == null) {
                throw new MissingRequiredPropertyException("SimArgs", "internationalMobileSubscriberIdentity");
            }
            if ($.resourceGroupName == null) {
                throw new MissingRequiredPropertyException("SimArgs", "resourceGroupName");
            }
            if ($.simGroupName == null) {
                throw new MissingRequiredPropertyException("SimArgs", "simGroupName");
            }
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy