// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.

package com.azure.resourcemanager.networkcloud.models;

import com.azure.core.annotation.Immutable;
import com.fasterxml.jackson.annotation.JsonProperty;

/** KeySetUserStatus represents the status of the key set user. */
@Immutable
public final class KeySetUserStatus {
    /*
     * The user name that will be used for access.
     */
    @JsonProperty(value = "azureUserName", access = JsonProperty.Access.WRITE_ONLY)
    private String azureUsername;

    /*
     * The indicator of whether the user is currently deployed for access.
     */
    @JsonProperty(value = "status", access = JsonProperty.Access.WRITE_ONLY)
    private BareMetalMachineKeySetUserSetupStatus status;

    /*
     * The additional information describing the current status of this user, if any available.
     */
    @JsonProperty(value = "statusMessage", access = JsonProperty.Access.WRITE_ONLY)
    private String statusMessage;

    /** Creates an instance of KeySetUserStatus class. */
    public KeySetUserStatus() {
    }

    /**
     * Get the azureUsername property: The user name that will be used for access.
     *
     * @return the azureUsername value.
     */
    public String azureUsername() {
        return this.azureUsername;
    }

    /**
     * Get the status property: The indicator of whether the user is currently deployed for access.
     *
     * @return the status value.
     */
    public BareMetalMachineKeySetUserSetupStatus status() {
        return this.status;
    }

    /**
     * Get the statusMessage property: The additional information describing the current status of this user, if any
     * available.
     *
     * @return the statusMessage value.
     */
    public String statusMessage() {
        return this.statusMessage;
    }

    /**
     * Validates the instance.
     *
     * @throws IllegalArgumentException thrown if the instance is not valid.
     */
    public void validate() {
    }
}
