VoteCountQuery.php 1.83 KB
<?php

namespace FootyRoom\Queries\Vote;

class VoteCountQuery
{
    /**
     * @var \DateTime
     */
    protected $sinceDate;

    /**
     * @var string
     */
    protected $guestId;

    /**
     * @var int
     */
    protected $userId;

    /**
     * @var string|\MongoDB\BSON\Regex;
     */
    protected $pollRef;

    /**
     * Gets the value of sinceDate.
     *
     * @return \DateTime
     */
    public function getSinceDate()
    {
        return $this->sinceDate;
    }

    /**
     * Gets the value of guestId.
     *
     * @return string
     */
    public function getGuestId()
    {
        return $this->guestId;
    }

    /**
     * Gets the value of userId.
     *
     * @return int
     */
    public function getUserId()
    {
        return $this->userId;
    }

    /**
     * Sets the value of sinceDate.
     *
     * @param \DateTime $sinceDate
     *
     * @return self
     */
    public function sinceDate($sinceDate)
    {
        $this->sinceDate = $sinceDate;

        return $this;
    }

    /**
     * Sets the value of guestId.
     *
     * @param string $guestId
     *
     * @return self
     */
    public function guestId($guestId)
    {
        $this->guestId = $guestId;

        $this->userId = null;

        return $this;
    }

    /**
     * Sets the value of userId.
     *
     * @param int $userId
     *
     * @return self
     */
    public function userId($userId)
    {
        $this->userId = $userId;

        $this->guestId = null;

        return $this;
    }

    /**
     * @param string|\MongoDB\BSON\Regex $pollRef
     *
     * @return self
     */
    public function pollRef($pollRef)
    {
        $this->pollRef = $pollRef;

        return $this;
    }

    /**
     * @return string|\MongoDB\BSON\Regex;
     */
    public function getPollRef()
    {
        return $this->pollRef;
    }
}