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

com.pulumi.azurenative.authorization.outputs.GetScopeAccessReviewHistoryDefinitionByIdResult 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.azurenative.authorization.outputs;

import com.pulumi.azurenative.authorization.outputs.AccessReviewHistoryInstanceResponse;
import com.pulumi.azurenative.authorization.outputs.AccessReviewScopeResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class GetScopeAccessReviewHistoryDefinitionByIdResult {
    /**
     * @return Date time when history definition was created
     * 
     */
    private String createdDateTime;
    /**
     * @return Collection of review decisions which the history data should be filtered on. For example if Approve and Deny are supplied the data will only contain review results in which the decision maker approved or denied a review request.
     * 
     */
    private @Nullable List decisions;
    /**
     * @return The display name for the history definition.
     * 
     */
    private @Nullable String displayName;
    /**
     * @return The DateTime when the review is scheduled to end. Required if type is endDate
     * 
     */
    private @Nullable String endDate;
    /**
     * @return The access review history definition id.
     * 
     */
    private String id;
    /**
     * @return Set of access review history instances for this history definition.
     * 
     */
    private @Nullable List instances;
    /**
     * @return The interval for recurrence. For a quarterly review, the interval is 3 for type : absoluteMonthly.
     * 
     */
    private @Nullable Integer interval;
    /**
     * @return The access review history definition unique id.
     * 
     */
    private String name;
    /**
     * @return The number of times to repeat the access review. Required and must be positive if type is numbered.
     * 
     */
    private @Nullable Integer numberOfOccurrences;
    /**
     * @return The identity id
     * 
     */
    private String principalId;
    /**
     * @return The identity display name
     * 
     */
    private String principalName;
    /**
     * @return The identity type : user/servicePrincipal
     * 
     */
    private String principalType;
    /**
     * @return Date time used when selecting review data, all reviews included in data end on or before this date. For use only with one-time/non-recurring reports.
     * 
     */
    private String reviewHistoryPeriodEndDateTime;
    /**
     * @return Date time used when selecting review data, all reviews included in data start on or after this date. For use only with one-time/non-recurring reports.
     * 
     */
    private String reviewHistoryPeriodStartDateTime;
    /**
     * @return A collection of scopes used when selecting review history data
     * 
     */
    private @Nullable List scopes;
    /**
     * @return The DateTime when the review is scheduled to be start. This could be a date in the future. Required on create.
     * 
     */
    private @Nullable String startDate;
    /**
     * @return This read-only field specifies the of the requested review history data. This is either requested, in-progress, done or error.
     * 
     */
    private String status;
    /**
     * @return The resource type.
     * 
     */
    private String type;
    /**
     * @return The user principal name(if valid)
     * 
     */
    private String userPrincipalName;

    private GetScopeAccessReviewHistoryDefinitionByIdResult() {}
    /**
     * @return Date time when history definition was created
     * 
     */
    public String createdDateTime() {
        return this.createdDateTime;
    }
    /**
     * @return Collection of review decisions which the history data should be filtered on. For example if Approve and Deny are supplied the data will only contain review results in which the decision maker approved or denied a review request.
     * 
     */
    public List decisions() {
        return this.decisions == null ? List.of() : this.decisions;
    }
    /**
     * @return The display name for the history definition.
     * 
     */
    public Optional displayName() {
        return Optional.ofNullable(this.displayName);
    }
    /**
     * @return The DateTime when the review is scheduled to end. Required if type is endDate
     * 
     */
    public Optional endDate() {
        return Optional.ofNullable(this.endDate);
    }
    /**
     * @return The access review history definition id.
     * 
     */
    public String id() {
        return this.id;
    }
    /**
     * @return Set of access review history instances for this history definition.
     * 
     */
    public List instances() {
        return this.instances == null ? List.of() : this.instances;
    }
    /**
     * @return The interval for recurrence. For a quarterly review, the interval is 3 for type : absoluteMonthly.
     * 
     */
    public Optional interval() {
        return Optional.ofNullable(this.interval);
    }
    /**
     * @return The access review history definition unique id.
     * 
     */
    public String name() {
        return this.name;
    }
    /**
     * @return The number of times to repeat the access review. Required and must be positive if type is numbered.
     * 
     */
    public Optional numberOfOccurrences() {
        return Optional.ofNullable(this.numberOfOccurrences);
    }
    /**
     * @return The identity id
     * 
     */
    public String principalId() {
        return this.principalId;
    }
    /**
     * @return The identity display name
     * 
     */
    public String principalName() {
        return this.principalName;
    }
    /**
     * @return The identity type : user/servicePrincipal
     * 
     */
    public String principalType() {
        return this.principalType;
    }
    /**
     * @return Date time used when selecting review data, all reviews included in data end on or before this date. For use only with one-time/non-recurring reports.
     * 
     */
    public String reviewHistoryPeriodEndDateTime() {
        return this.reviewHistoryPeriodEndDateTime;
    }
    /**
     * @return Date time used when selecting review data, all reviews included in data start on or after this date. For use only with one-time/non-recurring reports.
     * 
     */
    public String reviewHistoryPeriodStartDateTime() {
        return this.reviewHistoryPeriodStartDateTime;
    }
    /**
     * @return A collection of scopes used when selecting review history data
     * 
     */
    public List scopes() {
        return this.scopes == null ? List.of() : this.scopes;
    }
    /**
     * @return The DateTime when the review is scheduled to be start. This could be a date in the future. Required on create.
     * 
     */
    public Optional startDate() {
        return Optional.ofNullable(this.startDate);
    }
    /**
     * @return This read-only field specifies the of the requested review history data. This is either requested, in-progress, done or error.
     * 
     */
    public String status() {
        return this.status;
    }
    /**
     * @return The resource type.
     * 
     */
    public String type() {
        return this.type;
    }
    /**
     * @return The user principal name(if valid)
     * 
     */
    public String userPrincipalName() {
        return this.userPrincipalName;
    }

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

    public static Builder builder(GetScopeAccessReviewHistoryDefinitionByIdResult defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private String createdDateTime;
        private @Nullable List decisions;
        private @Nullable String displayName;
        private @Nullable String endDate;
        private String id;
        private @Nullable List instances;
        private @Nullable Integer interval;
        private String name;
        private @Nullable Integer numberOfOccurrences;
        private String principalId;
        private String principalName;
        private String principalType;
        private String reviewHistoryPeriodEndDateTime;
        private String reviewHistoryPeriodStartDateTime;
        private @Nullable List scopes;
        private @Nullable String startDate;
        private String status;
        private String type;
        private String userPrincipalName;
        public Builder() {}
        public Builder(GetScopeAccessReviewHistoryDefinitionByIdResult defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.createdDateTime = defaults.createdDateTime;
    	      this.decisions = defaults.decisions;
    	      this.displayName = defaults.displayName;
    	      this.endDate = defaults.endDate;
    	      this.id = defaults.id;
    	      this.instances = defaults.instances;
    	      this.interval = defaults.interval;
    	      this.name = defaults.name;
    	      this.numberOfOccurrences = defaults.numberOfOccurrences;
    	      this.principalId = defaults.principalId;
    	      this.principalName = defaults.principalName;
    	      this.principalType = defaults.principalType;
    	      this.reviewHistoryPeriodEndDateTime = defaults.reviewHistoryPeriodEndDateTime;
    	      this.reviewHistoryPeriodStartDateTime = defaults.reviewHistoryPeriodStartDateTime;
    	      this.scopes = defaults.scopes;
    	      this.startDate = defaults.startDate;
    	      this.status = defaults.status;
    	      this.type = defaults.type;
    	      this.userPrincipalName = defaults.userPrincipalName;
        }

        @CustomType.Setter
        public Builder createdDateTime(String createdDateTime) {
            if (createdDateTime == null) {
              throw new MissingRequiredPropertyException("GetScopeAccessReviewHistoryDefinitionByIdResult", "createdDateTime");
            }
            this.createdDateTime = createdDateTime;
            return this;
        }
        @CustomType.Setter
        public Builder decisions(@Nullable List decisions) {

            this.decisions = decisions;
            return this;
        }
        public Builder decisions(String... decisions) {
            return decisions(List.of(decisions));
        }
        @CustomType.Setter
        public Builder displayName(@Nullable String displayName) {

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

            this.endDate = endDate;
            return this;
        }
        @CustomType.Setter
        public Builder id(String id) {
            if (id == null) {
              throw new MissingRequiredPropertyException("GetScopeAccessReviewHistoryDefinitionByIdResult", "id");
            }
            this.id = id;
            return this;
        }
        @CustomType.Setter
        public Builder instances(@Nullable List instances) {

            this.instances = instances;
            return this;
        }
        public Builder instances(AccessReviewHistoryInstanceResponse... instances) {
            return instances(List.of(instances));
        }
        @CustomType.Setter
        public Builder interval(@Nullable Integer interval) {

            this.interval = interval;
            return this;
        }
        @CustomType.Setter
        public Builder name(String name) {
            if (name == null) {
              throw new MissingRequiredPropertyException("GetScopeAccessReviewHistoryDefinitionByIdResult", "name");
            }
            this.name = name;
            return this;
        }
        @CustomType.Setter
        public Builder numberOfOccurrences(@Nullable Integer numberOfOccurrences) {

            this.numberOfOccurrences = numberOfOccurrences;
            return this;
        }
        @CustomType.Setter
        public Builder principalId(String principalId) {
            if (principalId == null) {
              throw new MissingRequiredPropertyException("GetScopeAccessReviewHistoryDefinitionByIdResult", "principalId");
            }
            this.principalId = principalId;
            return this;
        }
        @CustomType.Setter
        public Builder principalName(String principalName) {
            if (principalName == null) {
              throw new MissingRequiredPropertyException("GetScopeAccessReviewHistoryDefinitionByIdResult", "principalName");
            }
            this.principalName = principalName;
            return this;
        }
        @CustomType.Setter
        public Builder principalType(String principalType) {
            if (principalType == null) {
              throw new MissingRequiredPropertyException("GetScopeAccessReviewHistoryDefinitionByIdResult", "principalType");
            }
            this.principalType = principalType;
            return this;
        }
        @CustomType.Setter
        public Builder reviewHistoryPeriodEndDateTime(String reviewHistoryPeriodEndDateTime) {
            if (reviewHistoryPeriodEndDateTime == null) {
              throw new MissingRequiredPropertyException("GetScopeAccessReviewHistoryDefinitionByIdResult", "reviewHistoryPeriodEndDateTime");
            }
            this.reviewHistoryPeriodEndDateTime = reviewHistoryPeriodEndDateTime;
            return this;
        }
        @CustomType.Setter
        public Builder reviewHistoryPeriodStartDateTime(String reviewHistoryPeriodStartDateTime) {
            if (reviewHistoryPeriodStartDateTime == null) {
              throw new MissingRequiredPropertyException("GetScopeAccessReviewHistoryDefinitionByIdResult", "reviewHistoryPeriodStartDateTime");
            }
            this.reviewHistoryPeriodStartDateTime = reviewHistoryPeriodStartDateTime;
            return this;
        }
        @CustomType.Setter
        public Builder scopes(@Nullable List scopes) {

            this.scopes = scopes;
            return this;
        }
        public Builder scopes(AccessReviewScopeResponse... scopes) {
            return scopes(List.of(scopes));
        }
        @CustomType.Setter
        public Builder startDate(@Nullable String startDate) {

            this.startDate = startDate;
            return this;
        }
        @CustomType.Setter
        public Builder status(String status) {
            if (status == null) {
              throw new MissingRequiredPropertyException("GetScopeAccessReviewHistoryDefinitionByIdResult", "status");
            }
            this.status = status;
            return this;
        }
        @CustomType.Setter
        public Builder type(String type) {
            if (type == null) {
              throw new MissingRequiredPropertyException("GetScopeAccessReviewHistoryDefinitionByIdResult", "type");
            }
            this.type = type;
            return this;
        }
        @CustomType.Setter
        public Builder userPrincipalName(String userPrincipalName) {
            if (userPrincipalName == null) {
              throw new MissingRequiredPropertyException("GetScopeAccessReviewHistoryDefinitionByIdResult", "userPrincipalName");
            }
            this.userPrincipalName = userPrincipalName;
            return this;
        }
        public GetScopeAccessReviewHistoryDefinitionByIdResult build() {
            final var _resultValue = new GetScopeAccessReviewHistoryDefinitionByIdResult();
            _resultValue.createdDateTime = createdDateTime;
            _resultValue.decisions = decisions;
            _resultValue.displayName = displayName;
            _resultValue.endDate = endDate;
            _resultValue.id = id;
            _resultValue.instances = instances;
            _resultValue.interval = interval;
            _resultValue.name = name;
            _resultValue.numberOfOccurrences = numberOfOccurrences;
            _resultValue.principalId = principalId;
            _resultValue.principalName = principalName;
            _resultValue.principalType = principalType;
            _resultValue.reviewHistoryPeriodEndDateTime = reviewHistoryPeriodEndDateTime;
            _resultValue.reviewHistoryPeriodStartDateTime = reviewHistoryPeriodStartDateTime;
            _resultValue.scopes = scopes;
            _resultValue.startDate = startDate;
            _resultValue.status = status;
            _resultValue.type = type;
            _resultValue.userPrincipalName = userPrincipalName;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy