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

com.pulumi.aws.iam.inputs.GetRolesPlainArgs Maven / Gradle / Ivy

// *** 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.iam.inputs;

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 GetRolesPlainArgs extends com.pulumi.resources.InvokeArgs {

    public static final GetRolesPlainArgs Empty = new GetRolesPlainArgs();

    /**
     * Regex string to apply to the IAM roles list returned by AWS. This allows more advanced filtering not supported from the AWS API. This filtering is done locally on what AWS returns, and could have a performance impact if the result is large. Combine this with other options to narrow down the list AWS returns.
     * 
     */
    @Import(name="nameRegex")
    private @Nullable String nameRegex;

    /**
     * @return Regex string to apply to the IAM roles list returned by AWS. This allows more advanced filtering not supported from the AWS API. This filtering is done locally on what AWS returns, and could have a performance impact if the result is large. Combine this with other options to narrow down the list AWS returns.
     * 
     */
    public Optional nameRegex() {
        return Optional.ofNullable(this.nameRegex);
    }

    /**
     * Path prefix for filtering the results. For example, the prefix `/application_abc/component_xyz/` gets all roles whose path starts with `/application_abc/component_xyz/`. If it is not included, it defaults to a slash (`/`), listing all roles. For more details, check out [list-roles in the AWS CLI reference][1].
     * 
     */
    @Import(name="pathPrefix")
    private @Nullable String pathPrefix;

    /**
     * @return Path prefix for filtering the results. For example, the prefix `/application_abc/component_xyz/` gets all roles whose path starts with `/application_abc/component_xyz/`. If it is not included, it defaults to a slash (`/`), listing all roles. For more details, check out [list-roles in the AWS CLI reference][1].
     * 
     */
    public Optional pathPrefix() {
        return Optional.ofNullable(this.pathPrefix);
    }

    private GetRolesPlainArgs() {}

    private GetRolesPlainArgs(GetRolesPlainArgs $) {
        this.nameRegex = $.nameRegex;
        this.pathPrefix = $.pathPrefix;
    }

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

    public static final class Builder {
        private GetRolesPlainArgs $;

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

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

        /**
         * @param nameRegex Regex string to apply to the IAM roles list returned by AWS. This allows more advanced filtering not supported from the AWS API. This filtering is done locally on what AWS returns, and could have a performance impact if the result is large. Combine this with other options to narrow down the list AWS returns.
         * 
         * @return builder
         * 
         */
        public Builder nameRegex(@Nullable String nameRegex) {
            $.nameRegex = nameRegex;
            return this;
        }

        /**
         * @param pathPrefix Path prefix for filtering the results. For example, the prefix `/application_abc/component_xyz/` gets all roles whose path starts with `/application_abc/component_xyz/`. If it is not included, it defaults to a slash (`/`), listing all roles. For more details, check out [list-roles in the AWS CLI reference][1].
         * 
         * @return builder
         * 
         */
        public Builder pathPrefix(@Nullable String pathPrefix) {
            $.pathPrefix = pathPrefix;
            return this;
        }

        public GetRolesPlainArgs build() {
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy