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

com.pulumi.kafka.inputs.AclState Maven / Gradle / Ivy

The 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.kafka.inputs;

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 AclState extends com.pulumi.resources.ResourceArgs {

    public static final AclState Empty = new AclState();

    /**
     * Host from which principal listed in `acl_principal`
     * will have access.
     * 
     */
    @Import(name="aclHost")
    private @Nullable Output aclHost;

    /**
     * @return Host from which principal listed in `acl_principal`
     * will have access.
     * 
     */
    public Optional> aclHost() {
        return Optional.ofNullable(this.aclHost);
    }

    /**
     * Operation that is being allowed or denied. Valid
     * values are `Unknown`, `Any`, `All`, `Read`, `Write`, `Create`, `Delete`, `Alter`,
     * `Describe`, `ClusterAction`, `DescribeConfigs`, `AlterConfigs`, `IdempotentWrite`.
     * 
     */
    @Import(name="aclOperation")
    private @Nullable Output aclOperation;

    /**
     * @return Operation that is being allowed or denied. Valid
     * values are `Unknown`, `Any`, `All`, `Read`, `Write`, `Create`, `Delete`, `Alter`,
     * `Describe`, `ClusterAction`, `DescribeConfigs`, `AlterConfigs`, `IdempotentWrite`.
     * 
     */
    public Optional> aclOperation() {
        return Optional.ofNullable(this.aclOperation);
    }

    /**
     * Type of permission. Valid values are `Unknown`,
     * `Any`, `Allow`, `Deny`.
     * 
     */
    @Import(name="aclPermissionType")
    private @Nullable Output aclPermissionType;

    /**
     * @return Type of permission. Valid values are `Unknown`,
     * `Any`, `Allow`, `Deny`.
     * 
     */
    public Optional> aclPermissionType() {
        return Optional.ofNullable(this.aclPermissionType);
    }

    /**
     * Principal that is being allowed or denied.
     * 
     */
    @Import(name="aclPrincipal")
    private @Nullable Output aclPrincipal;

    /**
     * @return Principal that is being allowed or denied.
     * 
     */
    public Optional> aclPrincipal() {
        return Optional.ofNullable(this.aclPrincipal);
    }

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

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

    /**
     * The type of resource. Valid values are `Unknown`,
     * `Any`, `Topic`, `Group`, `Cluster`, `TransactionalID`.
     * 
     */
    @Import(name="aclResourceType")
    private @Nullable Output aclResourceType;

    /**
     * @return The type of resource. Valid values are `Unknown`,
     * `Any`, `Topic`, `Group`, `Cluster`, `TransactionalID`.
     * 
     */
    public Optional> aclResourceType() {
        return Optional.ofNullable(this.aclResourceType);
    }

    /**
     * The pattern filter. Valid values
     * are `Prefixed`, `Any`, `Match`, `Literal`. Default `Literal`.
     * 
     */
    @Import(name="resourcePatternTypeFilter")
    private @Nullable Output resourcePatternTypeFilter;

    /**
     * @return The pattern filter. Valid values
     * are `Prefixed`, `Any`, `Match`, `Literal`. Default `Literal`.
     * 
     */
    public Optional> resourcePatternTypeFilter() {
        return Optional.ofNullable(this.resourcePatternTypeFilter);
    }

    private AclState() {}

    private AclState(AclState $) {
        this.aclHost = $.aclHost;
        this.aclOperation = $.aclOperation;
        this.aclPermissionType = $.aclPermissionType;
        this.aclPrincipal = $.aclPrincipal;
        this.aclResourceName = $.aclResourceName;
        this.aclResourceType = $.aclResourceType;
        this.resourcePatternTypeFilter = $.resourcePatternTypeFilter;
    }

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

    public static final class Builder {
        private AclState $;

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

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

        /**
         * @param aclHost Host from which principal listed in `acl_principal`
         * will have access.
         * 
         * @return builder
         * 
         */
        public Builder aclHost(@Nullable Output aclHost) {
            $.aclHost = aclHost;
            return this;
        }

        /**
         * @param aclHost Host from which principal listed in `acl_principal`
         * will have access.
         * 
         * @return builder
         * 
         */
        public Builder aclHost(String aclHost) {
            return aclHost(Output.of(aclHost));
        }

        /**
         * @param aclOperation Operation that is being allowed or denied. Valid
         * values are `Unknown`, `Any`, `All`, `Read`, `Write`, `Create`, `Delete`, `Alter`,
         * `Describe`, `ClusterAction`, `DescribeConfigs`, `AlterConfigs`, `IdempotentWrite`.
         * 
         * @return builder
         * 
         */
        public Builder aclOperation(@Nullable Output aclOperation) {
            $.aclOperation = aclOperation;
            return this;
        }

        /**
         * @param aclOperation Operation that is being allowed or denied. Valid
         * values are `Unknown`, `Any`, `All`, `Read`, `Write`, `Create`, `Delete`, `Alter`,
         * `Describe`, `ClusterAction`, `DescribeConfigs`, `AlterConfigs`, `IdempotentWrite`.
         * 
         * @return builder
         * 
         */
        public Builder aclOperation(String aclOperation) {
            return aclOperation(Output.of(aclOperation));
        }

        /**
         * @param aclPermissionType Type of permission. Valid values are `Unknown`,
         * `Any`, `Allow`, `Deny`.
         * 
         * @return builder
         * 
         */
        public Builder aclPermissionType(@Nullable Output aclPermissionType) {
            $.aclPermissionType = aclPermissionType;
            return this;
        }

        /**
         * @param aclPermissionType Type of permission. Valid values are `Unknown`,
         * `Any`, `Allow`, `Deny`.
         * 
         * @return builder
         * 
         */
        public Builder aclPermissionType(String aclPermissionType) {
            return aclPermissionType(Output.of(aclPermissionType));
        }

        /**
         * @param aclPrincipal Principal that is being allowed or denied.
         * 
         * @return builder
         * 
         */
        public Builder aclPrincipal(@Nullable Output aclPrincipal) {
            $.aclPrincipal = aclPrincipal;
            return this;
        }

        /**
         * @param aclPrincipal Principal that is being allowed or denied.
         * 
         * @return builder
         * 
         */
        public Builder aclPrincipal(String aclPrincipal) {
            return aclPrincipal(Output.of(aclPrincipal));
        }

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

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

        /**
         * @param aclResourceType The type of resource. Valid values are `Unknown`,
         * `Any`, `Topic`, `Group`, `Cluster`, `TransactionalID`.
         * 
         * @return builder
         * 
         */
        public Builder aclResourceType(@Nullable Output aclResourceType) {
            $.aclResourceType = aclResourceType;
            return this;
        }

        /**
         * @param aclResourceType The type of resource. Valid values are `Unknown`,
         * `Any`, `Topic`, `Group`, `Cluster`, `TransactionalID`.
         * 
         * @return builder
         * 
         */
        public Builder aclResourceType(String aclResourceType) {
            return aclResourceType(Output.of(aclResourceType));
        }

        /**
         * @param resourcePatternTypeFilter The pattern filter. Valid values
         * are `Prefixed`, `Any`, `Match`, `Literal`. Default `Literal`.
         * 
         * @return builder
         * 
         */
        public Builder resourcePatternTypeFilter(@Nullable Output resourcePatternTypeFilter) {
            $.resourcePatternTypeFilter = resourcePatternTypeFilter;
            return this;
        }

        /**
         * @param resourcePatternTypeFilter The pattern filter. Valid values
         * are `Prefixed`, `Any`, `Match`, `Literal`. Default `Literal`.
         * 
         * @return builder
         * 
         */
        public Builder resourcePatternTypeFilter(String resourcePatternTypeFilter) {
            return resourcePatternTypeFilter(Output.of(resourcePatternTypeFilter));
        }

        public AclState build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy