package org.wso2.carbon.device.mgt.ios.dep.beans;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;

/**
 * This class represents the Apple DEP account information.
 * The variables in this class are not camel case.
 * Because JSON object returned as a response from Apple DEP portal is directly mapped to this
 * class using Gson. So the variable names are mapped as keys for the key value pairs in the
 * JSON object.
 * The variables are declared as per the documentation of Apple DEP.
 */
@ApiModel(value = "Account", description = "This class carries information related to " +
                                           "Apple DEP account.")
public class Account implements Serializable {

    private static final long serialVersionUID = 4678923412090125194L;

    @ApiModelProperty(
            name = "name",
            value = "An identifiable name for the MDM server.",
            required = true)
    private String server_name;

    @ApiModelProperty(
            name = "server_uuid",
            value = "A system-generated server identifier.",
            required = true)
    private String server_uuid;

    @ApiModelProperty(
            name = "facilitator_id",
            value = "Apple ID of the person who generated the current tokens that are in use.",
            required = true)
    private String facilitator_id;

    @ApiModelProperty(
            name = "org_name",
            value = "The organization name.",
            required = true)
    private String org_name;

    @ApiModelProperty(
            name = "org_phone",
            value = "The organization phone.",
            required = true)
    private String org_phone;

    @ApiModelProperty(
            name = "org_email",
            value = "The organization email address.",
            required = true)
    private String org_email;

    @ApiModelProperty(
            name = "org_address",
            value = "The organization address.",
            required = true)
    private String org_address;

    public String getServerName() {
        return server_name;
    }

    public void setServerName(String server_name) {
        this.server_name = server_name;
    }

    public String getServerUUID() {
        return server_uuid;
    }

    public void setServerUUID(String server_uuid) {
        this.server_uuid = server_uuid;
    }

    public String getFacilitator_id() {
        return facilitator_id;
    }

    public void setFacilitator_id(String facilitator_id) {
        this.facilitator_id = facilitator_id;
    }

    public String getOrg_name() {
        return org_name;
    }

    public void setOrg_name(String org_name) {
        this.org_name = org_name;
    }

    public String getOrg_phone() {
        return org_phone;
    }

    public void setOrg_phone(String org_phone) {
        this.org_phone = org_phone;
    }

    public String getOrg_email() {
        return org_email;
    }

    public void setOrg_email(String org_email) {
        this.org_email = org_email;
    }

    public String getOrg_address() {
        return org_address;
    }

    public void setOrg_address(String org_address) {
        this.org_address = org_address;
    }
}
