<?php

namespace GLS;

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for cServiceSDS Struct
 * @subpackage Structs
 */
class CServiceSDS extends AbstractStructBase
{
    /**
     * The id
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 1
     * @var string
     */
    public $id;
    /**
     * The name1
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $name1;
    /**
     * The name2
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $name2;
    /**
     * The name3
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $name3;
    /**
     * The country
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $country;
    /**
     * The zipcode
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $zipcode;
    /**
     * The city
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $city;
    /**
     * The street
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $street;
    /**
     * The phone
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $phone;
    /**
     * The email
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $email;
    /**
     * The gps_lati
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var float
     */
    public $gps_lati;
    /**
     * The gps_long
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var float
     */
    public $gps_long;
    /**
     * The mon_open
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $mon_open;
    /**
     * The mon_close
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $mon_close;
    /**
     * The tue_open
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $tue_open;
    /**
     * The tue_close
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $tue_close;
    /**
     * The wed_open
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $wed_open;
    /**
     * The wed_close
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $wed_close;
    /**
     * The thu_open
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $thu_open;
    /**
     * The thu_close
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $thu_close;
    /**
     * The fri_open
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $fri_open;
    /**
     * The fri_close
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $fri_close;
    /**
     * The sat_open
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $sat_open;
    /**
     * The sat_close
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $sat_close;
    /**
     * The sun_open
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $sun_open;
    /**
     * The sun_close
     * Meta information extracted from the WSDL
     * - maxOccurs: 1
     * - minOccurs: 0
     * @var string
     */
    public $sun_close;
    /**
     * Constructor method for cServiceSDS
     * @uses CServiceSDS::setId()
     * @uses CServiceSDS::setName1()
     * @uses CServiceSDS::setName2()
     * @uses CServiceSDS::setName3()
     * @uses CServiceSDS::setCountry()
     * @uses CServiceSDS::setZipcode()
     * @uses CServiceSDS::setCity()
     * @uses CServiceSDS::setStreet()
     * @uses CServiceSDS::setPhone()
     * @uses CServiceSDS::setEmail()
     * @uses CServiceSDS::setGps_lati()
     * @uses CServiceSDS::setGps_long()
     * @uses CServiceSDS::setMon_open()
     * @uses CServiceSDS::setMon_close()
     * @uses CServiceSDS::setTue_open()
     * @uses CServiceSDS::setTue_close()
     * @uses CServiceSDS::setWed_open()
     * @uses CServiceSDS::setWed_close()
     * @uses CServiceSDS::setThu_open()
     * @uses CServiceSDS::setThu_close()
     * @uses CServiceSDS::setFri_open()
     * @uses CServiceSDS::setFri_close()
     * @uses CServiceSDS::setSat_open()
     * @uses CServiceSDS::setSat_close()
     * @uses CServiceSDS::setSun_open()
     * @uses CServiceSDS::setSun_close()
     * @param string $id
     * @param string $name1
     * @param string $name2
     * @param string $name3
     * @param string $country
     * @param string $zipcode
     * @param string $city
     * @param string $street
     * @param string $phone
     * @param string $email
     * @param float $gps_lati
     * @param float $gps_long
     * @param string $mon_open
     * @param string $mon_close
     * @param string $tue_open
     * @param string $tue_close
     * @param string $wed_open
     * @param string $wed_close
     * @param string $thu_open
     * @param string $thu_close
     * @param string $fri_open
     * @param string $fri_close
     * @param string $sat_open
     * @param string $sat_close
     * @param string $sun_open
     * @param string $sun_close
     */
    public function __construct($id = null, $name1 = null, $name2 = null, $name3 = null, $country = null, $zipcode = null, $city = null, $street = null, $phone = null, $email = null, $gps_lati = null, $gps_long = null, $mon_open = null, $mon_close = null, $tue_open = null, $tue_close = null, $wed_open = null, $wed_close = null, $thu_open = null, $thu_close = null, $fri_open = null, $fri_close = null, $sat_open = null, $sat_close = null, $sun_open = null, $sun_close = null)
    {
        $this
            ->setId($id)
            ->setName1($name1)
            ->setName2($name2)
            ->setName3($name3)
            ->setCountry($country)
            ->setZipcode($zipcode)
            ->setCity($city)
            ->setStreet($street)
            ->setPhone($phone)
            ->setEmail($email)
            ->setGps_lati($gps_lati)
            ->setGps_long($gps_long)
            ->setMon_open($mon_open)
            ->setMon_close($mon_close)
            ->setTue_open($tue_open)
            ->setTue_close($tue_close)
            ->setWed_open($wed_open)
            ->setWed_close($wed_close)
            ->setThu_open($thu_open)
            ->setThu_close($thu_close)
            ->setFri_open($fri_open)
            ->setFri_close($fri_close)
            ->setSat_open($sat_open)
            ->setSat_close($sat_close)
            ->setSun_open($sun_open)
            ->setSun_close($sun_close);
    }
    /**
     * Get id value
     * @return string
     */
    public function getId()
    {
        return $this->id;
    }
    /**
     * Set id value
     * @param string $id
     * @return \GLS\CServiceSDS
     */
    public function setId($id = null)
    {
        // validation for constraint: string
        if (!is_null($id) && !is_string($id)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($id, true), gettype($id)), __LINE__);
        }
        $this->id = $id;
        return $this;
    }
    /**
     * Get name1 value
     * @return string|null
     */
    public function getName1()
    {
        return $this->name1;
    }
    /**
     * Set name1 value
     * @param string $name1
     * @return \GLS\CServiceSDS
     */
    public function setName1($name1 = null)
    {
        // validation for constraint: string
        if (!is_null($name1) && !is_string($name1)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($name1, true), gettype($name1)), __LINE__);
        }
        $this->name1 = $name1;
        return $this;
    }
    /**
     * Get name2 value
     * @return string|null
     */
    public function getName2()
    {
        return $this->name2;
    }
    /**
     * Set name2 value
     * @param string $name2
     * @return \GLS\CServiceSDS
     */
    public function setName2($name2 = null)
    {
        // validation for constraint: string
        if (!is_null($name2) && !is_string($name2)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($name2, true), gettype($name2)), __LINE__);
        }
        $this->name2 = $name2;
        return $this;
    }
    /**
     * Get name3 value
     * @return string|null
     */
    public function getName3()
    {
        return $this->name3;
    }
    /**
     * Set name3 value
     * @param string $name3
     * @return \GLS\CServiceSDS
     */
    public function setName3($name3 = null)
    {
        // validation for constraint: string
        if (!is_null($name3) && !is_string($name3)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($name3, true), gettype($name3)), __LINE__);
        }
        $this->name3 = $name3;
        return $this;
    }
    /**
     * Get country value
     * @return string|null
     */
    public function getCountry()
    {
        return $this->country;
    }
    /**
     * Set country value
     * @param string $country
     * @return \GLS\CServiceSDS
     */
    public function setCountry($country = null)
    {
        // validation for constraint: string
        if (!is_null($country) && !is_string($country)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($country, true), gettype($country)), __LINE__);
        }
        $this->country = $country;
        return $this;
    }
    /**
     * Get zipcode value
     * @return string|null
     */
    public function getZipcode()
    {
        return $this->zipcode;
    }
    /**
     * Set zipcode value
     * @param string $zipcode
     * @return \GLS\CServiceSDS
     */
    public function setZipcode($zipcode = null)
    {
        // validation for constraint: string
        if (!is_null($zipcode) && !is_string($zipcode)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($zipcode, true), gettype($zipcode)), __LINE__);
        }
        $this->zipcode = $zipcode;
        return $this;
    }
    /**
     * Get city value
     * @return string|null
     */
    public function getCity()
    {
        return $this->city;
    }
    /**
     * Set city value
     * @param string $city
     * @return \GLS\CServiceSDS
     */
    public function setCity($city = null)
    {
        // validation for constraint: string
        if (!is_null($city) && !is_string($city)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($city, true), gettype($city)), __LINE__);
        }
        $this->city = $city;
        return $this;
    }
    /**
     * Get street value
     * @return string|null
     */
    public function getStreet()
    {
        return $this->street;
    }
    /**
     * Set street value
     * @param string $street
     * @return \GLS\CServiceSDS
     */
    public function setStreet($street = null)
    {
        // validation for constraint: string
        if (!is_null($street) && !is_string($street)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($street, true), gettype($street)), __LINE__);
        }
        $this->street = $street;
        return $this;
    }
    /**
     * Get phone value
     * @return string|null
     */
    public function getPhone()
    {
        return $this->phone;
    }
    /**
     * Set phone value
     * @param string $phone
     * @return \GLS\CServiceSDS
     */
    public function setPhone($phone = null)
    {
        // validation for constraint: string
        if (!is_null($phone) && !is_string($phone)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($phone, true), gettype($phone)), __LINE__);
        }
        $this->phone = $phone;
        return $this;
    }
    /**
     * Get email value
     * @return string|null
     */
    public function getEmail()
    {
        return $this->email;
    }
    /**
     * Set email value
     * @param string $email
     * @return \GLS\CServiceSDS
     */
    public function setEmail($email = null)
    {
        // validation for constraint: string
        if (!is_null($email) && !is_string($email)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($email, true), gettype($email)), __LINE__);
        }
        $this->email = $email;
        return $this;
    }
    /**
     * Get gps_lati value
     * @return float|null
     */
    public function getGps_lati()
    {
        return $this->gps_lati;
    }
    /**
     * Set gps_lati value
     * @param float $gps_lati
     * @return \GLS\CServiceSDS
     */
    public function setGps_lati($gps_lati = null)
    {
        // validation for constraint: float
        if (!is_null($gps_lati) && !(is_float($gps_lati) || is_numeric($gps_lati))) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a float value, %s given', var_export($gps_lati, true), gettype($gps_lati)), __LINE__);
        }
        $this->gps_lati = $gps_lati;
        return $this;
    }
    /**
     * Get gps_long value
     * @return float|null
     */
    public function getGps_long()
    {
        return $this->gps_long;
    }
    /**
     * Set gps_long value
     * @param float $gps_long
     * @return \GLS\CServiceSDS
     */
    public function setGps_long($gps_long = null)
    {
        // validation for constraint: float
        if (!is_null($gps_long) && !(is_float($gps_long) || is_numeric($gps_long))) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a float value, %s given', var_export($gps_long, true), gettype($gps_long)), __LINE__);
        }
        $this->gps_long = $gps_long;
        return $this;
    }
    /**
     * Get mon_open value
     * @return string|null
     */
    public function getMon_open()
    {
        return $this->mon_open;
    }
    /**
     * Set mon_open value
     * @param string $mon_open
     * @return \GLS\CServiceSDS
     */
    public function setMon_open($mon_open = null)
    {
        // validation for constraint: string
        if (!is_null($mon_open) && !is_string($mon_open)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($mon_open, true), gettype($mon_open)), __LINE__);
        }
        $this->mon_open = $mon_open;
        return $this;
    }
    /**
     * Get mon_close value
     * @return string|null
     */
    public function getMon_close()
    {
        return $this->mon_close;
    }
    /**
     * Set mon_close value
     * @param string $mon_close
     * @return \GLS\CServiceSDS
     */
    public function setMon_close($mon_close = null)
    {
        // validation for constraint: string
        if (!is_null($mon_close) && !is_string($mon_close)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($mon_close, true), gettype($mon_close)), __LINE__);
        }
        $this->mon_close = $mon_close;
        return $this;
    }
    /**
     * Get tue_open value
     * @return string|null
     */
    public function getTue_open()
    {
        return $this->tue_open;
    }
    /**
     * Set tue_open value
     * @param string $tue_open
     * @return \GLS\CServiceSDS
     */
    public function setTue_open($tue_open = null)
    {
        // validation for constraint: string
        if (!is_null($tue_open) && !is_string($tue_open)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($tue_open, true), gettype($tue_open)), __LINE__);
        }
        $this->tue_open = $tue_open;
        return $this;
    }
    /**
     * Get tue_close value
     * @return string|null
     */
    public function getTue_close()
    {
        return $this->tue_close;
    }
    /**
     * Set tue_close value
     * @param string $tue_close
     * @return \GLS\CServiceSDS
     */
    public function setTue_close($tue_close = null)
    {
        // validation for constraint: string
        if (!is_null($tue_close) && !is_string($tue_close)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($tue_close, true), gettype($tue_close)), __LINE__);
        }
        $this->tue_close = $tue_close;
        return $this;
    }
    /**
     * Get wed_open value
     * @return string|null
     */
    public function getWed_open()
    {
        return $this->wed_open;
    }
    /**
     * Set wed_open value
     * @param string $wed_open
     * @return \GLS\CServiceSDS
     */
    public function setWed_open($wed_open = null)
    {
        // validation for constraint: string
        if (!is_null($wed_open) && !is_string($wed_open)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($wed_open, true), gettype($wed_open)), __LINE__);
        }
        $this->wed_open = $wed_open;
        return $this;
    }
    /**
     * Get wed_close value
     * @return string|null
     */
    public function getWed_close()
    {
        return $this->wed_close;
    }
    /**
     * Set wed_close value
     * @param string $wed_close
     * @return \GLS\CServiceSDS
     */
    public function setWed_close($wed_close = null)
    {
        // validation for constraint: string
        if (!is_null($wed_close) && !is_string($wed_close)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($wed_close, true), gettype($wed_close)), __LINE__);
        }
        $this->wed_close = $wed_close;
        return $this;
    }
    /**
     * Get thu_open value
     * @return string|null
     */
    public function getThu_open()
    {
        return $this->thu_open;
    }
    /**
     * Set thu_open value
     * @param string $thu_open
     * @return \GLS\CServiceSDS
     */
    public function setThu_open($thu_open = null)
    {
        // validation for constraint: string
        if (!is_null($thu_open) && !is_string($thu_open)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($thu_open, true), gettype($thu_open)), __LINE__);
        }
        $this->thu_open = $thu_open;
        return $this;
    }
    /**
     * Get thu_close value
     * @return string|null
     */
    public function getThu_close()
    {
        return $this->thu_close;
    }
    /**
     * Set thu_close value
     * @param string $thu_close
     * @return \GLS\CServiceSDS
     */
    public function setThu_close($thu_close = null)
    {
        // validation for constraint: string
        if (!is_null($thu_close) && !is_string($thu_close)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($thu_close, true), gettype($thu_close)), __LINE__);
        }
        $this->thu_close = $thu_close;
        return $this;
    }
    /**
     * Get fri_open value
     * @return string|null
     */
    public function getFri_open()
    {
        return $this->fri_open;
    }
    /**
     * Set fri_open value
     * @param string $fri_open
     * @return \GLS\CServiceSDS
     */
    public function setFri_open($fri_open = null)
    {
        // validation for constraint: string
        if (!is_null($fri_open) && !is_string($fri_open)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($fri_open, true), gettype($fri_open)), __LINE__);
        }
        $this->fri_open = $fri_open;
        return $this;
    }
    /**
     * Get fri_close value
     * @return string|null
     */
    public function getFri_close()
    {
        return $this->fri_close;
    }
    /**
     * Set fri_close value
     * @param string $fri_close
     * @return \GLS\CServiceSDS
     */
    public function setFri_close($fri_close = null)
    {
        // validation for constraint: string
        if (!is_null($fri_close) && !is_string($fri_close)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($fri_close, true), gettype($fri_close)), __LINE__);
        }
        $this->fri_close = $fri_close;
        return $this;
    }
    /**
     * Get sat_open value
     * @return string|null
     */
    public function getSat_open()
    {
        return $this->sat_open;
    }
    /**
     * Set sat_open value
     * @param string $sat_open
     * @return \GLS\CServiceSDS
     */
    public function setSat_open($sat_open = null)
    {
        // validation for constraint: string
        if (!is_null($sat_open) && !is_string($sat_open)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($sat_open, true), gettype($sat_open)), __LINE__);
        }
        $this->sat_open = $sat_open;
        return $this;
    }
    /**
     * Get sat_close value
     * @return string|null
     */
    public function getSat_close()
    {
        return $this->sat_close;
    }
    /**
     * Set sat_close value
     * @param string $sat_close
     * @return \GLS\CServiceSDS
     */
    public function setSat_close($sat_close = null)
    {
        // validation for constraint: string
        if (!is_null($sat_close) && !is_string($sat_close)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($sat_close, true), gettype($sat_close)), __LINE__);
        }
        $this->sat_close = $sat_close;
        return $this;
    }
    /**
     * Get sun_open value
     * @return string|null
     */
    public function getSun_open()
    {
        return $this->sun_open;
    }
    /**
     * Set sun_open value
     * @param string $sun_open
     * @return \GLS\CServiceSDS
     */
    public function setSun_open($sun_open = null)
    {
        // validation for constraint: string
        if (!is_null($sun_open) && !is_string($sun_open)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($sun_open, true), gettype($sun_open)), __LINE__);
        }
        $this->sun_open = $sun_open;
        return $this;
    }
    /**
     * Get sun_close value
     * @return string|null
     */
    public function getSun_close()
    {
        return $this->sun_close;
    }
    /**
     * Set sun_close value
     * @param string $sun_close
     * @return \GLS\CServiceSDS
     */
    public function setSun_close($sun_close = null)
    {
        // validation for constraint: string
        if (!is_null($sun_close) && !is_string($sun_close)) {
            throw new \InvalidArgumentException(sprintf('Invalid value %s, please provide a string, %s given', var_export($sun_close, true), gettype($sun_close)), __LINE__);
        }
        $this->sun_close = $sun_close;
        return $this;
    }
}
