zend-blog-3-backend

Форк
0
/
AbstractAdminCommand.php 
42 строки · 935.0 Байт
1
<?php
2

3
namespace Xelbot\Telegram\Command;
4

5
use Xelbot\Telegram\Entity\Message;
6
use Xelbot\Telegram\Exception\AccessDeniedTelegramException;
7

8
abstract class AbstractAdminCommand
9
{
10
    /**
11
     * @var int
12
     */
13
    private $adminId;
14

15
    /**
16
     * @param int $adminId
17
     */
18
    public function setAdminId(int $adminId)
19
    {
20
        $this->adminId = $adminId;
21
    }
22

23
    /**
24
     * @param Message $message
25
     */
26
    abstract protected function executeCommand(Message $message): void;
27

28
    /**
29
     * @param Message $message
30
     *
31
     * @throws AccessDeniedTelegramException
32
     */
33
    public function execute(Message $message): void
34
    {
35
        //TODO Null pointer exception may occur here
36
        if ($message->getFrom()->getId() != $this->adminId) {
37
            throw new AccessDeniedTelegramException("Access Denied for user ID:{$message->getFrom()->getId()}");
38
        }
39

40
        $this->executeCommand($message);
41
    }
42
}
43

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.