
package com.ejie.ad74a.ws.client.platea.tareasTramitacion;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlSchemaType;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;


/**
 * <p>Clase Java para TMessage complex type.
 * 
 * <p>El siguiente fragmento de esquema especifica el contenido que se espera que haya en esta clase.
 * 
 * <pre>
 * &lt;complexType name="TMessage"&gt;
 *   &lt;complexContent&gt;
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
 *       &lt;sequence&gt;
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}taskGUID"/&gt;
 *         &lt;element name="type" type="{com/ejie/x43s/v2/rta/xml}TMessageType"/&gt;
 *         &lt;element name="messageTipology" type="{com/ejie/x43s/v2/ttn/xml}TMessageTipology"/&gt;
 *         &lt;element name="status" type="{com/ejie/x43s/v2/ttn/xml}TMessageStatus"/&gt;
 *         &lt;element name="comment" type="{http://www.w3.org/2001/XMLSchema}string"/&gt;
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}mailboxID"/&gt;
 *         &lt;element name="groupMailboxID" type="{com/ejie/x43s/v2/ttn/xml}TID64"/&gt;
 *         &lt;element name="lastMailboxID" type="{com/ejie/x43s/v2/ttn/xml}TID64"/&gt;
 *         &lt;element name="message" type="{com/ejie/x43s/v2/rta/xml}TNotificationBody"/&gt;
 *         &lt;element name="receptionDate" type="{com/ejie/x43s/v2/ttn/xml}TDateTime"/&gt;
 *         &lt;element name="assignmentDate" type="{com/ejie/x43s/v2/ttn/xml}TDateTime"/&gt;
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}procedureID"/&gt;
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}procedureName"/&gt;
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}folderID"/&gt;
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}folderNumber"/&gt;
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}folderTitle"/&gt;
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}senderID"/&gt;
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}taskID"/&gt;
 *         &lt;element name="taskType" type="{com/ejie/x43s/v2/ttn/xml}TTaskType"/&gt;
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}description"/&gt;
 *       &lt;/sequence&gt;
 *     &lt;/restriction&gt;
 *   &lt;/complexContent&gt;
 * &lt;/complexType&gt;
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "TMessage", propOrder = {
    "taskGUID",
    "type",
    "messageTipology",
    "status",
    "comment",
    "mailboxID",
    "groupMailboxID",
    "lastMailboxID",
    "message",
    "receptionDate",
    "assignmentDate",
    "procedureID",
    "procedureName",
    "folderID",
    "folderNumber",
    "folderTitle",
    "senderID",
    "taskID",
    "taskType",
    "description"
})
public class TMessage {

    @XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml", required = true)
    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
    @XmlSchemaType(name = "token")
    protected String taskGUID;
    @XmlElement(required = true)
    @XmlSchemaType(name = "string")
    protected TMessageType type;
    @XmlElement(required = true)
    @XmlSchemaType(name = "string")
    protected TMessageTipology messageTipology;
    @XmlElement(required = true)
    @XmlSchemaType(name = "string")
    protected TMessageStatus status;
    @XmlElement(required = true)
    protected String comment;
    @XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml", required = true)
    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
    @XmlSchemaType(name = "token")
    protected String mailboxID;
    @XmlElement(required = true)
    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
    @XmlSchemaType(name = "token")
    protected String groupMailboxID;
    @XmlElement(required = true)
    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
    @XmlSchemaType(name = "token")
    protected String lastMailboxID;
    @XmlElement(required = true)
    protected TNotificationBody message;
    @XmlElement(required = true)
    protected String receptionDate;
    @XmlElement(required = true)
    protected String assignmentDate;
    @XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml", required = true)
    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
    @XmlSchemaType(name = "token")
    protected String procedureID;
    @XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml", required = true)
    protected TTextI18N procedureName;
    @XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml", required = true)
    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
    @XmlSchemaType(name = "token")
    protected String folderID;
    @XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml", required = true)
    protected String folderNumber;
    @XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml", required = true)
    protected String folderTitle;
    @XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml", required = true)
    protected TPersonIDName senderID;
    @XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml", required = true)
    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
    @XmlSchemaType(name = "token")
    protected String taskID;
    @XmlElement(required = true)
    @XmlSchemaType(name = "string")
    protected TTaskType taskType;
    @XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml", required = true)
    protected TTextI18N description;

    /**
     * Obtiene el valor de la propiedad taskGUID.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getTaskGUID() {
        return taskGUID;
    }

    /**
     * Define el valor de la propiedad taskGUID.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setTaskGUID(String value) {
        this.taskGUID = value;
    }

    /**
     * Obtiene el valor de la propiedad type.
     * 
     * @return
     *     possible object is
     *     {@link TMessageType }
     *     
     */
    public TMessageType getType() {
        return type;
    }

    /**
     * Define el valor de la propiedad type.
     * 
     * @param value
     *     allowed object is
     *     {@link TMessageType }
     *     
     */
    public void setType(TMessageType value) {
        this.type = value;
    }

    /**
     * Obtiene el valor de la propiedad messageTipology.
     * 
     * @return
     *     possible object is
     *     {@link TMessageTipology }
     *     
     */
    public TMessageTipology getMessageTipology() {
        return messageTipology;
    }

    /**
     * Define el valor de la propiedad messageTipology.
     * 
     * @param value
     *     allowed object is
     *     {@link TMessageTipology }
     *     
     */
    public void setMessageTipology(TMessageTipology value) {
        this.messageTipology = value;
    }

    /**
     * Obtiene el valor de la propiedad status.
     * 
     * @return
     *     possible object is
     *     {@link TMessageStatus }
     *     
     */
    public TMessageStatus getStatus() {
        return status;
    }

    /**
     * Define el valor de la propiedad status.
     * 
     * @param value
     *     allowed object is
     *     {@link TMessageStatus }
     *     
     */
    public void setStatus(TMessageStatus value) {
        this.status = value;
    }

    /**
     * Obtiene el valor de la propiedad comment.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getComment() {
        return comment;
    }

    /**
     * Define el valor de la propiedad comment.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setComment(String value) {
        this.comment = value;
    }

    /**
     * Obtiene el valor de la propiedad mailboxID.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getMailboxID() {
        return mailboxID;
    }

    /**
     * Define el valor de la propiedad mailboxID.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setMailboxID(String value) {
        this.mailboxID = value;
    }

    /**
     * Obtiene el valor de la propiedad groupMailboxID.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getGroupMailboxID() {
        return groupMailboxID;
    }

    /**
     * Define el valor de la propiedad groupMailboxID.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setGroupMailboxID(String value) {
        this.groupMailboxID = value;
    }

    /**
     * Obtiene el valor de la propiedad lastMailboxID.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getLastMailboxID() {
        return lastMailboxID;
    }

    /**
     * Define el valor de la propiedad lastMailboxID.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setLastMailboxID(String value) {
        this.lastMailboxID = value;
    }

    /**
     * Obtiene el valor de la propiedad message.
     * 
     * @return
     *     possible object is
     *     {@link TNotificationBody }
     *     
     */
    public TNotificationBody getMessage() {
        return message;
    }

    /**
     * Define el valor de la propiedad message.
     * 
     * @param value
     *     allowed object is
     *     {@link TNotificationBody }
     *     
     */
    public void setMessage(TNotificationBody value) {
        this.message = value;
    }

    /**
     * Obtiene el valor de la propiedad receptionDate.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getReceptionDate() {
        return receptionDate;
    }

    /**
     * Define el valor de la propiedad receptionDate.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setReceptionDate(String value) {
        this.receptionDate = value;
    }

    /**
     * Obtiene el valor de la propiedad assignmentDate.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getAssignmentDate() {
        return assignmentDate;
    }

    /**
     * Define el valor de la propiedad assignmentDate.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setAssignmentDate(String value) {
        this.assignmentDate = value;
    }

    /**
     * Obtiene el valor de la propiedad procedureID.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getProcedureID() {
        return procedureID;
    }

    /**
     * Define el valor de la propiedad procedureID.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setProcedureID(String value) {
        this.procedureID = value;
    }

    /**
     * Obtiene el valor de la propiedad procedureName.
     * 
     * @return
     *     possible object is
     *     {@link TTextI18N }
     *     
     */
    public TTextI18N getProcedureName() {
        return procedureName;
    }

    /**
     * Define el valor de la propiedad procedureName.
     * 
     * @param value
     *     allowed object is
     *     {@link TTextI18N }
     *     
     */
    public void setProcedureName(TTextI18N value) {
        this.procedureName = value;
    }

    /**
     * Obtiene el valor de la propiedad folderID.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getFolderID() {
        return folderID;
    }

    /**
     * Define el valor de la propiedad folderID.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setFolderID(String value) {
        this.folderID = value;
    }

    /**
     * Obtiene el valor de la propiedad folderNumber.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getFolderNumber() {
        return folderNumber;
    }

    /**
     * Define el valor de la propiedad folderNumber.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setFolderNumber(String value) {
        this.folderNumber = value;
    }

    /**
     * Obtiene el valor de la propiedad folderTitle.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getFolderTitle() {
        return folderTitle;
    }

    /**
     * Define el valor de la propiedad folderTitle.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setFolderTitle(String value) {
        this.folderTitle = value;
    }

    /**
     * Obtiene el valor de la propiedad senderID.
     * 
     * @return
     *     possible object is
     *     {@link TPersonIDName }
     *     
     */
    public TPersonIDName getSenderID() {
        return senderID;
    }

    /**
     * Define el valor de la propiedad senderID.
     * 
     * @param value
     *     allowed object is
     *     {@link TPersonIDName }
     *     
     */
    public void setSenderID(TPersonIDName value) {
        this.senderID = value;
    }

    /**
     * Obtiene el valor de la propiedad taskID.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getTaskID() {
        return taskID;
    }

    /**
     * Define el valor de la propiedad taskID.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setTaskID(String value) {
        this.taskID = value;
    }

    /**
     * Obtiene el valor de la propiedad taskType.
     * 
     * @return
     *     possible object is
     *     {@link TTaskType }
     *     
     */
    public TTaskType getTaskType() {
        return taskType;
    }

    /**
     * Define el valor de la propiedad taskType.
     * 
     * @param value
     *     allowed object is
     *     {@link TTaskType }
     *     
     */
    public void setTaskType(TTaskType value) {
        this.taskType = value;
    }

    /**
     * Obtiene el valor de la propiedad description.
     * 
     * @return
     *     possible object is
     *     {@link TTextI18N }
     *     
     */
    public TTextI18N getDescription() {
        return description;
    }

    /**
     * Define el valor de la propiedad description.
     * 
     * @param value
     *     allowed object is
     *     {@link TTextI18N }
     *     
     */
    public void setDescription(TTextI18N value) {
        this.description = value;
    }

}
