<?php

namespace StructType;

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for VehicleEcoDiagnostics StructType
 * @subpackage Structs
 */
class VehicleEcoDiagnostics extends AbstractStructBase
{
    /**
     * The EcoTripVersion
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $EcoTripVersion;
    /**
     * The EcoTripActivationStatus
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $EcoTripActivationStatus;
    /**
     * The EcoTripExtVersionInfo
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $EcoTripExtVersionInfo;
    /**
     * The EcoTripExtVersionInfoLength
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $EcoTripExtVersionInfoLength;
    /**
     * The EcoTripCanSupport
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $EcoTripCanSupport;
    /**
     * The EcoTripTimerInterval
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $EcoTripTimerInterval;
    /**
     * The EcoTripScoringType
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $EcoTripScoringType;
    /**
     * The EcoTripGearCal
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $EcoTripGearCal;
    /**
     * The EcoTripComportNumber
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $EcoTripComportNumber;
    /**
     * The EcoTripDeviceType
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $EcoTripDeviceType;
    /**
     * The EcoTripHarshBrakeThreshold
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $EcoTripHarshBrakeThreshold;
    /**
     * The EcoTripIdleTimeThreshold
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $EcoTripIdleTimeThreshold;
    /**
     * The EcoTripRpmThreshold
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $EcoTripRpmThreshold;
    /**
     * The EcoTripSpeedThreshold
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $EcoTripSpeedThreshold;
    /**
     * The EcoTripHarshAccelerationThreshold
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $EcoTripHarshAccelerationThreshold;
    /**
     * The EcoTripTorqueThreshold
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $EcoTripTorqueThreshold;
    /**
     * The EcoTripFuelThreshold
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $EcoTripFuelThreshold;
    /**
     * The EcoTripLowRpmThreshold
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $EcoTripLowRpmThreshold;
    /**
     * The EcoTripHighRpmThreshold
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $EcoTripHighRpmThreshold;
    /**
     * The EcoTripLogInterval
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $EcoTripLogInterval;
    /**
     * Constructor method for VehicleEcoDiagnostics
     * @uses VehicleEcoDiagnostics::setEcoTripVersion()
     * @uses VehicleEcoDiagnostics::setEcoTripActivationStatus()
     * @uses VehicleEcoDiagnostics::setEcoTripExtVersionInfo()
     * @uses VehicleEcoDiagnostics::setEcoTripExtVersionInfoLength()
     * @uses VehicleEcoDiagnostics::setEcoTripCanSupport()
     * @uses VehicleEcoDiagnostics::setEcoTripTimerInterval()
     * @uses VehicleEcoDiagnostics::setEcoTripScoringType()
     * @uses VehicleEcoDiagnostics::setEcoTripGearCal()
     * @uses VehicleEcoDiagnostics::setEcoTripComportNumber()
     * @uses VehicleEcoDiagnostics::setEcoTripDeviceType()
     * @uses VehicleEcoDiagnostics::setEcoTripHarshBrakeThreshold()
     * @uses VehicleEcoDiagnostics::setEcoTripIdleTimeThreshold()
     * @uses VehicleEcoDiagnostics::setEcoTripRpmThreshold()
     * @uses VehicleEcoDiagnostics::setEcoTripSpeedThreshold()
     * @uses VehicleEcoDiagnostics::setEcoTripHarshAccelerationThreshold()
     * @uses VehicleEcoDiagnostics::setEcoTripTorqueThreshold()
     * @uses VehicleEcoDiagnostics::setEcoTripFuelThreshold()
     * @uses VehicleEcoDiagnostics::setEcoTripLowRpmThreshold()
     * @uses VehicleEcoDiagnostics::setEcoTripHighRpmThreshold()
     * @uses VehicleEcoDiagnostics::setEcoTripLogInterval()
     * @param string $ecoTripVersion
     * @param string $ecoTripActivationStatus
     * @param string $ecoTripExtVersionInfo
     * @param string $ecoTripExtVersionInfoLength
     * @param string $ecoTripCanSupport
     * @param string $ecoTripTimerInterval
     * @param string $ecoTripScoringType
     * @param string $ecoTripGearCal
     * @param string $ecoTripComportNumber
     * @param string $ecoTripDeviceType
     * @param string $ecoTripHarshBrakeThreshold
     * @param string $ecoTripIdleTimeThreshold
     * @param string $ecoTripRpmThreshold
     * @param string $ecoTripSpeedThreshold
     * @param string $ecoTripHarshAccelerationThreshold
     * @param string $ecoTripTorqueThreshold
     * @param string $ecoTripFuelThreshold
     * @param string $ecoTripLowRpmThreshold
     * @param string $ecoTripHighRpmThreshold
     * @param string $ecoTripLogInterval
     */
    public function __construct($ecoTripVersion = null, $ecoTripActivationStatus = null, $ecoTripExtVersionInfo = null, $ecoTripExtVersionInfoLength = null, $ecoTripCanSupport = null, $ecoTripTimerInterval = null, $ecoTripScoringType = null, $ecoTripGearCal = null, $ecoTripComportNumber = null, $ecoTripDeviceType = null, $ecoTripHarshBrakeThreshold = null, $ecoTripIdleTimeThreshold = null, $ecoTripRpmThreshold = null, $ecoTripSpeedThreshold = null, $ecoTripHarshAccelerationThreshold = null, $ecoTripTorqueThreshold = null, $ecoTripFuelThreshold = null, $ecoTripLowRpmThreshold = null, $ecoTripHighRpmThreshold = null, $ecoTripLogInterval = null)
    {
        $this
            ->setEcoTripVersion($ecoTripVersion)
            ->setEcoTripActivationStatus($ecoTripActivationStatus)
            ->setEcoTripExtVersionInfo($ecoTripExtVersionInfo)
            ->setEcoTripExtVersionInfoLength($ecoTripExtVersionInfoLength)
            ->setEcoTripCanSupport($ecoTripCanSupport)
            ->setEcoTripTimerInterval($ecoTripTimerInterval)
            ->setEcoTripScoringType($ecoTripScoringType)
            ->setEcoTripGearCal($ecoTripGearCal)
            ->setEcoTripComportNumber($ecoTripComportNumber)
            ->setEcoTripDeviceType($ecoTripDeviceType)
            ->setEcoTripHarshBrakeThreshold($ecoTripHarshBrakeThreshold)
            ->setEcoTripIdleTimeThreshold($ecoTripIdleTimeThreshold)
            ->setEcoTripRpmThreshold($ecoTripRpmThreshold)
            ->setEcoTripSpeedThreshold($ecoTripSpeedThreshold)
            ->setEcoTripHarshAccelerationThreshold($ecoTripHarshAccelerationThreshold)
            ->setEcoTripTorqueThreshold($ecoTripTorqueThreshold)
            ->setEcoTripFuelThreshold($ecoTripFuelThreshold)
            ->setEcoTripLowRpmThreshold($ecoTripLowRpmThreshold)
            ->setEcoTripHighRpmThreshold($ecoTripHighRpmThreshold)
            ->setEcoTripLogInterval($ecoTripLogInterval);
    }
    /**
     * Get EcoTripVersion value
     * @return string|null
     */
    public function getEcoTripVersion()
    {
        return $this->EcoTripVersion;
    }
    /**
     * Set EcoTripVersion value
     * @param string $ecoTripVersion
     * @return \StructType\VehicleEcoDiagnostics
     */
    public function setEcoTripVersion($ecoTripVersion = null)
    {
        // validation for constraint: string
        if (!is_null($ecoTripVersion) && !is_string($ecoTripVersion)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($ecoTripVersion, true), gettype($ecoTripVersion)), __LINE__);
        }
        $this->EcoTripVersion = $ecoTripVersion;
        return $this;
    }
    /**
     * Get EcoTripActivationStatus value
     * @return string|null
     */
    public function getEcoTripActivationStatus()
    {
        return $this->EcoTripActivationStatus;
    }
    /**
     * Set EcoTripActivationStatus value
     * @param string $ecoTripActivationStatus
     * @return \StructType\VehicleEcoDiagnostics
     */
    public function setEcoTripActivationStatus($ecoTripActivationStatus = null)
    {
        // validation for constraint: string
        if (!is_null($ecoTripActivationStatus) && !is_string($ecoTripActivationStatus)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($ecoTripActivationStatus, true), gettype($ecoTripActivationStatus)), __LINE__);
        }
        $this->EcoTripActivationStatus = $ecoTripActivationStatus;
        return $this;
    }
    /**
     * Get EcoTripExtVersionInfo value
     * @return string|null
     */
    public function getEcoTripExtVersionInfo()
    {
        return $this->EcoTripExtVersionInfo;
    }
    /**
     * Set EcoTripExtVersionInfo value
     * @param string $ecoTripExtVersionInfo
     * @return \StructType\VehicleEcoDiagnostics
     */
    public function setEcoTripExtVersionInfo($ecoTripExtVersionInfo = null)
    {
        // validation for constraint: string
        if (!is_null($ecoTripExtVersionInfo) && !is_string($ecoTripExtVersionInfo)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($ecoTripExtVersionInfo, true), gettype($ecoTripExtVersionInfo)), __LINE__);
        }
        $this->EcoTripExtVersionInfo = $ecoTripExtVersionInfo;
        return $this;
    }
    /**
     * Get EcoTripExtVersionInfoLength value
     * @return string|null
     */
    public function getEcoTripExtVersionInfoLength()
    {
        return $this->EcoTripExtVersionInfoLength;
    }
    /**
     * Set EcoTripExtVersionInfoLength value
     * @param string $ecoTripExtVersionInfoLength
     * @return \StructType\VehicleEcoDiagnostics
     */
    public function setEcoTripExtVersionInfoLength($ecoTripExtVersionInfoLength = null)
    {
        // validation for constraint: string
        if (!is_null($ecoTripExtVersionInfoLength) && !is_string($ecoTripExtVersionInfoLength)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($ecoTripExtVersionInfoLength, true), gettype($ecoTripExtVersionInfoLength)), __LINE__);
        }
        $this->EcoTripExtVersionInfoLength = $ecoTripExtVersionInfoLength;
        return $this;
    }
    /**
     * Get EcoTripCanSupport value
     * @return string|null
     */
    public function getEcoTripCanSupport()
    {
        return $this->EcoTripCanSupport;
    }
    /**
     * Set EcoTripCanSupport value
     * @param string $ecoTripCanSupport
     * @return \StructType\VehicleEcoDiagnostics
     */
    public function setEcoTripCanSupport($ecoTripCanSupport = null)
    {
        // validation for constraint: string
        if (!is_null($ecoTripCanSupport) && !is_string($ecoTripCanSupport)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($ecoTripCanSupport, true), gettype($ecoTripCanSupport)), __LINE__);
        }
        $this->EcoTripCanSupport = $ecoTripCanSupport;
        return $this;
    }
    /**
     * Get EcoTripTimerInterval value
     * @return string|null
     */
    public function getEcoTripTimerInterval()
    {
        return $this->EcoTripTimerInterval;
    }
    /**
     * Set EcoTripTimerInterval value
     * @param string $ecoTripTimerInterval
     * @return \StructType\VehicleEcoDiagnostics
     */
    public function setEcoTripTimerInterval($ecoTripTimerInterval = null)
    {
        // validation for constraint: string
        if (!is_null($ecoTripTimerInterval) && !is_string($ecoTripTimerInterval)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($ecoTripTimerInterval, true), gettype($ecoTripTimerInterval)), __LINE__);
        }
        $this->EcoTripTimerInterval = $ecoTripTimerInterval;
        return $this;
    }
    /**
     * Get EcoTripScoringType value
     * @return string|null
     */
    public function getEcoTripScoringType()
    {
        return $this->EcoTripScoringType;
    }
    /**
     * Set EcoTripScoringType value
     * @param string $ecoTripScoringType
     * @return \StructType\VehicleEcoDiagnostics
     */
    public function setEcoTripScoringType($ecoTripScoringType = null)
    {
        // validation for constraint: string
        if (!is_null($ecoTripScoringType) && !is_string($ecoTripScoringType)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($ecoTripScoringType, true), gettype($ecoTripScoringType)), __LINE__);
        }
        $this->EcoTripScoringType = $ecoTripScoringType;
        return $this;
    }
    /**
     * Get EcoTripGearCal value
     * @return string|null
     */
    public function getEcoTripGearCal()
    {
        return $this->EcoTripGearCal;
    }
    /**
     * Set EcoTripGearCal value
     * @param string $ecoTripGearCal
     * @return \StructType\VehicleEcoDiagnostics
     */
    public function setEcoTripGearCal($ecoTripGearCal = null)
    {
        // validation for constraint: string
        if (!is_null($ecoTripGearCal) && !is_string($ecoTripGearCal)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($ecoTripGearCal, true), gettype($ecoTripGearCal)), __LINE__);
        }
        $this->EcoTripGearCal = $ecoTripGearCal;
        return $this;
    }
    /**
     * Get EcoTripComportNumber value
     * @return string|null
     */
    public function getEcoTripComportNumber()
    {
        return $this->EcoTripComportNumber;
    }
    /**
     * Set EcoTripComportNumber value
     * @param string $ecoTripComportNumber
     * @return \StructType\VehicleEcoDiagnostics
     */
    public function setEcoTripComportNumber($ecoTripComportNumber = null)
    {
        // validation for constraint: string
        if (!is_null($ecoTripComportNumber) && !is_string($ecoTripComportNumber)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($ecoTripComportNumber, true), gettype($ecoTripComportNumber)), __LINE__);
        }
        $this->EcoTripComportNumber = $ecoTripComportNumber;
        return $this;
    }
    /**
     * Get EcoTripDeviceType value
     * @return string|null
     */
    public function getEcoTripDeviceType()
    {
        return $this->EcoTripDeviceType;
    }
    /**
     * Set EcoTripDeviceType value
     * @param string $ecoTripDeviceType
     * @return \StructType\VehicleEcoDiagnostics
     */
    public function setEcoTripDeviceType($ecoTripDeviceType = null)
    {
        // validation for constraint: string
        if (!is_null($ecoTripDeviceType) && !is_string($ecoTripDeviceType)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($ecoTripDeviceType, true), gettype($ecoTripDeviceType)), __LINE__);
        }
        $this->EcoTripDeviceType = $ecoTripDeviceType;
        return $this;
    }
    /**
     * Get EcoTripHarshBrakeThreshold value
     * @return string|null
     */
    public function getEcoTripHarshBrakeThreshold()
    {
        return $this->EcoTripHarshBrakeThreshold;
    }
    /**
     * Set EcoTripHarshBrakeThreshold value
     * @param string $ecoTripHarshBrakeThreshold
     * @return \StructType\VehicleEcoDiagnostics
     */
    public function setEcoTripHarshBrakeThreshold($ecoTripHarshBrakeThreshold = null)
    {
        // validation for constraint: string
        if (!is_null($ecoTripHarshBrakeThreshold) && !is_string($ecoTripHarshBrakeThreshold)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($ecoTripHarshBrakeThreshold, true), gettype($ecoTripHarshBrakeThreshold)), __LINE__);
        }
        $this->EcoTripHarshBrakeThreshold = $ecoTripHarshBrakeThreshold;
        return $this;
    }
    /**
     * Get EcoTripIdleTimeThreshold value
     * @return string|null
     */
    public function getEcoTripIdleTimeThreshold()
    {
        return $this->EcoTripIdleTimeThreshold;
    }
    /**
     * Set EcoTripIdleTimeThreshold value
     * @param string $ecoTripIdleTimeThreshold
     * @return \StructType\VehicleEcoDiagnostics
     */
    public function setEcoTripIdleTimeThreshold($ecoTripIdleTimeThreshold = null)
    {
        // validation for constraint: string
        if (!is_null($ecoTripIdleTimeThreshold) && !is_string($ecoTripIdleTimeThreshold)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($ecoTripIdleTimeThreshold, true), gettype($ecoTripIdleTimeThreshold)), __LINE__);
        }
        $this->EcoTripIdleTimeThreshold = $ecoTripIdleTimeThreshold;
        return $this;
    }
    /**
     * Get EcoTripRpmThreshold value
     * @return string|null
     */
    public function getEcoTripRpmThreshold()
    {
        return $this->EcoTripRpmThreshold;
    }
    /**
     * Set EcoTripRpmThreshold value
     * @param string $ecoTripRpmThreshold
     * @return \StructType\VehicleEcoDiagnostics
     */
    public function setEcoTripRpmThreshold($ecoTripRpmThreshold = null)
    {
        // validation for constraint: string
        if (!is_null($ecoTripRpmThreshold) && !is_string($ecoTripRpmThreshold)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($ecoTripRpmThreshold, true), gettype($ecoTripRpmThreshold)), __LINE__);
        }
        $this->EcoTripRpmThreshold = $ecoTripRpmThreshold;
        return $this;
    }
    /**
     * Get EcoTripSpeedThreshold value
     * @return string|null
     */
    public function getEcoTripSpeedThreshold()
    {
        return $this->EcoTripSpeedThreshold;
    }
    /**
     * Set EcoTripSpeedThreshold value
     * @param string $ecoTripSpeedThreshold
     * @return \StructType\VehicleEcoDiagnostics
     */
    public function setEcoTripSpeedThreshold($ecoTripSpeedThreshold = null)
    {
        // validation for constraint: string
        if (!is_null($ecoTripSpeedThreshold) && !is_string($ecoTripSpeedThreshold)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($ecoTripSpeedThreshold, true), gettype($ecoTripSpeedThreshold)), __LINE__);
        }
        $this->EcoTripSpeedThreshold = $ecoTripSpeedThreshold;
        return $this;
    }
    /**
     * Get EcoTripHarshAccelerationThreshold value
     * @return string|null
     */
    public function getEcoTripHarshAccelerationThreshold()
    {
        return $this->EcoTripHarshAccelerationThreshold;
    }
    /**
     * Set EcoTripHarshAccelerationThreshold value
     * @param string $ecoTripHarshAccelerationThreshold
     * @return \StructType\VehicleEcoDiagnostics
     */
    public function setEcoTripHarshAccelerationThreshold($ecoTripHarshAccelerationThreshold = null)
    {
        // validation for constraint: string
        if (!is_null($ecoTripHarshAccelerationThreshold) && !is_string($ecoTripHarshAccelerationThreshold)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($ecoTripHarshAccelerationThreshold, true), gettype($ecoTripHarshAccelerationThreshold)), __LINE__);
        }
        $this->EcoTripHarshAccelerationThreshold = $ecoTripHarshAccelerationThreshold;
        return $this;
    }
    /**
     * Get EcoTripTorqueThreshold value
     * @return string|null
     */
    public function getEcoTripTorqueThreshold()
    {
        return $this->EcoTripTorqueThreshold;
    }
    /**
     * Set EcoTripTorqueThreshold value
     * @param string $ecoTripTorqueThreshold
     * @return \StructType\VehicleEcoDiagnostics
     */
    public function setEcoTripTorqueThreshold($ecoTripTorqueThreshold = null)
    {
        // validation for constraint: string
        if (!is_null($ecoTripTorqueThreshold) && !is_string($ecoTripTorqueThreshold)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($ecoTripTorqueThreshold, true), gettype($ecoTripTorqueThreshold)), __LINE__);
        }
        $this->EcoTripTorqueThreshold = $ecoTripTorqueThreshold;
        return $this;
    }
    /**
     * Get EcoTripFuelThreshold value
     * @return string|null
     */
    public function getEcoTripFuelThreshold()
    {
        return $this->EcoTripFuelThreshold;
    }
    /**
     * Set EcoTripFuelThreshold value
     * @param string $ecoTripFuelThreshold
     * @return \StructType\VehicleEcoDiagnostics
     */
    public function setEcoTripFuelThreshold($ecoTripFuelThreshold = null)
    {
        // validation for constraint: string
        if (!is_null($ecoTripFuelThreshold) && !is_string($ecoTripFuelThreshold)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($ecoTripFuelThreshold, true), gettype($ecoTripFuelThreshold)), __LINE__);
        }
        $this->EcoTripFuelThreshold = $ecoTripFuelThreshold;
        return $this;
    }
    /**
     * Get EcoTripLowRpmThreshold value
     * @return string|null
     */
    public function getEcoTripLowRpmThreshold()
    {
        return $this->EcoTripLowRpmThreshold;
    }
    /**
     * Set EcoTripLowRpmThreshold value
     * @param string $ecoTripLowRpmThreshold
     * @return \StructType\VehicleEcoDiagnostics
     */
    public function setEcoTripLowRpmThreshold($ecoTripLowRpmThreshold = null)
    {
        // validation for constraint: string
        if (!is_null($ecoTripLowRpmThreshold) && !is_string($ecoTripLowRpmThreshold)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($ecoTripLowRpmThreshold, true), gettype($ecoTripLowRpmThreshold)), __LINE__);
        }
        $this->EcoTripLowRpmThreshold = $ecoTripLowRpmThreshold;
        return $this;
    }
    /**
     * Get EcoTripHighRpmThreshold value
     * @return string|null
     */
    public function getEcoTripHighRpmThreshold()
    {
        return $this->EcoTripHighRpmThreshold;
    }
    /**
     * Set EcoTripHighRpmThreshold value
     * @param string $ecoTripHighRpmThreshold
     * @return \StructType\VehicleEcoDiagnostics
     */
    public function setEcoTripHighRpmThreshold($ecoTripHighRpmThreshold = null)
    {
        // validation for constraint: string
        if (!is_null($ecoTripHighRpmThreshold) && !is_string($ecoTripHighRpmThreshold)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($ecoTripHighRpmThreshold, true), gettype($ecoTripHighRpmThreshold)), __LINE__);
        }
        $this->EcoTripHighRpmThreshold = $ecoTripHighRpmThreshold;
        return $this;
    }
    /**
     * Get EcoTripLogInterval value
     * @return string|null
     */
    public function getEcoTripLogInterval()
    {
        return $this->EcoTripLogInterval;
    }
    /**
     * Set EcoTripLogInterval value
     * @param string $ecoTripLogInterval
     * @return \StructType\VehicleEcoDiagnostics
     */
    public function setEcoTripLogInterval($ecoTripLogInterval = null)
    {
        // validation for constraint: string
        if (!is_null($ecoTripLogInterval) && !is_string($ecoTripLogInterval)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($ecoTripLogInterval, true), gettype($ecoTripLogInterval)), __LINE__);
        }
        $this->EcoTripLogInterval = $ecoTripLogInterval;
        return $this;
    }
}
