<?php

namespace dgsoft\StructType;

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for ReadRequests StructType
 * @package Dg
 * @subpackage Structs
 */
class DgReadRequests extends AbstractStructBase
{
    /**
     * The GlobalReservationReadRequest
     * Meta informations extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \dgsoft\StructType\DgGlobalReservationReadRequest
     */
    public $GlobalReservationReadRequest;
    /**
     * The GolfReadRequest
     * Meta informations extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \dgsoft\StructType\DgGolfReadRequest
     */
    public $GolfReadRequest;
    /**
     * The CruiseReadRequest
     * Meta informations extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \dgsoft\StructType\DgCruiseReadRequest
     */
    public $CruiseReadRequest;
    /**
     * The HotelReadRequest
     * Meta informations extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \dgsoft\StructType\DgHotelReadRequest
     */
    public $HotelReadRequest;
    /**
     * The VehicleReadRequest
     * Meta informations extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \dgsoft\StructType\DgVehicleReadRequest
     */
    public $VehicleReadRequest;
    /**
     * The AirReadRequest
     * Meta informations extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \dgsoft\StructType\DgAirReadRequest
     */
    public $AirReadRequest;
    /**
     * The PkgReadRequest
     * Meta informations extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \dgsoft\StructType\DgPkgReadRequest
     */
    public $PkgReadRequest;
    /**
     * The ReadRequest
     * Meta informations extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var \dgsoft\StructType\DgReadRequest
     */
    public $ReadRequest;
    /**
     * Constructor method for ReadRequests
     * @uses DgReadRequests::setGlobalReservationReadRequest()
     * @uses DgReadRequests::setGolfReadRequest()
     * @uses DgReadRequests::setCruiseReadRequest()
     * @uses DgReadRequests::setHotelReadRequest()
     * @uses DgReadRequests::setVehicleReadRequest()
     * @uses DgReadRequests::setAirReadRequest()
     * @uses DgReadRequests::setPkgReadRequest()
     * @uses DgReadRequests::setReadRequest()
     * @param \dgsoft\StructType\DgGlobalReservationReadRequest $globalReservationReadRequest
     * @param \dgsoft\StructType\DgGolfReadRequest $golfReadRequest
     * @param \dgsoft\StructType\DgCruiseReadRequest $cruiseReadRequest
     * @param \dgsoft\StructType\DgHotelReadRequest $hotelReadRequest
     * @param \dgsoft\StructType\DgVehicleReadRequest $vehicleReadRequest
     * @param \dgsoft\StructType\DgAirReadRequest $airReadRequest
     * @param \dgsoft\StructType\DgPkgReadRequest $pkgReadRequest
     * @param \dgsoft\StructType\DgReadRequest $readRequest
     */
    public function __construct(\dgsoft\StructType\DgGlobalReservationReadRequest $globalReservationReadRequest = null, \dgsoft\StructType\DgGolfReadRequest $golfReadRequest = null, \dgsoft\StructType\DgCruiseReadRequest $cruiseReadRequest = null, \dgsoft\StructType\DgHotelReadRequest $hotelReadRequest = null, \dgsoft\StructType\DgVehicleReadRequest $vehicleReadRequest = null, \dgsoft\StructType\DgAirReadRequest $airReadRequest = null, \dgsoft\StructType\DgPkgReadRequest $pkgReadRequest = null, \dgsoft\StructType\DgReadRequest $readRequest = null)
    {
        $this
            ->setGlobalReservationReadRequest($globalReservationReadRequest)
            ->setGolfReadRequest($golfReadRequest)
            ->setCruiseReadRequest($cruiseReadRequest)
            ->setHotelReadRequest($hotelReadRequest)
            ->setVehicleReadRequest($vehicleReadRequest)
            ->setAirReadRequest($airReadRequest)
            ->setPkgReadRequest($pkgReadRequest)
            ->setReadRequest($readRequest);
    }
    /**
     * Get GlobalReservationReadRequest value
     * @return \dgsoft\StructType\DgGlobalReservationReadRequest|null
     */
    public function getGlobalReservationReadRequest()
    {
        return $this->GlobalReservationReadRequest;
    }
    /**
     * Set GlobalReservationReadRequest value
     * @param \dgsoft\StructType\DgGlobalReservationReadRequest $globalReservationReadRequest
     * @return \dgsoft\StructType\DgReadRequests
     */
    public function setGlobalReservationReadRequest(\dgsoft\StructType\DgGlobalReservationReadRequest $globalReservationReadRequest = null)
    {
        $this->GlobalReservationReadRequest = $globalReservationReadRequest;
        return $this;
    }
    /**
     * Get GolfReadRequest value
     * @return \dgsoft\StructType\DgGolfReadRequest|null
     */
    public function getGolfReadRequest()
    {
        return $this->GolfReadRequest;
    }
    /**
     * Set GolfReadRequest value
     * @param \dgsoft\StructType\DgGolfReadRequest $golfReadRequest
     * @return \dgsoft\StructType\DgReadRequests
     */
    public function setGolfReadRequest(\dgsoft\StructType\DgGolfReadRequest $golfReadRequest = null)
    {
        $this->GolfReadRequest = $golfReadRequest;
        return $this;
    }
    /**
     * Get CruiseReadRequest value
     * @return \dgsoft\StructType\DgCruiseReadRequest|null
     */
    public function getCruiseReadRequest()
    {
        return $this->CruiseReadRequest;
    }
    /**
     * Set CruiseReadRequest value
     * @param \dgsoft\StructType\DgCruiseReadRequest $cruiseReadRequest
     * @return \dgsoft\StructType\DgReadRequests
     */
    public function setCruiseReadRequest(\dgsoft\StructType\DgCruiseReadRequest $cruiseReadRequest = null)
    {
        $this->CruiseReadRequest = $cruiseReadRequest;
        return $this;
    }
    /**
     * Get HotelReadRequest value
     * @return \dgsoft\StructType\DgHotelReadRequest|null
     */
    public function getHotelReadRequest()
    {
        return $this->HotelReadRequest;
    }
    /**
     * Set HotelReadRequest value
     * @param \dgsoft\StructType\DgHotelReadRequest $hotelReadRequest
     * @return \dgsoft\StructType\DgReadRequests
     */
    public function setHotelReadRequest(\dgsoft\StructType\DgHotelReadRequest $hotelReadRequest = null)
    {
        $this->HotelReadRequest = $hotelReadRequest;
        return $this;
    }
    /**
     * Get VehicleReadRequest value
     * @return \dgsoft\StructType\DgVehicleReadRequest|null
     */
    public function getVehicleReadRequest()
    {
        return $this->VehicleReadRequest;
    }
    /**
     * Set VehicleReadRequest value
     * @param \dgsoft\StructType\DgVehicleReadRequest $vehicleReadRequest
     * @return \dgsoft\StructType\DgReadRequests
     */
    public function setVehicleReadRequest(\dgsoft\StructType\DgVehicleReadRequest $vehicleReadRequest = null)
    {
        $this->VehicleReadRequest = $vehicleReadRequest;
        return $this;
    }
    /**
     * Get AirReadRequest value
     * @return \dgsoft\StructType\DgAirReadRequest|null
     */
    public function getAirReadRequest()
    {
        return $this->AirReadRequest;
    }
    /**
     * Set AirReadRequest value
     * @param \dgsoft\StructType\DgAirReadRequest $airReadRequest
     * @return \dgsoft\StructType\DgReadRequests
     */
    public function setAirReadRequest(\dgsoft\StructType\DgAirReadRequest $airReadRequest = null)
    {
        $this->AirReadRequest = $airReadRequest;
        return $this;
    }
    /**
     * Get PkgReadRequest value
     * @return \dgsoft\StructType\DgPkgReadRequest|null
     */
    public function getPkgReadRequest()
    {
        return $this->PkgReadRequest;
    }
    /**
     * Set PkgReadRequest value
     * @param \dgsoft\StructType\DgPkgReadRequest $pkgReadRequest
     * @return \dgsoft\StructType\DgReadRequests
     */
    public function setPkgReadRequest(\dgsoft\StructType\DgPkgReadRequest $pkgReadRequest = null)
    {
        $this->PkgReadRequest = $pkgReadRequest;
        return $this;
    }
    /**
     * Get ReadRequest value
     * @return \dgsoft\StructType\DgReadRequest|null
     */
    public function getReadRequest()
    {
        return $this->ReadRequest;
    }
    /**
     * Set ReadRequest value
     * @param \dgsoft\StructType\DgReadRequest $readRequest
     * @return \dgsoft\StructType\DgReadRequests
     */
    public function setReadRequest(\dgsoft\StructType\DgReadRequest $readRequest = null)
    {
        $this->ReadRequest = $readRequest;
        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 \dgsoft\StructType\DgReadRequests
     */
    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__;
    }
}
