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

com.pulumi.azurenative.costmanagement.CloudConnectorArgs Maven / Gradle / Ivy

There is a newer version: 2.82.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.costmanagement;

import com.pulumi.azurenative.costmanagement.enums.ConnectorBillingModel;
import com.pulumi.core.Either;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final CloudConnectorArgs Empty = new CloudConnectorArgs();

    /**
     * Connector billing model
     * 
     */
    @Import(name="billingModel")
    private @Nullable Output> billingModel;

    /**
     * @return Connector billing model
     * 
     */
    public Optional>> billingModel() {
        return Optional.ofNullable(this.billingModel);
    }

    /**
     * Connector Name.
     * 
     */
    @Import(name="connectorName")
    private @Nullable Output connectorName;

    /**
     * @return Connector Name.
     * 
     */
    public Optional> connectorName() {
        return Optional.ofNullable(this.connectorName);
    }

    /**
     * Credentials authentication key (eg AWS ARN)
     * 
     */
    @Import(name="credentialsKey")
    private @Nullable Output credentialsKey;

    /**
     * @return Credentials authentication key (eg AWS ARN)
     * 
     */
    public Optional> credentialsKey() {
        return Optional.ofNullable(this.credentialsKey);
    }

    /**
     * Credentials secret (eg AWS ExternalId)
     * 
     */
    @Import(name="credentialsSecret")
    private @Nullable Output credentialsSecret;

    /**
     * @return Credentials secret (eg AWS ExternalId)
     * 
     */
    public Optional> credentialsSecret() {
        return Optional.ofNullable(this.credentialsSecret);
    }

    /**
     * Default ManagementGroupId
     * 
     */
    @Import(name="defaultManagementGroupId")
    private @Nullable Output defaultManagementGroupId;

    /**
     * @return Default ManagementGroupId
     * 
     */
    public Optional> defaultManagementGroupId() {
        return Optional.ofNullable(this.defaultManagementGroupId);
    }

    /**
     * Connector DisplayName
     * 
     */
    @Import(name="displayName")
    private @Nullable Output displayName;

    /**
     * @return Connector DisplayName
     * 
     */
    public Optional> displayName() {
        return Optional.ofNullable(this.displayName);
    }

    /**
     * Connector kind (eg aws)
     * 
     */
    @Import(name="kind")
    private @Nullable Output kind;

    /**
     * @return Connector kind (eg aws)
     * 
     */
    public Optional> kind() {
        return Optional.ofNullable(this.kind);
    }

    /**
     * Identifying source report. (For AWS this is a CUR report name, defined with Daily and with Resources)
     * 
     */
    @Import(name="reportId")
    private @Nullable Output reportId;

    /**
     * @return Identifying source report. (For AWS this is a CUR report name, defined with Daily and with Resources)
     * 
     */
    public Optional> reportId() {
        return Optional.ofNullable(this.reportId);
    }

    /**
     * Billing SubscriptionId
     * 
     */
    @Import(name="subscriptionId")
    private @Nullable Output subscriptionId;

    /**
     * @return Billing SubscriptionId
     * 
     */
    public Optional> subscriptionId() {
        return Optional.ofNullable(this.subscriptionId);
    }

    private CloudConnectorArgs() {}

    private CloudConnectorArgs(CloudConnectorArgs $) {
        this.billingModel = $.billingModel;
        this.connectorName = $.connectorName;
        this.credentialsKey = $.credentialsKey;
        this.credentialsSecret = $.credentialsSecret;
        this.defaultManagementGroupId = $.defaultManagementGroupId;
        this.displayName = $.displayName;
        this.kind = $.kind;
        this.reportId = $.reportId;
        this.subscriptionId = $.subscriptionId;
    }

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

    public static final class Builder {
        private CloudConnectorArgs $;

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

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

        /**
         * @param billingModel Connector billing model
         * 
         * @return builder
         * 
         */
        public Builder billingModel(@Nullable Output> billingModel) {
            $.billingModel = billingModel;
            return this;
        }

        /**
         * @param billingModel Connector billing model
         * 
         * @return builder
         * 
         */
        public Builder billingModel(Either billingModel) {
            return billingModel(Output.of(billingModel));
        }

        /**
         * @param billingModel Connector billing model
         * 
         * @return builder
         * 
         */
        public Builder billingModel(String billingModel) {
            return billingModel(Either.ofLeft(billingModel));
        }

        /**
         * @param billingModel Connector billing model
         * 
         * @return builder
         * 
         */
        public Builder billingModel(ConnectorBillingModel billingModel) {
            return billingModel(Either.ofRight(billingModel));
        }

        /**
         * @param connectorName Connector Name.
         * 
         * @return builder
         * 
         */
        public Builder connectorName(@Nullable Output connectorName) {
            $.connectorName = connectorName;
            return this;
        }

        /**
         * @param connectorName Connector Name.
         * 
         * @return builder
         * 
         */
        public Builder connectorName(String connectorName) {
            return connectorName(Output.of(connectorName));
        }

        /**
         * @param credentialsKey Credentials authentication key (eg AWS ARN)
         * 
         * @return builder
         * 
         */
        public Builder credentialsKey(@Nullable Output credentialsKey) {
            $.credentialsKey = credentialsKey;
            return this;
        }

        /**
         * @param credentialsKey Credentials authentication key (eg AWS ARN)
         * 
         * @return builder
         * 
         */
        public Builder credentialsKey(String credentialsKey) {
            return credentialsKey(Output.of(credentialsKey));
        }

        /**
         * @param credentialsSecret Credentials secret (eg AWS ExternalId)
         * 
         * @return builder
         * 
         */
        public Builder credentialsSecret(@Nullable Output credentialsSecret) {
            $.credentialsSecret = credentialsSecret;
            return this;
        }

        /**
         * @param credentialsSecret Credentials secret (eg AWS ExternalId)
         * 
         * @return builder
         * 
         */
        public Builder credentialsSecret(String credentialsSecret) {
            return credentialsSecret(Output.of(credentialsSecret));
        }

        /**
         * @param defaultManagementGroupId Default ManagementGroupId
         * 
         * @return builder
         * 
         */
        public Builder defaultManagementGroupId(@Nullable Output defaultManagementGroupId) {
            $.defaultManagementGroupId = defaultManagementGroupId;
            return this;
        }

        /**
         * @param defaultManagementGroupId Default ManagementGroupId
         * 
         * @return builder
         * 
         */
        public Builder defaultManagementGroupId(String defaultManagementGroupId) {
            return defaultManagementGroupId(Output.of(defaultManagementGroupId));
        }

        /**
         * @param displayName Connector DisplayName
         * 
         * @return builder
         * 
         */
        public Builder displayName(@Nullable Output displayName) {
            $.displayName = displayName;
            return this;
        }

        /**
         * @param displayName Connector DisplayName
         * 
         * @return builder
         * 
         */
        public Builder displayName(String displayName) {
            return displayName(Output.of(displayName));
        }

        /**
         * @param kind Connector kind (eg aws)
         * 
         * @return builder
         * 
         */
        public Builder kind(@Nullable Output kind) {
            $.kind = kind;
            return this;
        }

        /**
         * @param kind Connector kind (eg aws)
         * 
         * @return builder
         * 
         */
        public Builder kind(String kind) {
            return kind(Output.of(kind));
        }

        /**
         * @param reportId Identifying source report. (For AWS this is a CUR report name, defined with Daily and with Resources)
         * 
         * @return builder
         * 
         */
        public Builder reportId(@Nullable Output reportId) {
            $.reportId = reportId;
            return this;
        }

        /**
         * @param reportId Identifying source report. (For AWS this is a CUR report name, defined with Daily and with Resources)
         * 
         * @return builder
         * 
         */
        public Builder reportId(String reportId) {
            return reportId(Output.of(reportId));
        }

        /**
         * @param subscriptionId Billing SubscriptionId
         * 
         * @return builder
         * 
         */
        public Builder subscriptionId(@Nullable Output subscriptionId) {
            $.subscriptionId = subscriptionId;
            return this;
        }

        /**
         * @param subscriptionId Billing SubscriptionId
         * 
         * @return builder
         * 
         */
        public Builder subscriptionId(String subscriptionId) {
            return subscriptionId(Output.of(subscriptionId));
        }

        public CloudConnectorArgs build() {
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy