
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 TWait complex type.
 * 
 * <p>El siguiente fragmento de esquema especifica el contenido que se espera que haya en esta clase.
 * 
 * <pre>
 * &lt;complexType name="TWait"&gt;
 *   &lt;complexContent&gt;
 *     &lt;extension base="{com/ejie/x43s/v2/rta/xml}AWaitBasic"&gt;
 *       &lt;sequence&gt;
 *         &lt;element name="receiver" type="{com/ejie/x43s/v2/ttn/xml}TPersonIDName"/&gt;
 *         &lt;element name="isInformConsultation" type="{com/ejie/x43s/v2/ttn/xml}TBoolean"/&gt;
 *         &lt;element name="informConsultationType" type="{com/ejie/x43s/v2/ttn/xml}TInformConsultationType"/&gt;
 *         &lt;element name="status" type="{com/ejie/x43s/v2/ttn/xml}TWaitStatus"/&gt;
 *         &lt;element name="isExpired" type="{com/ejie/x43s/v2/ttn/xml}TBoolean"/&gt;
 *         &lt;element name="datConsult" type="{com/ejie/x43s/v2/rta/xml}TDatConsult"/&gt;
 *         &lt;element name="datTask" type="{com/ejie/x43s/v2/rta/xml}TTask"/&gt;
 *         &lt;element name="instanceID" type="{com/ejie/x43s/v2/ttn/xml}TID64"/&gt;
 *         &lt;element name="instanceName" type="{com/ejie/x43s/v2/ttn/xml}TTextI18N"/&gt;
 *         &lt;element name="instanceTypeID" type="{com/ejie/x43s/v2/ttn/xml}TInstanceType"/&gt;
 *         &lt;element ref="{com/ejie/x43s/v2/ttn/xml}participantID" minOccurs="0"/&gt;
 *         &lt;element name="targetParticipant" type="{com/ejie/x43s/v2/rta/xml}TParticipant" minOccurs="0"/&gt;
 *         &lt;element name="waitResultList" type="{com/ejie/x43s/v2/rta/xml}TWaitResultList"/&gt;
 *         &lt;choice minOccurs="0"&gt;
 *           &lt;element name="waitStoreDoc" type="{com/ejie/x43s/v2/rta/xml}TWaitStoreDocument"/&gt;
 *           &lt;element name="waitPayFee" type="{com/ejie/x43s/v2/rta/xml}TWaitPayFee"/&gt;
 *           &lt;element name="waitNotification" type="{com/ejie/x43s/v2/rta/xml}TWaitNotification"/&gt;
 *           &lt;element name="waitSignature" type="{com/ejie/x43s/v2/rta/xml}TWaitSignature"/&gt;
 *         &lt;/choice&gt;
 *       &lt;/sequence&gt;
 *     &lt;/extension&gt;
 *   &lt;/complexContent&gt;
 * &lt;/complexType&gt;
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "TWait", propOrder = {
    "receiver",
    "isInformConsultation",
    "informConsultationType",
    "status",
    "isExpired",
    "datConsult",
    "datTask",
    "instanceID",
    "instanceName",
    "instanceTypeID",
    "participantID",
    "targetParticipant",
    "waitResultList",
    "waitStoreDoc",
    "waitPayFee",
    "waitNotification",
    "waitSignature"
})
public class TWait
    extends AWaitBasic
{

    @XmlElement(required = true)
    protected TPersonIDName receiver;
    @XmlElement(required = true)
    @XmlSchemaType(name = "string")
    protected TBoolean isInformConsultation;
    @XmlElement(required = true)
    @XmlSchemaType(name = "string")
    protected TInformConsultationType informConsultationType;
    @XmlElement(required = true)
    @XmlSchemaType(name = "string")
    protected TWaitStatus status;
    @XmlElement(required = true)
    @XmlSchemaType(name = "string")
    protected TBoolean isExpired;
    @XmlElement(required = true)
    protected TDatConsult datConsult;
    @XmlElement(required = true)
    protected TTask datTask;
    @XmlElement(required = true)
    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
    @XmlSchemaType(name = "token")
    protected String instanceID;
    @XmlElement(required = true)
    protected TTextI18N instanceName;
    @XmlElement(required = true)
    @XmlSchemaType(name = "string")
    protected TInstanceType instanceTypeID;
    @XmlElement(namespace = "com/ejie/x43s/v2/ttn/xml")
    @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
    @XmlSchemaType(name = "token")
    protected String participantID;
    protected TParticipant targetParticipant;
    @XmlElement(required = true)
    protected TWaitResultList waitResultList;
    protected TWaitStoreDocument waitStoreDoc;
    protected TWaitPayFee waitPayFee;
    protected TWaitNotification waitNotification;
    protected TWaitSignature waitSignature;

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

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

    /**
     * Obtiene el valor de la propiedad isInformConsultation.
     * 
     * @return
     *     possible object is
     *     {@link TBoolean }
     *     
     */
    public TBoolean getIsInformConsultation() {
        return isInformConsultation;
    }

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

    /**
     * Obtiene el valor de la propiedad informConsultationType.
     * 
     * @return
     *     possible object is
     *     {@link TInformConsultationType }
     *     
     */
    public TInformConsultationType getInformConsultationType() {
        return informConsultationType;
    }

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

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

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

    /**
     * Obtiene el valor de la propiedad isExpired.
     * 
     * @return
     *     possible object is
     *     {@link TBoolean }
     *     
     */
    public TBoolean getIsExpired() {
        return isExpired;
    }

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

    /**
     * Obtiene el valor de la propiedad datConsult.
     * 
     * @return
     *     possible object is
     *     {@link TDatConsult }
     *     
     */
    public TDatConsult getDatConsult() {
        return datConsult;
    }

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

    /**
     * Obtiene el valor de la propiedad datTask.
     * 
     * @return
     *     possible object is
     *     {@link TTask }
     *     
     */
    public TTask getDatTask() {
        return datTask;
    }

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

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

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

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

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

    /**
     * Obtiene el valor de la propiedad instanceTypeID.
     * 
     * @return
     *     possible object is
     *     {@link TInstanceType }
     *     
     */
    public TInstanceType getInstanceTypeID() {
        return instanceTypeID;
    }

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

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

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

    /**
     * Obtiene el valor de la propiedad targetParticipant.
     * 
     * @return
     *     possible object is
     *     {@link TParticipant }
     *     
     */
    public TParticipant getTargetParticipant() {
        return targetParticipant;
    }

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

    /**
     * Obtiene el valor de la propiedad waitResultList.
     * 
     * @return
     *     possible object is
     *     {@link TWaitResultList }
     *     
     */
    public TWaitResultList getWaitResultList() {
        return waitResultList;
    }

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

    /**
     * Obtiene el valor de la propiedad waitStoreDoc.
     * 
     * @return
     *     possible object is
     *     {@link TWaitStoreDocument }
     *     
     */
    public TWaitStoreDocument getWaitStoreDoc() {
        return waitStoreDoc;
    }

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

    /**
     * Obtiene el valor de la propiedad waitPayFee.
     * 
     * @return
     *     possible object is
     *     {@link TWaitPayFee }
     *     
     */
    public TWaitPayFee getWaitPayFee() {
        return waitPayFee;
    }

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

    /**
     * Obtiene el valor de la propiedad waitNotification.
     * 
     * @return
     *     possible object is
     *     {@link TWaitNotification }
     *     
     */
    public TWaitNotification getWaitNotification() {
        return waitNotification;
    }

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

    /**
     * Obtiene el valor de la propiedad waitSignature.
     * 
     * @return
     *     possible object is
     *     {@link TWaitSignature }
     *     
     */
    public TWaitSignature getWaitSignature() {
        return waitSignature;
    }

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

}
