SetChatPhoto   A
last analyzed

Complexity

Total Complexity 5

Size/Duplication

Total Lines 45
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 15
dl 0
loc 45
rs 10
c 0
b 0
f 0
wmc 5

5 Methods

Rating   Name   Duplication   Size   Complexity  
A getChatId() 0 3 1
A getPhoto() 0 3 1
A typeSerialize() 0 6 1
A __construct() 0 4 1
A fromArray() 0 5 1
1
<?php
2
3
/**
4
 * This phpFile is auto-generated.
5
 */
6
7
declare(strict_types=1);
8
9
namespace PHPTdGram\Schema;
10
11
/**
12
 * Changes the photo of a chat. Supported only for basic groups, supergroups and channels. Requires can_change_info rights. The photo will not be changed before request to the server has been completed.
13
 */
14
class SetChatPhoto extends TdFunction
15
{
16
    public const TYPE_NAME = 'setChatPhoto';
17
18
    /**
19
     * Chat identifier.
20
     */
21
    protected int $chatId;
22
23
    /**
24
     * New chat photo. You can use a zero InputFileId to delete the chat photo. Files that are accessible only by HTTP URL are not acceptable.
25
     */
26
    protected InputFile $photo;
27
28
    public function __construct(int $chatId, InputFile $photo)
29
    {
30
        $this->chatId = $chatId;
31
        $this->photo  = $photo;
32
    }
33
34
    public static function fromArray(array $array): SetChatPhoto
35
    {
36
        return new static(
37
            $array['chat_id'],
38
            TdSchemaRegistry::fromArray($array['photo']),
39
        );
40
    }
41
42
    public function typeSerialize(): array
43
    {
44
        return [
45
            '@type'   => static::TYPE_NAME,
46
            'chat_id' => $this->chatId,
47
            'photo'   => $this->photo->typeSerialize(),
48
        ];
49
    }
50
51
    public function getChatId(): int
52
    {
53
        return $this->chatId;
54
    }
55
56
    public function getPhoto(): InputFile
57
    {
58
        return $this->photo;
59
    }
60
}
61