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

package com.azure.communication.callautomation.implementation.models;

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

/** The ResultInformation model. */
@Fluent
public final class ResultInformation {
    /*
     * Code of the current result. This can be helpful to Call Automation team
     * to troubleshoot the issue if this result was unexpected.
     */
    @JsonProperty(value = "code")
    private Integer code;

    /*
     * Subcode of the current result. This can be helpful to Call Automation
     * team to troubleshoot the issue if this result was unexpected.
     */
    @JsonProperty(value = "subCode")
    private Integer subCode;

    /*
     * Detail message that describes the current result.
     */
    @JsonProperty(value = "message")
    private String message;

    /**
     * Get the code property: Code of the current result. This can be helpful to Call Automation team to troubleshoot
     * the issue if this result was unexpected.
     *
     * @return the code value.
     */
    public Integer getCode() {
        return this.code;
    }

    /**
     * Set the code property: Code of the current result. This can be helpful to Call Automation team to troubleshoot
     * the issue if this result was unexpected.
     *
     * @param code the code value to set.
     * @return the ResultInformation object itself.
     */
    public ResultInformation setCode(Integer code) {
        this.code = code;
        return this;
    }

    /**
     * Get the subCode property: Subcode of the current result. This can be helpful to Call Automation team to
     * troubleshoot the issue if this result was unexpected.
     *
     * @return the subCode value.
     */
    public Integer getSubCode() {
        return this.subCode;
    }

    /**
     * Set the subCode property: Subcode of the current result. This can be helpful to Call Automation team to
     * troubleshoot the issue if this result was unexpected.
     *
     * @param subCode the subCode value to set.
     * @return the ResultInformation object itself.
     */
    public ResultInformation setSubCode(Integer subCode) {
        this.subCode = subCode;
        return this;
    }

    /**
     * Get the message property: Detail message that describes the current result.
     *
     * @return the message value.
     */
    public String getMessage() {
        return this.message;
    }

    /**
     * Set the message property: Detail message that describes the current result.
     *
     * @param message the message value to set.
     * @return the ResultInformation object itself.
     */
    public ResultInformation setMessage(String message) {
        this.message = message;
        return this;
    }
}
