<?php
/**
 * File for class DhlApiStructBookCourier
 * @package DhlApi
 * @subpackage Structs
 * @author WsdlToPhp Team <contact@wsdltophp.com>
 * @version 20140325-01
 * @date 2015-02-05
 */
/**
 * This class stands for DhlApiStructBookCourier originally named bookCourier
 * Meta informations extracted from the WSDL
 * - from schema : {@link https://dhl24.com.pl/webapi2.html}
 * @package DhlApi
 * @subpackage Structs
 * @author WsdlToPhp Team <contact@wsdltophp.com>
 * @version 20140325-01
 * @date 2015-02-05
 */
class DhlApiStructBookCourier extends DhlApiWsdlClass
{
    /**
     * The authData
     * Meta informations extracted from the WSDL
     * - nillable : true
     * @var DhlApiStructAuthData
     */
    public $authData;
    /**
     * The pickupDate
     * Meta informations extracted from the WSDL
     * - nillable : true
     * @var string
     */
    public $pickupDate;
    /**
     * The pickupTimeFrom
     * Meta informations extracted from the WSDL
     * - nillable : true
     * @var string
     */
    public $pickupTimeFrom;
    /**
     * The pickupTimeTo
     * Meta informations extracted from the WSDL
     * - nillable : true
     * @var string
     */
    public $pickupTimeTo;
    /**
     * The additionalInfo
     * Meta informations extracted from the WSDL
     * - nillable : true
     * @var string
     */
    public $additionalInfo;
    /**
     * The shipmentIdList
     * Meta informations extracted from the WSDL
     * - nillable : true
     * @var DhlApiStructArrayOfString
     */
    public $shipmentIdList;
    /**
     * The shipmentOrderInfo
     * Meta informations extracted from the WSDL
     * - nillable : true
     * @var DhlApiStructShipmentOrderInfo
     */
    public $shipmentOrderInfo;
    /**
     * Constructor method for bookCourier
     * @see parent::__construct()
     * @param DhlApiStructAuthData $_authData
     * @param string $_pickupDate
     * @param string $_pickupTimeFrom
     * @param string $_pickupTimeTo
     * @param string $_additionalInfo
     * @param DhlApiStructArrayOfString $_shipmentIdList
     * @param DhlApiStructShipmentOrderInfo $_shipmentOrderInfo
     * @return DhlApiStructBookCourier
     */
    public function __construct($_authData = NULL,$_pickupDate = NULL,$_pickupTimeFrom = NULL,$_pickupTimeTo = NULL,$_additionalInfo = NULL,$_shipmentIdList = NULL,$_shipmentOrderInfo = NULL)
    {
        parent::__construct(array('authData'=>$_authData,'pickupDate'=>$_pickupDate,'pickupTimeFrom'=>$_pickupTimeFrom,'pickupTimeTo'=>$_pickupTimeTo,'additionalInfo'=>$_additionalInfo,'shipmentIdList'=>($_shipmentIdList instanceof DhlApiStructArrayOfString)?$_shipmentIdList:new DhlApiStructArrayOfString($_shipmentIdList),'shipmentOrderInfo'=>$_shipmentOrderInfo),false);
    }
    /**
     * Get authData value
     * @return DhlApiStructAuthData|null
     */
    public function getAuthData()
    {
        return $this->authData;
    }
    /**
     * Set authData value
     * @param DhlApiStructAuthData $_authData the authData
     * @return DhlApiStructAuthData
     */
    public function setAuthData($_authData)
    {
        return ($this->authData = $_authData);
    }
    /**
     * Get pickupDate value
     * @return string|null
     */
    public function getPickupDate()
    {
        return $this->pickupDate;
    }
    /**
     * Set pickupDate value
     * @param string $_pickupDate the pickupDate
     * @return string
     */
    public function setPickupDate($_pickupDate)
    {
        return ($this->pickupDate = $_pickupDate);
    }
    /**
     * Get pickupTimeFrom value
     * @return string|null
     */
    public function getPickupTimeFrom()
    {
        return $this->pickupTimeFrom;
    }
    /**
     * Set pickupTimeFrom value
     * @param string $_pickupTimeFrom the pickupTimeFrom
     * @return string
     */
    public function setPickupTimeFrom($_pickupTimeFrom)
    {
        return ($this->pickupTimeFrom = $_pickupTimeFrom);
    }
    /**
     * Get pickupTimeTo value
     * @return string|null
     */
    public function getPickupTimeTo()
    {
        return $this->pickupTimeTo;
    }
    /**
     * Set pickupTimeTo value
     * @param string $_pickupTimeTo the pickupTimeTo
     * @return string
     */
    public function setPickupTimeTo($_pickupTimeTo)
    {
        return ($this->pickupTimeTo = $_pickupTimeTo);
    }
    /**
     * Get additionalInfo value
     * @return string|null
     */
    public function getAdditionalInfo()
    {
        return $this->additionalInfo;
    }
    /**
     * Set additionalInfo value
     * @param string $_additionalInfo the additionalInfo
     * @return string
     */
    public function setAdditionalInfo($_additionalInfo)
    {
        return ($this->additionalInfo = $_additionalInfo);
    }
    /**
     * Get shipmentIdList value
     * @return DhlApiStructArrayOfString|null
     */
    public function getShipmentIdList()
    {
        return $this->shipmentIdList;
    }
    /**
     * Set shipmentIdList value
     * @param DhlApiStructArrayOfString $_shipmentIdList the shipmentIdList
     * @return DhlApiStructArrayOfString
     */
    public function setShipmentIdList($_shipmentIdList)
    {
        return ($this->shipmentIdList = $_shipmentIdList);
    }
    /**
     * Get shipmentOrderInfo value
     * @return DhlApiStructShipmentOrderInfo|null
     */
    public function getShipmentOrderInfo()
    {
        return $this->shipmentOrderInfo;
    }
    /**
     * Set shipmentOrderInfo value
     * @param DhlApiStructShipmentOrderInfo $_shipmentOrderInfo the shipmentOrderInfo
     * @return DhlApiStructShipmentOrderInfo
     */
    public function setShipmentOrderInfo($_shipmentOrderInfo)
    {
        return ($this->shipmentOrderInfo = $_shipmentOrderInfo);
    }
    /**
     * Method called when an object has been exported with var_export() functions
     * It allows to return an object instantiated with the values
     * @see DhlApiWsdlClass::__set_state()
     * @uses DhlApiWsdlClass::__set_state()
     * @param array $_array the exported values
     * @return DhlApiStructBookCourier
     */
    public static function __set_state(array $_array,$_className = __CLASS__)
    {
        return parent::__set_state($_array,$_className);
    }
    /**
     * Method returning the class name
     * @return string __CLASS__
     */
    public function __toString()
    {
        return __CLASS__;
    }
}
