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

com.pulumi.azurenative.billing.outputs.GetBillingRoleAssignmentByDepartmentResult 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.billing.outputs;

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

@CustomType
public final class GetBillingRoleAssignmentByDepartmentResult {
    /**
     * @return The principal Id of the user who created the role assignment.
     * 
     */
    private String createdByPrincipalId;
    /**
     * @return The tenant Id of the user who created the role assignment.
     * 
     */
    private String createdByPrincipalTenantId;
    /**
     * @return The email address of the user who created the role assignment. This is supported only for billing accounts with agreement type Enterprise Agreement.
     * 
     */
    private String createdByUserEmailAddress;
    /**
     * @return The date the role assignment was created.
     * 
     */
    private String createdOn;
    /**
     * @return Resource Id.
     * 
     */
    private String id;
    /**
     * @return Resource name.
     * 
     */
    private String name;
    /**
     * @return The principal id of the user to whom the role was assigned.
     * 
     */
    private @Nullable String principalId;
    /**
     * @return The principal tenant id of the user to whom the role was assigned.
     * 
     */
    private @Nullable String principalTenantId;
    /**
     * @return The ID of the role definition.
     * 
     */
    private @Nullable String roleDefinitionId;
    /**
     * @return The scope at which the role was assigned.
     * 
     */
    private String scope;
    /**
     * @return Resource type.
     * 
     */
    private String type;
    /**
     * @return The authentication type of the user, whether Organization or MSA, of the user to whom the role was assigned. This is supported only for billing accounts with agreement type Enterprise Agreement.
     * 
     */
    private @Nullable String userAuthenticationType;
    /**
     * @return The email address of the user to whom the role was assigned. This is supported only for billing accounts with agreement type Enterprise Agreement.
     * 
     */
    private @Nullable String userEmailAddress;

    private GetBillingRoleAssignmentByDepartmentResult() {}
    /**
     * @return The principal Id of the user who created the role assignment.
     * 
     */
    public String createdByPrincipalId() {
        return this.createdByPrincipalId;
    }
    /**
     * @return The tenant Id of the user who created the role assignment.
     * 
     */
    public String createdByPrincipalTenantId() {
        return this.createdByPrincipalTenantId;
    }
    /**
     * @return The email address of the user who created the role assignment. This is supported only for billing accounts with agreement type Enterprise Agreement.
     * 
     */
    public String createdByUserEmailAddress() {
        return this.createdByUserEmailAddress;
    }
    /**
     * @return The date the role assignment was created.
     * 
     */
    public String createdOn() {
        return this.createdOn;
    }
    /**
     * @return Resource Id.
     * 
     */
    public String id() {
        return this.id;
    }
    /**
     * @return Resource name.
     * 
     */
    public String name() {
        return this.name;
    }
    /**
     * @return The principal id of the user to whom the role was assigned.
     * 
     */
    public Optional principalId() {
        return Optional.ofNullable(this.principalId);
    }
    /**
     * @return The principal tenant id of the user to whom the role was assigned.
     * 
     */
    public Optional principalTenantId() {
        return Optional.ofNullable(this.principalTenantId);
    }
    /**
     * @return The ID of the role definition.
     * 
     */
    public Optional roleDefinitionId() {
        return Optional.ofNullable(this.roleDefinitionId);
    }
    /**
     * @return The scope at which the role was assigned.
     * 
     */
    public String scope() {
        return this.scope;
    }
    /**
     * @return Resource type.
     * 
     */
    public String type() {
        return this.type;
    }
    /**
     * @return The authentication type of the user, whether Organization or MSA, of the user to whom the role was assigned. This is supported only for billing accounts with agreement type Enterprise Agreement.
     * 
     */
    public Optional userAuthenticationType() {
        return Optional.ofNullable(this.userAuthenticationType);
    }
    /**
     * @return The email address of the user to whom the role was assigned. This is supported only for billing accounts with agreement type Enterprise Agreement.
     * 
     */
    public Optional userEmailAddress() {
        return Optional.ofNullable(this.userEmailAddress);
    }

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

    public static Builder builder(GetBillingRoleAssignmentByDepartmentResult defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private String createdByPrincipalId;
        private String createdByPrincipalTenantId;
        private String createdByUserEmailAddress;
        private String createdOn;
        private String id;
        private String name;
        private @Nullable String principalId;
        private @Nullable String principalTenantId;
        private @Nullable String roleDefinitionId;
        private String scope;
        private String type;
        private @Nullable String userAuthenticationType;
        private @Nullable String userEmailAddress;
        public Builder() {}
        public Builder(GetBillingRoleAssignmentByDepartmentResult defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.createdByPrincipalId = defaults.createdByPrincipalId;
    	      this.createdByPrincipalTenantId = defaults.createdByPrincipalTenantId;
    	      this.createdByUserEmailAddress = defaults.createdByUserEmailAddress;
    	      this.createdOn = defaults.createdOn;
    	      this.id = defaults.id;
    	      this.name = defaults.name;
    	      this.principalId = defaults.principalId;
    	      this.principalTenantId = defaults.principalTenantId;
    	      this.roleDefinitionId = defaults.roleDefinitionId;
    	      this.scope = defaults.scope;
    	      this.type = defaults.type;
    	      this.userAuthenticationType = defaults.userAuthenticationType;
    	      this.userEmailAddress = defaults.userEmailAddress;
        }

        @CustomType.Setter
        public Builder createdByPrincipalId(String createdByPrincipalId) {
            if (createdByPrincipalId == null) {
              throw new MissingRequiredPropertyException("GetBillingRoleAssignmentByDepartmentResult", "createdByPrincipalId");
            }
            this.createdByPrincipalId = createdByPrincipalId;
            return this;
        }
        @CustomType.Setter
        public Builder createdByPrincipalTenantId(String createdByPrincipalTenantId) {
            if (createdByPrincipalTenantId == null) {
              throw new MissingRequiredPropertyException("GetBillingRoleAssignmentByDepartmentResult", "createdByPrincipalTenantId");
            }
            this.createdByPrincipalTenantId = createdByPrincipalTenantId;
            return this;
        }
        @CustomType.Setter
        public Builder createdByUserEmailAddress(String createdByUserEmailAddress) {
            if (createdByUserEmailAddress == null) {
              throw new MissingRequiredPropertyException("GetBillingRoleAssignmentByDepartmentResult", "createdByUserEmailAddress");
            }
            this.createdByUserEmailAddress = createdByUserEmailAddress;
            return this;
        }
        @CustomType.Setter
        public Builder createdOn(String createdOn) {
            if (createdOn == null) {
              throw new MissingRequiredPropertyException("GetBillingRoleAssignmentByDepartmentResult", "createdOn");
            }
            this.createdOn = createdOn;
            return this;
        }
        @CustomType.Setter
        public Builder id(String id) {
            if (id == null) {
              throw new MissingRequiredPropertyException("GetBillingRoleAssignmentByDepartmentResult", "id");
            }
            this.id = id;
            return this;
        }
        @CustomType.Setter
        public Builder name(String name) {
            if (name == null) {
              throw new MissingRequiredPropertyException("GetBillingRoleAssignmentByDepartmentResult", "name");
            }
            this.name = name;
            return this;
        }
        @CustomType.Setter
        public Builder principalId(@Nullable String principalId) {

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

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

            this.roleDefinitionId = roleDefinitionId;
            return this;
        }
        @CustomType.Setter
        public Builder scope(String scope) {
            if (scope == null) {
              throw new MissingRequiredPropertyException("GetBillingRoleAssignmentByDepartmentResult", "scope");
            }
            this.scope = scope;
            return this;
        }
        @CustomType.Setter
        public Builder type(String type) {
            if (type == null) {
              throw new MissingRequiredPropertyException("GetBillingRoleAssignmentByDepartmentResult", "type");
            }
            this.type = type;
            return this;
        }
        @CustomType.Setter
        public Builder userAuthenticationType(@Nullable String userAuthenticationType) {

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

            this.userEmailAddress = userEmailAddress;
            return this;
        }
        public GetBillingRoleAssignmentByDepartmentResult build() {
            final var _resultValue = new GetBillingRoleAssignmentByDepartmentResult();
            _resultValue.createdByPrincipalId = createdByPrincipalId;
            _resultValue.createdByPrincipalTenantId = createdByPrincipalTenantId;
            _resultValue.createdByUserEmailAddress = createdByUserEmailAddress;
            _resultValue.createdOn = createdOn;
            _resultValue.id = id;
            _resultValue.name = name;
            _resultValue.principalId = principalId;
            _resultValue.principalTenantId = principalTenantId;
            _resultValue.roleDefinitionId = roleDefinitionId;
            _resultValue.scope = scope;
            _resultValue.type = type;
            _resultValue.userAuthenticationType = userAuthenticationType;
            _resultValue.userEmailAddress = userEmailAddress;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy