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

com.pulumi.aws.vpclattice.AccessLogSubscriptionArgs Maven / Gradle / Ivy

Go to download

A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.

There is a newer version: 6.60.0-alpha.1731982519
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.aws.vpclattice;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final AccessLogSubscriptionArgs Empty = new AccessLogSubscriptionArgs();

    /**
     * Amazon Resource Name (ARN) of the log destination.
     * 
     */
    @Import(name="destinationArn", required=true)
    private Output destinationArn;

    /**
     * @return Amazon Resource Name (ARN) of the log destination.
     * 
     */
    public Output destinationArn() {
        return this.destinationArn;
    }

    /**
     * The ID or Amazon Resource Identifier (ARN) of the service network or service. You must use the ARN if the resources specified in the operation are in different accounts.
     * 
     */
    @Import(name="resourceIdentifier", required=true)
    private Output resourceIdentifier;

    /**
     * @return The ID or Amazon Resource Identifier (ARN) of the service network or service. You must use the ARN if the resources specified in the operation are in different accounts.
     * 
     */
    public Output resourceIdentifier() {
        return this.resourceIdentifier;
    }

    @Import(name="tags")
    private @Nullable Output> tags;

    public Optional>> tags() {
        return Optional.ofNullable(this.tags);
    }

    private AccessLogSubscriptionArgs() {}

    private AccessLogSubscriptionArgs(AccessLogSubscriptionArgs $) {
        this.destinationArn = $.destinationArn;
        this.resourceIdentifier = $.resourceIdentifier;
        this.tags = $.tags;
    }

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

    public static final class Builder {
        private AccessLogSubscriptionArgs $;

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

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

        /**
         * @param destinationArn Amazon Resource Name (ARN) of the log destination.
         * 
         * @return builder
         * 
         */
        public Builder destinationArn(Output destinationArn) {
            $.destinationArn = destinationArn;
            return this;
        }

        /**
         * @param destinationArn Amazon Resource Name (ARN) of the log destination.
         * 
         * @return builder
         * 
         */
        public Builder destinationArn(String destinationArn) {
            return destinationArn(Output.of(destinationArn));
        }

        /**
         * @param resourceIdentifier The ID or Amazon Resource Identifier (ARN) of the service network or service. You must use the ARN if the resources specified in the operation are in different accounts.
         * 
         * @return builder
         * 
         */
        public Builder resourceIdentifier(Output resourceIdentifier) {
            $.resourceIdentifier = resourceIdentifier;
            return this;
        }

        /**
         * @param resourceIdentifier The ID or Amazon Resource Identifier (ARN) of the service network or service. You must use the ARN if the resources specified in the operation are in different accounts.
         * 
         * @return builder
         * 
         */
        public Builder resourceIdentifier(String resourceIdentifier) {
            return resourceIdentifier(Output.of(resourceIdentifier));
        }

        public Builder tags(@Nullable Output> tags) {
            $.tags = tags;
            return this;
        }

        public Builder tags(Map tags) {
            return tags(Output.of(tags));
        }

        public AccessLogSubscriptionArgs build() {
            if ($.destinationArn == null) {
                throw new MissingRequiredPropertyException("AccessLogSubscriptionArgs", "destinationArn");
            }
            if ($.resourceIdentifier == null) {
                throw new MissingRequiredPropertyException("AccessLogSubscriptionArgs", "resourceIdentifier");
            }
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy