Completed
Branch v4.x (712f3d)
by Dmitry
04:56
created

AdImages   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 62
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 1

Importance

Changes 0
Metric Value
dl 0
loc 62
rs 10
c 0
b 0
f 0
wmc 3
lcom 1
cbo 1

3 Methods

Rating   Name   Duplication   Size   Complexity  
A add() 0 9 1
A delete() 0 9 1
A get() 0 9 1
1
<?php
2
3
namespace Gladyshev\Yandex\Direct\Service;
4
5
6
7
use function Gladyshev\Yandex\Direct\get_param_names;
8
9
/**
10
 * Class AdImages
11
 * @package Gladyshev\Yandex\Direct\Service
12
 */
13
final class AdImages extends \Gladyshev\Yandex\Direct\AbstractService
14
{
15
    /**
16
     * Выполняет синхронную загрузку изображений в виде бинарных данных.
17
     *
18
     * @param $AdImages
19
     * @return array
20
     * @throws \Throwable
21
     *
22
     * @see https://tech.yandex.ru/direct/doc/ref-v5/adimages/add-docpage/
23
     */
24
    public function add($AdImages)
25
    {
26
        return $this->call([
27
            'method' => 'add',
28
            'params' => [
29
                'AdImages' => $AdImages
30
            ]
31
        ]);
32
    }
33
34
    /**
35
     * Удаляет изображения.
36
     *
37
     * @param $SelectionCriteria
38
     * @return mixed
39
     * @throws \Throwable
40
     *
41
     * @see https://tech.yandex.ru/direct/doc/ref-v5/adimages/delete-docpage/
42
     */
43
    public function delete($SelectionCriteria)
44
    {
45
        return $this->call([
46
            'method' => 'delete',
47
            'params' => [
48
                'SelectionCriteria' => $SelectionCriteria
49
            ]
50
        ]);
51
    }
52
53
    /**
54
     * Возвращает изображения, отвечающие заданным критериям.
55
     *
56
     * @param $SelectionCriteria
57
     * @param $FieldNames
58
     * @param $Page
59
     * @return array
60
     * @throws \Throwable
61
     * @throws \ReflectionException
62
     *
63
     * @see https://tech.yandex.ru/direct/doc/ref-v5/adimages/get-docpage/
64
     */
65
    public function get($SelectionCriteria, $FieldNames, $Page = null)
66
    {
67
        $params = compact(get_param_names(__METHOD__));
68
69
        return $this->call([
70
            'method' => 'get',
71
            'params' => $params
72
        ]);
73
    }
74
}
75