<?php

namespace StructType;

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for VehicleTemperatureInfo StructType
 * @subpackage Structs
 */
class VehicleTemperatureInfo extends AbstractStructBase
{
    /**
     * The Temperature1
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 1
     * - nillable: true
     * @var int
     */
    public $Temperature1;
    /**
     * The Temperature2
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 1
     * - nillable: true
     * @var int
     */
    public $Temperature2;
    /**
     * The Temperature3
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 1
     * - nillable: true
     * @var int
     */
    public $Temperature3;
    /**
     * The Temperature4
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 1
     * - nillable: true
     * @var int
     */
    public $Temperature4;
    /**
     * The Temperature5
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 1
     * - nillable: true
     * @var int
     */
    public $Temperature5;
    /**
     * The Temperature6
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 1
     * - nillable: true
     * @var int
     */
    public $Temperature6;
    /**
     * The Temperature1DateTime
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 1
     * - nillable: true
     * @var string
     */
    public $Temperature1DateTime;
    /**
     * The Temperature2DateTime
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 1
     * - nillable: true
     * @var string
     */
    public $Temperature2DateTime;
    /**
     * The Temperature3DateTime
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 1
     * - nillable: true
     * @var string
     */
    public $Temperature3DateTime;
    /**
     * The Temperature4DateTime
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 1
     * - nillable: true
     * @var string
     */
    public $Temperature4DateTime;
    /**
     * The Temperature5DateTime
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 1
     * - nillable: true
     * @var string
     */
    public $Temperature5DateTime;
    /**
     * The Temperature6DateTime
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 1
     * - nillable: true
     * @var string
     */
    public $Temperature6DateTime;
    /**
     * Constructor method for VehicleTemperatureInfo
     * @uses VehicleTemperatureInfo::setTemperature1()
     * @uses VehicleTemperatureInfo::setTemperature2()
     * @uses VehicleTemperatureInfo::setTemperature3()
     * @uses VehicleTemperatureInfo::setTemperature4()
     * @uses VehicleTemperatureInfo::setTemperature5()
     * @uses VehicleTemperatureInfo::setTemperature6()
     * @uses VehicleTemperatureInfo::setTemperature1DateTime()
     * @uses VehicleTemperatureInfo::setTemperature2DateTime()
     * @uses VehicleTemperatureInfo::setTemperature3DateTime()
     * @uses VehicleTemperatureInfo::setTemperature4DateTime()
     * @uses VehicleTemperatureInfo::setTemperature5DateTime()
     * @uses VehicleTemperatureInfo::setTemperature6DateTime()
     * @param int $temperature1
     * @param int $temperature2
     * @param int $temperature3
     * @param int $temperature4
     * @param int $temperature5
     * @param int $temperature6
     * @param string $temperature1DateTime
     * @param string $temperature2DateTime
     * @param string $temperature3DateTime
     * @param string $temperature4DateTime
     * @param string $temperature5DateTime
     * @param string $temperature6DateTime
     */
    public function __construct($temperature1 = null, $temperature2 = null, $temperature3 = null, $temperature4 = null, $temperature5 = null, $temperature6 = null, $temperature1DateTime = null, $temperature2DateTime = null, $temperature3DateTime = null, $temperature4DateTime = null, $temperature5DateTime = null, $temperature6DateTime = null)
    {
        $this
            ->setTemperature1($temperature1)
            ->setTemperature2($temperature2)
            ->setTemperature3($temperature3)
            ->setTemperature4($temperature4)
            ->setTemperature5($temperature5)
            ->setTemperature6($temperature6)
            ->setTemperature1DateTime($temperature1DateTime)
            ->setTemperature2DateTime($temperature2DateTime)
            ->setTemperature3DateTime($temperature3DateTime)
            ->setTemperature4DateTime($temperature4DateTime)
            ->setTemperature5DateTime($temperature5DateTime)
            ->setTemperature6DateTime($temperature6DateTime);
    }
    /**
     * Get Temperature1 value
     * @return int
     */
    public function getTemperature1()
    {
        return $this->Temperature1;
    }
    /**
     * Set Temperature1 value
     * @param int $temperature1
     * @return \StructType\VehicleTemperatureInfo
     */
    public function setTemperature1($temperature1 = null)
    {
        // validation for constraint: int
        if (!is_null($temperature1) && !(is_int($temperature1) || ctype_digit($temperature1))) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide an integer value, %s given', var_export($temperature1, true), gettype($temperature1)), __LINE__);
        }
        $this->Temperature1 = $temperature1;
        return $this;
    }
    /**
     * Get Temperature2 value
     * @return int
     */
    public function getTemperature2()
    {
        return $this->Temperature2;
    }
    /**
     * Set Temperature2 value
     * @param int $temperature2
     * @return \StructType\VehicleTemperatureInfo
     */
    public function setTemperature2($temperature2 = null)
    {
        // validation for constraint: int
        if (!is_null($temperature2) && !(is_int($temperature2) || ctype_digit($temperature2))) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide an integer value, %s given', var_export($temperature2, true), gettype($temperature2)), __LINE__);
        }
        $this->Temperature2 = $temperature2;
        return $this;
    }
    /**
     * Get Temperature3 value
     * @return int
     */
    public function getTemperature3()
    {
        return $this->Temperature3;
    }
    /**
     * Set Temperature3 value
     * @param int $temperature3
     * @return \StructType\VehicleTemperatureInfo
     */
    public function setTemperature3($temperature3 = null)
    {
        // validation for constraint: int
        if (!is_null($temperature3) && !(is_int($temperature3) || ctype_digit($temperature3))) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide an integer value, %s given', var_export($temperature3, true), gettype($temperature3)), __LINE__);
        }
        $this->Temperature3 = $temperature3;
        return $this;
    }
    /**
     * Get Temperature4 value
     * @return int
     */
    public function getTemperature4()
    {
        return $this->Temperature4;
    }
    /**
     * Set Temperature4 value
     * @param int $temperature4
     * @return \StructType\VehicleTemperatureInfo
     */
    public function setTemperature4($temperature4 = null)
    {
        // validation for constraint: int
        if (!is_null($temperature4) && !(is_int($temperature4) || ctype_digit($temperature4))) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide an integer value, %s given', var_export($temperature4, true), gettype($temperature4)), __LINE__);
        }
        $this->Temperature4 = $temperature4;
        return $this;
    }
    /**
     * Get Temperature5 value
     * @return int
     */
    public function getTemperature5()
    {
        return $this->Temperature5;
    }
    /**
     * Set Temperature5 value
     * @param int $temperature5
     * @return \StructType\VehicleTemperatureInfo
     */
    public function setTemperature5($temperature5 = null)
    {
        // validation for constraint: int
        if (!is_null($temperature5) && !(is_int($temperature5) || ctype_digit($temperature5))) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide an integer value, %s given', var_export($temperature5, true), gettype($temperature5)), __LINE__);
        }
        $this->Temperature5 = $temperature5;
        return $this;
    }
    /**
     * Get Temperature6 value
     * @return int
     */
    public function getTemperature6()
    {
        return $this->Temperature6;
    }
    /**
     * Set Temperature6 value
     * @param int $temperature6
     * @return \StructType\VehicleTemperatureInfo
     */
    public function setTemperature6($temperature6 = null)
    {
        // validation for constraint: int
        if (!is_null($temperature6) && !(is_int($temperature6) || ctype_digit($temperature6))) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide an integer value, %s given', var_export($temperature6, true), gettype($temperature6)), __LINE__);
        }
        $this->Temperature6 = $temperature6;
        return $this;
    }
    /**
     * Get Temperature1DateTime value
     * @return string
     */
    public function getTemperature1DateTime()
    {
        return $this->Temperature1DateTime;
    }
    /**
     * Set Temperature1DateTime value
     * @param string $temperature1DateTime
     * @return \StructType\VehicleTemperatureInfo
     */
    public function setTemperature1DateTime($temperature1DateTime = null)
    {
        // validation for constraint: string
        if (!is_null($temperature1DateTime) && !is_string($temperature1DateTime)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($temperature1DateTime, true), gettype($temperature1DateTime)), __LINE__);
        }
        $this->Temperature1DateTime = $temperature1DateTime;
        return $this;
    }
    /**
     * Get Temperature2DateTime value
     * @return string
     */
    public function getTemperature2DateTime()
    {
        return $this->Temperature2DateTime;
    }
    /**
     * Set Temperature2DateTime value
     * @param string $temperature2DateTime
     * @return \StructType\VehicleTemperatureInfo
     */
    public function setTemperature2DateTime($temperature2DateTime = null)
    {
        // validation for constraint: string
        if (!is_null($temperature2DateTime) && !is_string($temperature2DateTime)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($temperature2DateTime, true), gettype($temperature2DateTime)), __LINE__);
        }
        $this->Temperature2DateTime = $temperature2DateTime;
        return $this;
    }
    /**
     * Get Temperature3DateTime value
     * @return string
     */
    public function getTemperature3DateTime()
    {
        return $this->Temperature3DateTime;
    }
    /**
     * Set Temperature3DateTime value
     * @param string $temperature3DateTime
     * @return \StructType\VehicleTemperatureInfo
     */
    public function setTemperature3DateTime($temperature3DateTime = null)
    {
        // validation for constraint: string
        if (!is_null($temperature3DateTime) && !is_string($temperature3DateTime)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($temperature3DateTime, true), gettype($temperature3DateTime)), __LINE__);
        }
        $this->Temperature3DateTime = $temperature3DateTime;
        return $this;
    }
    /**
     * Get Temperature4DateTime value
     * @return string
     */
    public function getTemperature4DateTime()
    {
        return $this->Temperature4DateTime;
    }
    /**
     * Set Temperature4DateTime value
     * @param string $temperature4DateTime
     * @return \StructType\VehicleTemperatureInfo
     */
    public function setTemperature4DateTime($temperature4DateTime = null)
    {
        // validation for constraint: string
        if (!is_null($temperature4DateTime) && !is_string($temperature4DateTime)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($temperature4DateTime, true), gettype($temperature4DateTime)), __LINE__);
        }
        $this->Temperature4DateTime = $temperature4DateTime;
        return $this;
    }
    /**
     * Get Temperature5DateTime value
     * @return string
     */
    public function getTemperature5DateTime()
    {
        return $this->Temperature5DateTime;
    }
    /**
     * Set Temperature5DateTime value
     * @param string $temperature5DateTime
     * @return \StructType\VehicleTemperatureInfo
     */
    public function setTemperature5DateTime($temperature5DateTime = null)
    {
        // validation for constraint: string
        if (!is_null($temperature5DateTime) && !is_string($temperature5DateTime)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($temperature5DateTime, true), gettype($temperature5DateTime)), __LINE__);
        }
        $this->Temperature5DateTime = $temperature5DateTime;
        return $this;
    }
    /**
     * Get Temperature6DateTime value
     * @return string
     */
    public function getTemperature6DateTime()
    {
        return $this->Temperature6DateTime;
    }
    /**
     * Set Temperature6DateTime value
     * @param string $temperature6DateTime
     * @return \StructType\VehicleTemperatureInfo
     */
    public function setTemperature6DateTime($temperature6DateTime = null)
    {
        // validation for constraint: string
        if (!is_null($temperature6DateTime) && !is_string($temperature6DateTime)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($temperature6DateTime, true), gettype($temperature6DateTime)), __LINE__);
        }
        $this->Temperature6DateTime = $temperature6DateTime;
        return $this;
    }
}
