
package com.amadeus.travelManagement.amadeus.xml._2010._06.travel_ordercancelrq_v1;

import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;


/**
 * Information related to parties relevant to the contents of this message.
 * 
 * &lt;p&gt;Java class for ParticipantType complex type.
 * 
 * &lt;p&gt;The following schema fragment specifies the expected content contained within this class.
 * 
 * &lt;pre&gt;
 * &amp;lt;complexType name="ParticipantType"&amp;gt;
 *   &amp;lt;complexContent&amp;gt;
 *     &amp;lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&amp;gt;
 *       &amp;lt;sequence&amp;gt;
 *         &amp;lt;element name="Aggregator" type="{http://xml.amadeus.com/2010/06/Travel_OrderCancelRQ_v1}AggregatorType" maxOccurs="unbounded" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="Corporation" type="{http://xml.amadeus.com/2010/06/Travel_OrderCancelRQ_v1}CorporationType" maxOccurs="unbounded" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="EnabledSystem" type="{http://xml.amadeus.com/2010/06/Travel_OrderCancelRQ_v1}EnabledSystemType" maxOccurs="unbounded" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="MarketingCarrier" type="{http://xml.amadeus.com/2010/06/Travel_OrderCancelRQ_v1}CarrierType" maxOccurs="unbounded" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="OperatingCarrier" type="{http://xml.amadeus.com/2010/06/Travel_OrderCancelRQ_v1}CarrierType" maxOccurs="unbounded" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="ORA" type="{http://xml.amadeus.com/2010/06/Travel_OrderCancelRQ_v1}CarrierType" maxOccurs="unbounded" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="POA" type="{http://xml.amadeus.com/2010/06/Travel_OrderCancelRQ_v1}CarrierType" maxOccurs="unbounded" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="RetailPartner" type="{http://xml.amadeus.com/2010/06/Travel_OrderCancelRQ_v1}RetailPartnerType" maxOccurs="unbounded" minOccurs="0"/&amp;gt;
 *         &amp;lt;element name="TravelAgency" type="{http://xml.amadeus.com/2010/06/Travel_OrderCancelRQ_v1}TravelAgencyType" maxOccurs="unbounded" minOccurs="0"/&amp;gt;
 *       &amp;lt;/sequence&amp;gt;
 *     &amp;lt;/restriction&amp;gt;
 *   &amp;lt;/complexContent&amp;gt;
 * &amp;lt;/complexType&amp;gt;
 * &lt;/pre&gt;
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "ParticipantType", propOrder = {
    "aggregator",
    "corporation",
    "enabledSystem",
    "marketingCarrier",
    "operatingCarrier",
    "ora",
    "poa",
    "retailPartner",
    "travelAgency"
})
public class ParticipantType {

    @XmlElement(name = "Aggregator")
    protected List<AggregatorType> aggregator;
    @XmlElement(name = "Corporation")
    protected List<CorporationType> corporation;
    @XmlElement(name = "EnabledSystem")
    protected List<EnabledSystemType> enabledSystem;
    @XmlElement(name = "MarketingCarrier")
    protected List<CarrierType> marketingCarrier;
    @XmlElement(name = "OperatingCarrier")
    protected List<CarrierType> operatingCarrier;
    @XmlElement(name = "ORA")
    protected List<CarrierType> ora;
    @XmlElement(name = "POA")
    protected List<CarrierType> poa;
    @XmlElement(name = "RetailPartner")
    protected List<RetailPartnerType> retailPartner;
    @XmlElement(name = "TravelAgency")
    protected List<TravelAgencyType> travelAgency;

    /**
     * Gets the value of the aggregator property.
     * 
     * &lt;p&gt;
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a &lt;CODE&gt;set&lt;/CODE&gt; method for the aggregator property.
     * 
     * &lt;p&gt;
     * For example, to add a new item, do as follows:
     * &lt;pre&gt;
     *    getAggregator().add(newItem);
     * &lt;/pre&gt;
     * 
     * 
     * &lt;p&gt;
     * Objects of the following type(s) are allowed in the list
     * {@link AggregatorType }
     * 
     * 
     */
    public List<AggregatorType> getAggregator() {
        if (aggregator == null) {
            aggregator = new ArrayList<AggregatorType>();
        }
        return this.aggregator;
    }

    /**
     * Gets the value of the corporation property.
     * 
     * &lt;p&gt;
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a &lt;CODE&gt;set&lt;/CODE&gt; method for the corporation property.
     * 
     * &lt;p&gt;
     * For example, to add a new item, do as follows:
     * &lt;pre&gt;
     *    getCorporation().add(newItem);
     * &lt;/pre&gt;
     * 
     * 
     * &lt;p&gt;
     * Objects of the following type(s) are allowed in the list
     * {@link CorporationType }
     * 
     * 
     */
    public List<CorporationType> getCorporation() {
        if (corporation == null) {
            corporation = new ArrayList<CorporationType>();
        }
        return this.corporation;
    }

    /**
     * Gets the value of the enabledSystem property.
     * 
     * &lt;p&gt;
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a &lt;CODE&gt;set&lt;/CODE&gt; method for the enabledSystem property.
     * 
     * &lt;p&gt;
     * For example, to add a new item, do as follows:
     * &lt;pre&gt;
     *    getEnabledSystem().add(newItem);
     * &lt;/pre&gt;
     * 
     * 
     * &lt;p&gt;
     * Objects of the following type(s) are allowed in the list
     * {@link EnabledSystemType }
     * 
     * 
     */
    public List<EnabledSystemType> getEnabledSystem() {
        if (enabledSystem == null) {
            enabledSystem = new ArrayList<EnabledSystemType>();
        }
        return this.enabledSystem;
    }

    /**
     * Gets the value of the marketingCarrier property.
     * 
     * &lt;p&gt;
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a &lt;CODE&gt;set&lt;/CODE&gt; method for the marketingCarrier property.
     * 
     * &lt;p&gt;
     * For example, to add a new item, do as follows:
     * &lt;pre&gt;
     *    getMarketingCarrier().add(newItem);
     * &lt;/pre&gt;
     * 
     * 
     * &lt;p&gt;
     * Objects of the following type(s) are allowed in the list
     * {@link CarrierType }
     * 
     * 
     */
    public List<CarrierType> getMarketingCarrier() {
        if (marketingCarrier == null) {
            marketingCarrier = new ArrayList<CarrierType>();
        }
        return this.marketingCarrier;
    }

    /**
     * Gets the value of the operatingCarrier property.
     * 
     * &lt;p&gt;
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a &lt;CODE&gt;set&lt;/CODE&gt; method for the operatingCarrier property.
     * 
     * &lt;p&gt;
     * For example, to add a new item, do as follows:
     * &lt;pre&gt;
     *    getOperatingCarrier().add(newItem);
     * &lt;/pre&gt;
     * 
     * 
     * &lt;p&gt;
     * Objects of the following type(s) are allowed in the list
     * {@link CarrierType }
     * 
     * 
     */
    public List<CarrierType> getOperatingCarrier() {
        if (operatingCarrier == null) {
            operatingCarrier = new ArrayList<CarrierType>();
        }
        return this.operatingCarrier;
    }

    /**
     * Gets the value of the ora property.
     * 
     * &lt;p&gt;
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a &lt;CODE&gt;set&lt;/CODE&gt; method for the ora property.
     * 
     * &lt;p&gt;
     * For example, to add a new item, do as follows:
     * &lt;pre&gt;
     *    getORA().add(newItem);
     * &lt;/pre&gt;
     * 
     * 
     * &lt;p&gt;
     * Objects of the following type(s) are allowed in the list
     * {@link CarrierType }
     * 
     * 
     */
    public List<CarrierType> getORA() {
        if (ora == null) {
            ora = new ArrayList<CarrierType>();
        }
        return this.ora;
    }

    /**
     * Gets the value of the poa property.
     * 
     * &lt;p&gt;
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a &lt;CODE&gt;set&lt;/CODE&gt; method for the poa property.
     * 
     * &lt;p&gt;
     * For example, to add a new item, do as follows:
     * &lt;pre&gt;
     *    getPOA().add(newItem);
     * &lt;/pre&gt;
     * 
     * 
     * &lt;p&gt;
     * Objects of the following type(s) are allowed in the list
     * {@link CarrierType }
     * 
     * 
     */
    public List<CarrierType> getPOA() {
        if (poa == null) {
            poa = new ArrayList<CarrierType>();
        }
        return this.poa;
    }

    /**
     * Gets the value of the retailPartner property.
     * 
     * &lt;p&gt;
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a &lt;CODE&gt;set&lt;/CODE&gt; method for the retailPartner property.
     * 
     * &lt;p&gt;
     * For example, to add a new item, do as follows:
     * &lt;pre&gt;
     *    getRetailPartner().add(newItem);
     * &lt;/pre&gt;
     * 
     * 
     * &lt;p&gt;
     * Objects of the following type(s) are allowed in the list
     * {@link RetailPartnerType }
     * 
     * 
     */
    public List<RetailPartnerType> getRetailPartner() {
        if (retailPartner == null) {
            retailPartner = new ArrayList<RetailPartnerType>();
        }
        return this.retailPartner;
    }

    /**
     * Gets the value of the travelAgency property.
     * 
     * &lt;p&gt;
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a &lt;CODE&gt;set&lt;/CODE&gt; method for the travelAgency property.
     * 
     * &lt;p&gt;
     * For example, to add a new item, do as follows:
     * &lt;pre&gt;
     *    getTravelAgency().add(newItem);
     * &lt;/pre&gt;
     * 
     * 
     * &lt;p&gt;
     * Objects of the following type(s) are allowed in the list
     * {@link TravelAgencyType }
     * 
     * 
     */
    public List<TravelAgencyType> getTravelAgency() {
        if (travelAgency == null) {
            travelAgency = new ArrayList<TravelAgencyType>();
        }
        return this.travelAgency;
    }

}
