<?php

namespace Sabre\RulesFromPrice\Structs;

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for ParsedData Structs
 * @subpackage Structs
 */
class ParsedData extends AbstractStructBase
{
    /**
     * The CurrencyLine
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var \Sabre\RulesFromPrice\Structs\CurrencyLine
     */
    public $CurrencyLine;
    /**
     * The FareBasisLine
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var \Sabre\RulesFromPrice\Structs\FareBasisLine
     */
    public $FareBasisLine;
    /**
     * The FareTypeLine
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var \Sabre\RulesFromPrice\Structs\FareTypeLine
     */
    public $FareTypeLine;
    /**
     * The FootnoteLine
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var \Sabre\RulesFromPrice\Structs\FootnoteLine
     */
    public $FootnoteLine;
    /**
     * The OriginDestinationLine
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var \Sabre\RulesFromPrice\Structs\OriginDestinationLine
     */
    public $OriginDestinationLine;
    /**
     * The PassengerTypeLine
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var \Sabre\RulesFromPrice\Structs\PassengerTypeLine
     */
    public $PassengerTypeLine;
    /**
     * The SITA_Line
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var \Sabre\RulesFromPrice\Structs\SITA_Line
     */
    public $SITA_Line;
    /**
     * The SystemDatesLine
     * Meta informations extracted from the WSDL
     * - minOccurs: 0
     * @var \Sabre\RulesFromPrice\Structs\SystemDatesLine
     */
    public $SystemDatesLine;
    /**
     * Constructor method for ParsedData
     * @uses ParsedData::setCurrencyLine()
     * @uses ParsedData::setFareBasisLine()
     * @uses ParsedData::setFareTypeLine()
     * @uses ParsedData::setFootnoteLine()
     * @uses ParsedData::setOriginDestinationLine()
     * @uses ParsedData::setPassengerTypeLine()
     * @uses ParsedData::setSITA_Line()
     * @uses ParsedData::setSystemDatesLine()
     * @param \Sabre\RulesFromPrice\Structs\CurrencyLine $currencyLine
     * @param \Sabre\RulesFromPrice\Structs\FareBasisLine $fareBasisLine
     * @param \Sabre\RulesFromPrice\Structs\FareTypeLine $fareTypeLine
     * @param \Sabre\RulesFromPrice\Structs\FootnoteLine $footnoteLine
     * @param \Sabre\RulesFromPrice\Structs\OriginDestinationLine $originDestinationLine
     * @param \Sabre\RulesFromPrice\Structs\PassengerTypeLine $passengerTypeLine
     * @param \Sabre\RulesFromPrice\Structs\SITA_Line $sITA_Line
     * @param \Sabre\RulesFromPrice\Structs\SystemDatesLine $systemDatesLine
     */
    public function __construct(\Sabre\RulesFromPrice\Structs\CurrencyLine $currencyLine = null, \Sabre\RulesFromPrice\Structs\FareBasisLine $fareBasisLine = null, \Sabre\RulesFromPrice\Structs\FareTypeLine $fareTypeLine = null, \Sabre\RulesFromPrice\Structs\FootnoteLine $footnoteLine = null, \Sabre\RulesFromPrice\Structs\OriginDestinationLine $originDestinationLine = null, \Sabre\RulesFromPrice\Structs\PassengerTypeLine $passengerTypeLine = null, \Sabre\RulesFromPrice\Structs\SITA_Line $sITA_Line = null, \Sabre\RulesFromPrice\Structs\SystemDatesLine $systemDatesLine = null)
    {
        $this
            ->setCurrencyLine($currencyLine)
            ->setFareBasisLine($fareBasisLine)
            ->setFareTypeLine($fareTypeLine)
            ->setFootnoteLine($footnoteLine)
            ->setOriginDestinationLine($originDestinationLine)
            ->setPassengerTypeLine($passengerTypeLine)
            ->setSITA_Line($sITA_Line)
            ->setSystemDatesLine($systemDatesLine);
    }
    /**
     * Get CurrencyLine value
     * @return \Sabre\RulesFromPrice\Structs\CurrencyLine|null
     */
    public function getCurrencyLine()
    {
        return $this->CurrencyLine;
    }
    /**
     * Set CurrencyLine value
     * @param \Sabre\RulesFromPrice\Structs\CurrencyLine $currencyLine
     * @return \Sabre\RulesFromPrice\Structs\ParsedData
     */
    public function setCurrencyLine(\Sabre\RulesFromPrice\Structs\CurrencyLine $currencyLine = null)
    {
        $this->CurrencyLine = $currencyLine;
        return $this;
    }
    /**
     * Get FareBasisLine value
     * @return \Sabre\RulesFromPrice\Structs\FareBasisLine|null
     */
    public function getFareBasisLine()
    {
        return $this->FareBasisLine;
    }
    /**
     * Set FareBasisLine value
     * @param \Sabre\RulesFromPrice\Structs\FareBasisLine $fareBasisLine
     * @return \Sabre\RulesFromPrice\Structs\ParsedData
     */
    public function setFareBasisLine(\Sabre\RulesFromPrice\Structs\FareBasisLine $fareBasisLine = null)
    {
        $this->FareBasisLine = $fareBasisLine;
        return $this;
    }
    /**
     * Get FareTypeLine value
     * @return \Sabre\RulesFromPrice\Structs\FareTypeLine|null
     */
    public function getFareTypeLine()
    {
        return $this->FareTypeLine;
    }
    /**
     * Set FareTypeLine value
     * @param \Sabre\RulesFromPrice\Structs\FareTypeLine $fareTypeLine
     * @return \Sabre\RulesFromPrice\Structs\ParsedData
     */
    public function setFareTypeLine(\Sabre\RulesFromPrice\Structs\FareTypeLine $fareTypeLine = null)
    {
        $this->FareTypeLine = $fareTypeLine;
        return $this;
    }
    /**
     * Get FootnoteLine value
     * @return \Sabre\RulesFromPrice\Structs\FootnoteLine|null
     */
    public function getFootnoteLine()
    {
        return $this->FootnoteLine;
    }
    /**
     * Set FootnoteLine value
     * @param \Sabre\RulesFromPrice\Structs\FootnoteLine $footnoteLine
     * @return \Sabre\RulesFromPrice\Structs\ParsedData
     */
    public function setFootnoteLine(\Sabre\RulesFromPrice\Structs\FootnoteLine $footnoteLine = null)
    {
        $this->FootnoteLine = $footnoteLine;
        return $this;
    }
    /**
     * Get OriginDestinationLine value
     * @return \Sabre\RulesFromPrice\Structs\OriginDestinationLine|null
     */
    public function getOriginDestinationLine()
    {
        return $this->OriginDestinationLine;
    }
    /**
     * Set OriginDestinationLine value
     * @param \Sabre\RulesFromPrice\Structs\OriginDestinationLine $originDestinationLine
     * @return \Sabre\RulesFromPrice\Structs\ParsedData
     */
    public function setOriginDestinationLine(\Sabre\RulesFromPrice\Structs\OriginDestinationLine $originDestinationLine = null)
    {
        $this->OriginDestinationLine = $originDestinationLine;
        return $this;
    }
    /**
     * Get PassengerTypeLine value
     * @return \Sabre\RulesFromPrice\Structs\PassengerTypeLine|null
     */
    public function getPassengerTypeLine()
    {
        return $this->PassengerTypeLine;
    }
    /**
     * Set PassengerTypeLine value
     * @param \Sabre\RulesFromPrice\Structs\PassengerTypeLine $passengerTypeLine
     * @return \Sabre\RulesFromPrice\Structs\ParsedData
     */
    public function setPassengerTypeLine(\Sabre\RulesFromPrice\Structs\PassengerTypeLine $passengerTypeLine = null)
    {
        $this->PassengerTypeLine = $passengerTypeLine;
        return $this;
    }
    /**
     * Get SITA_Line value
     * @return \Sabre\RulesFromPrice\Structs\SITA_Line|null
     */
    public function getSITA_Line()
    {
        return $this->SITA_Line;
    }
    /**
     * Set SITA_Line value
     * @param \Sabre\RulesFromPrice\Structs\SITA_Line $sITA_Line
     * @return \Sabre\RulesFromPrice\Structs\ParsedData
     */
    public function setSITA_Line(\Sabre\RulesFromPrice\Structs\SITA_Line $sITA_Line = null)
    {
        $this->SITA_Line = $sITA_Line;
        return $this;
    }
    /**
     * Get SystemDatesLine value
     * @return \Sabre\RulesFromPrice\Structs\SystemDatesLine|null
     */
    public function getSystemDatesLine()
    {
        return $this->SystemDatesLine;
    }
    /**
     * Set SystemDatesLine value
     * @param \Sabre\RulesFromPrice\Structs\SystemDatesLine $systemDatesLine
     * @return \Sabre\RulesFromPrice\Structs\ParsedData
     */
    public function setSystemDatesLine(\Sabre\RulesFromPrice\Structs\SystemDatesLine $systemDatesLine = null)
    {
        $this->SystemDatesLine = $systemDatesLine;
        return $this;
    }
    /**
     * Method called when an object has been exported with var_export() functions
     * It allows to return an object instantiated with the values
     * @see AbstractStructBase::__set_state()
     * @uses AbstractStructBase::__set_state()
     * @param array $array the exported values
     * @return \Sabre\RulesFromPrice\Structs\ParsedData
     */
    public static function __set_state(array $array)
    {
        return parent::__set_state($array);
    }
    /**
     * Method returning the class name
     * @return string __CLASS__
     */
    public function __toString()
    {
        return __CLASS__;
    }
}
