Code Coverage
 
Classes and Traits
Functions and Methods
Lines
Total
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 4
CRAP
0.00% covered (danger)
0.00%
0 / 9
Files
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 4
30
0.00% covered (danger)
0.00%
0 / 9
 purgeZone
0.00% covered (danger)
0.00%
0 / 1
2
0.00% covered (danger)
0.00%
0 / 2
 purgeFilesByUrls
0.00% covered (danger)
0.00%
0 / 1
2
0.00% covered (danger)
0.00%
0 / 2
 purgeFilesByTags
0.00% covered (danger)
0.00%
0 / 1
2
0.00% covered (danger)
0.00%
0 / 2
 purgeData
0.00% covered (danger)
0.00%
0 / 1
6
0.00% covered (danger)
0.00%
0 / 3
1<?php
2namespace Qmp\Laravel\CDNApi\Cdn\KeyCDNProvider\Traits;
3
4use Qmp\Laravel\CDNApi\Cdn\AbstractProvider;
5use Qmp\Laravel\CDNApi\Cdn\KeyCDNProvider\Objects\Alias;
6use Qmp\Laravel\CDNApi\Cdn\KeyCDNProvider\Objects\Referrer;
7use Qmp\Laravel\CDNApi\Cdn\KeyCDNProvider\Objects\Stats;
8use Qmp\Laravel\CDNApi\Cdn\KeyCDNProvider\Objects\Zone;
9
10trait Files
11{
12    public function purgeZone($zoneId)
13    {
14        $zone = new Zone();
15        return $this->purgeData($zone, $zoneId, 'purge_zone_cache');
16    }
17
18    public function purgeFilesByUrls($zoneId, array $urls = [])
19    {
20        $zone = new Zone(compact('urls'));
21        return $this->purgeData($zone, $zoneId, 'purge_zone_url');
22    }
23
24    public function purgeFilesByTags($zoneId, array $tags = [])
25    {
26        $zone = new Zone(compact('tags'));
27        return $this->purgeData($zone, $zoneId, 'purge_zone_tag');
28    }
29
30    protected function purgeData(Zone $zone, $zoneId, $send)
31    {
32        $zone->setId($zoneId);
33        $result = $this->send($send, $zone);
34
35        return isset($result['status']) && $result['status'] == 'success';
36    }
37}