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

com.pulumi.okta.user.outputs.GetUsersResult Maven / Gradle / Ivy

There is a newer version: 4.13.0-alpha.1732774005
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.okta.user.outputs;

import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import com.pulumi.okta.user.outputs.GetUsersSearch;
import com.pulumi.okta.user.outputs.GetUsersUser;
import java.lang.Boolean;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class GetUsersResult {
    /**
     * @return Search operator used when joining multiple search clauses
     * 
     */
    private @Nullable String compoundSearchOperator;
    /**
     * @return Force delay of the users read by N seconds. Useful when eventual consistency of users information needs to be allowed for.
     * 
     */
    private @Nullable String delayReadSeconds;
    /**
     * @return Find users based on group membership using the id of the group.
     * 
     */
    private @Nullable String groupId;
    /**
     * @return The provider-assigned unique ID for this managed resource.
     * 
     */
    private String id;
    /**
     * @return Fetch group memberships for each user
     * 
     */
    private @Nullable Boolean includeGroups;
    /**
     * @return Fetch user roles for each user
     * 
     */
    private @Nullable Boolean includeRoles;
    /**
     * @return Filter to find user/users. Each filter will be concatenated with the compound search operator. Please be aware profile properties must match what is in Okta, which is likely camel case. Expression is a free form expression filter https://developer.okta.com/docs/reference/core-okta-api/#filter . The set name/value/comparison properties will be ignored if expression is present
     * 
     */
    private @Nullable List searches;
    /**
     * @return collection of users retrieved from Okta.
     * 
     */
    private List users;

    private GetUsersResult() {}
    /**
     * @return Search operator used when joining multiple search clauses
     * 
     */
    public Optional compoundSearchOperator() {
        return Optional.ofNullable(this.compoundSearchOperator);
    }
    /**
     * @return Force delay of the users read by N seconds. Useful when eventual consistency of users information needs to be allowed for.
     * 
     */
    public Optional delayReadSeconds() {
        return Optional.ofNullable(this.delayReadSeconds);
    }
    /**
     * @return Find users based on group membership using the id of the group.
     * 
     */
    public Optional groupId() {
        return Optional.ofNullable(this.groupId);
    }
    /**
     * @return The provider-assigned unique ID for this managed resource.
     * 
     */
    public String id() {
        return this.id;
    }
    /**
     * @return Fetch group memberships for each user
     * 
     */
    public Optional includeGroups() {
        return Optional.ofNullable(this.includeGroups);
    }
    /**
     * @return Fetch user roles for each user
     * 
     */
    public Optional includeRoles() {
        return Optional.ofNullable(this.includeRoles);
    }
    /**
     * @return Filter to find user/users. Each filter will be concatenated with the compound search operator. Please be aware profile properties must match what is in Okta, which is likely camel case. Expression is a free form expression filter https://developer.okta.com/docs/reference/core-okta-api/#filter . The set name/value/comparison properties will be ignored if expression is present
     * 
     */
    public List searches() {
        return this.searches == null ? List.of() : this.searches;
    }
    /**
     * @return collection of users retrieved from Okta.
     * 
     */
    public List users() {
        return this.users;
    }

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

    public static Builder builder(GetUsersResult defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable String compoundSearchOperator;
        private @Nullable String delayReadSeconds;
        private @Nullable String groupId;
        private String id;
        private @Nullable Boolean includeGroups;
        private @Nullable Boolean includeRoles;
        private @Nullable List searches;
        private List users;
        public Builder() {}
        public Builder(GetUsersResult defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.compoundSearchOperator = defaults.compoundSearchOperator;
    	      this.delayReadSeconds = defaults.delayReadSeconds;
    	      this.groupId = defaults.groupId;
    	      this.id = defaults.id;
    	      this.includeGroups = defaults.includeGroups;
    	      this.includeRoles = defaults.includeRoles;
    	      this.searches = defaults.searches;
    	      this.users = defaults.users;
        }

        @CustomType.Setter
        public Builder compoundSearchOperator(@Nullable String compoundSearchOperator) {

            this.compoundSearchOperator = compoundSearchOperator;
            return this;
        }
        @CustomType.Setter
        public Builder delayReadSeconds(@Nullable String delayReadSeconds) {

            this.delayReadSeconds = delayReadSeconds;
            return this;
        }
        @CustomType.Setter
        public Builder groupId(@Nullable String groupId) {

            this.groupId = groupId;
            return this;
        }
        @CustomType.Setter
        public Builder id(String id) {
            if (id == null) {
              throw new MissingRequiredPropertyException("GetUsersResult", "id");
            }
            this.id = id;
            return this;
        }
        @CustomType.Setter
        public Builder includeGroups(@Nullable Boolean includeGroups) {

            this.includeGroups = includeGroups;
            return this;
        }
        @CustomType.Setter
        public Builder includeRoles(@Nullable Boolean includeRoles) {

            this.includeRoles = includeRoles;
            return this;
        }
        @CustomType.Setter
        public Builder searches(@Nullable List searches) {

            this.searches = searches;
            return this;
        }
        public Builder searches(GetUsersSearch... searches) {
            return searches(List.of(searches));
        }
        @CustomType.Setter
        public Builder users(List users) {
            if (users == null) {
              throw new MissingRequiredPropertyException("GetUsersResult", "users");
            }
            this.users = users;
            return this;
        }
        public Builder users(GetUsersUser... users) {
            return users(List.of(users));
        }
        public GetUsersResult build() {
            final var _resultValue = new GetUsersResult();
            _resultValue.compoundSearchOperator = compoundSearchOperator;
            _resultValue.delayReadSeconds = delayReadSeconds;
            _resultValue.groupId = groupId;
            _resultValue.id = id;
            _resultValue.includeGroups = includeGroups;
            _resultValue.includeRoles = includeRoles;
            _resultValue.searches = searches;
            _resultValue.users = users;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy