//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.11 
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
// Any modifications to this file will be lost upon recompilation of the source schema. 
// Generated on: 2017.01.18 at 02:27:26 AM EST 
//


package gov.va.med.pharmacy.ncpdpmsgs;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;


/**
 * <p>Java class for anonymous complex type.
 * 
 * <p>The following schema fragment specifies the expected content contained within this class.
 * 
 * <pre>
 * &lt;complexType&gt;
 *   &lt;complexContent&gt;
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
 *       &lt;sequence&gt;
 *         &lt;element name="Request" type="{http://www.ncpdp.org/schema/SCRIPT}ShortRequestType" minOccurs="0"/&gt;
 *         &lt;element name="FillStatus" type="{http://www.ncpdp.org/schema/SCRIPT}FillStatusType"/&gt;
 *         &lt;element name="Pharmacy" type="{http://www.ncpdp.org/schema/SCRIPT}MandatoryAddressPharmacyType"/&gt;
 *         &lt;element name="Prescriber" type="{http://www.ncpdp.org/schema/SCRIPT}PrescriberRxFillType"/&gt;
 *         &lt;element name="Supervisor" type="{http://www.ncpdp.org/schema/SCRIPT}SupervisorRxFillType" minOccurs="0"/&gt;
 *         &lt;element name="Facility" type="{http://www.ncpdp.org/schema/SCRIPT}FaciltyType" minOccurs="0"/&gt;
 *         &lt;element name="Patient" type="{http://www.ncpdp.org/schema/SCRIPT}PatientType"/&gt;
 *         &lt;element name="MedicationPrescribed" type="{http://www.ncpdp.org/schema/SCRIPT}RxFillMedicationType" minOccurs="0"/&gt;
 *         &lt;element name="MedicationDispensed" type="{http://www.ncpdp.org/schema/SCRIPT}RxFillDispensedMedicationType" minOccurs="0"/&gt;
 *       &lt;/sequence&gt;
 *     &lt;/restriction&gt;
 *   &lt;/complexContent&gt;
 * &lt;/complexType&gt;
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
    "request",
    "fillStatus",
    "pharmacy",
    "prescriber",
    "supervisor",
    "facility",
    "patient",
    "medicationPrescribed",
    "medicationDispensed"
})
@XmlRootElement(name = "RxFill")
public class RxFill {

    @XmlElement(name = "Request")
    protected ShortRequestType request;
    @XmlElement(name = "FillStatus", required = true)
    protected FillStatusType fillStatus;
    @XmlElement(name = "Pharmacy", required = true)
    protected MandatoryAddressPharmacyType pharmacy;
    @XmlElement(name = "Prescriber", required = true)
    protected PrescriberRxFillType prescriber;
    @XmlElement(name = "Supervisor")
    protected SupervisorRxFillType supervisor;
    @XmlElement(name = "Facility")
    protected FaciltyType facility;
    @XmlElement(name = "Patient", required = true)
    protected PatientType patient;
    @XmlElement(name = "MedicationPrescribed")
    protected RxFillMedicationType medicationPrescribed;
    @XmlElement(name = "MedicationDispensed")
    protected RxFillDispensedMedicationType medicationDispensed;

    /**
     * Gets the value of the request property.
     * 
     * @return
     *     possible object is
     *     {@link ShortRequestType }
     *     
     */
    public ShortRequestType getRequest() {
        return request;
    }

    /**
     * Sets the value of the request property.
     * 
     * @param value
     *     allowed object is
     *     {@link ShortRequestType }
     *     
     */
    public void setRequest(ShortRequestType value) {
        this.request = value;
    }

    /**
     * Gets the value of the fillStatus property.
     * 
     * @return
     *     possible object is
     *     {@link FillStatusType }
     *     
     */
    public FillStatusType getFillStatus() {
        return fillStatus;
    }

    /**
     * Sets the value of the fillStatus property.
     * 
     * @param value
     *     allowed object is
     *     {@link FillStatusType }
     *     
     */
    public void setFillStatus(FillStatusType value) {
        this.fillStatus = value;
    }

    /**
     * Gets the value of the pharmacy property.
     * 
     * @return
     *     possible object is
     *     {@link MandatoryAddressPharmacyType }
     *     
     */
    public MandatoryAddressPharmacyType getPharmacy() {
        return pharmacy;
    }

    /**
     * Sets the value of the pharmacy property.
     * 
     * @param value
     *     allowed object is
     *     {@link MandatoryAddressPharmacyType }
     *     
     */
    public void setPharmacy(MandatoryAddressPharmacyType value) {
        this.pharmacy = value;
    }

    /**
     * Gets the value of the prescriber property.
     * 
     * @return
     *     possible object is
     *     {@link PrescriberRxFillType }
     *     
     */
    public PrescriberRxFillType getPrescriber() {
        return prescriber;
    }

    /**
     * Sets the value of the prescriber property.
     * 
     * @param value
     *     allowed object is
     *     {@link PrescriberRxFillType }
     *     
     */
    public void setPrescriber(PrescriberRxFillType value) {
        this.prescriber = value;
    }

    /**
     * Gets the value of the supervisor property.
     * 
     * @return
     *     possible object is
     *     {@link SupervisorRxFillType }
     *     
     */
    public SupervisorRxFillType getSupervisor() {
        return supervisor;
    }

    /**
     * Sets the value of the supervisor property.
     * 
     * @param value
     *     allowed object is
     *     {@link SupervisorRxFillType }
     *     
     */
    public void setSupervisor(SupervisorRxFillType value) {
        this.supervisor = value;
    }

    /**
     * Gets the value of the facility property.
     * 
     * @return
     *     possible object is
     *     {@link FaciltyType }
     *     
     */
    public FaciltyType getFacility() {
        return facility;
    }

    /**
     * Sets the value of the facility property.
     * 
     * @param value
     *     allowed object is
     *     {@link FaciltyType }
     *     
     */
    public void setFacility(FaciltyType value) {
        this.facility = value;
    }

    /**
     * Gets the value of the patient property.
     * 
     * @return
     *     possible object is
     *     {@link PatientType }
     *     
     */
    public PatientType getPatient() {
        return patient;
    }

    /**
     * Sets the value of the patient property.
     * 
     * @param value
     *     allowed object is
     *     {@link PatientType }
     *     
     */
    public void setPatient(PatientType value) {
        this.patient = value;
    }

    /**
     * Gets the value of the medicationPrescribed property.
     * 
     * @return
     *     possible object is
     *     {@link RxFillMedicationType }
     *     
     */
    public RxFillMedicationType getMedicationPrescribed() {
        return medicationPrescribed;
    }

    /**
     * Sets the value of the medicationPrescribed property.
     * 
     * @param value
     *     allowed object is
     *     {@link RxFillMedicationType }
     *     
     */
    public void setMedicationPrescribed(RxFillMedicationType value) {
        this.medicationPrescribed = value;
    }

    /**
     * Gets the value of the medicationDispensed property.
     * 
     * @return
     *     possible object is
     *     {@link RxFillDispensedMedicationType }
     *     
     */
    public RxFillDispensedMedicationType getMedicationDispensed() {
        return medicationDispensed;
    }

    /**
     * Sets the value of the medicationDispensed property.
     * 
     * @param value
     *     allowed object is
     *     {@link RxFillDispensedMedicationType }
     *     
     */
    public void setMedicationDispensed(RxFillDispensedMedicationType value) {
        this.medicationDispensed = value;
    }

}
