<?php

declare(strict_types=1);

namespace Medienreaktor\Courses\Domain\Model;


/**
 * This file is part of the "Courses" Extension for TYPO3 CMS.
 *
 * For the full copyright and license information, please read the
 * LICENSE.txt file that was distributed with this source code.
 *
 * (c) 2023 Matthias Schieber <matthias.schieber@medienreaktor.de>, Medienreaktor
 */

/**
 * Workshop
 */
class Workshop extends \TYPO3\CMS\Extbase\DomainObject\AbstractEntity
{

    /**
     * workshopId
     *
     * @var int
     */
    protected $workshopId = 0;

    /**
     * highlight
     *
     * @var bool
     */
    protected $highlight = false;

    /**
     * location
     *
     * @var string
     */
    protected $location = '';

    /**
     * zip
     *
     * @var string
     */
    protected $zip = '';

    /**
     * street
     *
     * @var string
     */
    protected $street = '';

    /**
     * country
     *
     * @var string
     */
    protected $country = '';

    /**
     * locationDescription
     *
     * @var string
     */
    protected $locationDescription = '';

    /**
     * room
     *
     * @var string
     */
    protected $room = '';

    /**
     * startTime
     *
     * @var int
     */
    protected $startTime = null;

    /**
     * endTime
     *
     * @var int
     */
    protected $endTime = null;

    /**
     * Returns the workshopId
     *
     * @return int
     */
    public function getWorkshopId()
    {
        return $this->workshopId;
    }

    /**
     * Sets the workshopId
     *
     * @param int $workshopId
     * @return void
     */
    public function setWorkshopId(int $workshopId): void
    {
        $this->workshopId = $workshopId;
    }

    /**
     * Returns the highlight
     *
     * @return bool
     */
    public function getHighlight()
    {
        return $this->highlight;
    }

    /**
     * Sets the highlight
     *
     * @param bool $highlight
     * @return void
     */
    public function setHighlight(bool $highlight): void
    {
        $this->highlight = $highlight;
    }

    /**
     * Returns the boolean state of highlight
     *
     * @return bool
     */
    public function isHighlight()
    {
        return $this->highlight;
    }

    /**
     * Returns the location
     *
     * @return string
     */
    public function getLocation()
    {
        return $this->location;
    }

    /**
     * Sets the location
     *
     * @param string $location
     * @return void
     */
    public function setLocation(string $location): void
    {
        $this->location = $location;
    }

    /**
     * Returns the zip
     *
     * @return string
     */
    public function getZip()
    {
        return $this->zip;
    }

    /**
     * Sets the zip
     *
     * @param string $zip
     * @return void
     */
    public function setZip(string $zip): void
    {
        $this->zip = $zip;
    }

    /**
     * Returns the street
     *
     * @return string
     */
    public function getStreet()
    {
        return $this->street;
    }

    /**
     * Sets the street
     *
     * @param string $street
     * @return void
     */
    public function setStreet(string $street): void
    {
        $this->street = $street;
    }

    /**
     * Returns the country
     *
     * @return string
     */
    public function getCountry()
    {
        return $this->country;
    }

    /**
     * Sets the country
     *
     * @param string $country
     * @return void
     */
    public function setCountry(string $country): void
    {
        $this->country = $country;
    }

    /**
     * Returns the locationDescription
     *
     * @return string
     */
    public function getLocationDescription()
    {
        return $this->locationDescription;
    }

    /**
     * Sets the locationDescription
     *
     * @param string $locationDescription
     * @return void
     */
    public function setLocationDescription(string $locationDescription): void
    {
        $this->locationDescription = $locationDescription;
    }

    /**
     * Returns the room
     *
     * @return string
     */
    public function getRoom()
    {
        return $this->room;
    }

    /**
     * Sets the room
     *
     * @param string $room
     * @return void
     */
    public function setRoom(string $room): void
    {
        $this->room = $room;
    }

    /**
     * Returns the startTime
     *
     * @return int startTime
     */
    public function getStartTime()
    {
        return $this->startTime;
    }

    /**
     * Sets the startTime
     *
     * @param int $startTime
     * @return void
     */
    public function setStartTime(int $startTime): void
    {
        $this->startTime = $startTime;
    }

    /**
     * Returns the endTime
     *
     * @return int endTime
     */
    public function getEndTime()
    {
        return $this->endTime;
    }

    /**
     * Sets the endTime
     *
     * @param int $endTime
     * @return void
     */
    public function setEndTime(int $endTime): void
    {
        $this->endTime = $endTime;
    }
}
