SupportedAddonsLoader   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 18
Duplicated Lines 0 %

Importance

Changes 3
Bugs 0 Features 0
Metric Value
eloc 5
c 3
b 0
f 0
dl 0
loc 18
rs 10
wmc 3

2 Methods

Rating   Name   Duplication   Size   Complexity  
A getCacheKey() 0 3 1
A getAddonNames() 0 5 2
1
<?php
2
3
namespace BringYourOwnIdeas\Maintenance\Util;
4
5
/**
6
 * Handles fetching supported addon details from addons.silverstripe.org
7
 */
8
class SupportedAddonsLoader extends ApiLoader
9
{
10
    /**
11
     * Return the list of supported addons as provided by addons.silverstripe.org
12
     *
13
     * @return array
14
     */
15
    public function getAddonNames()
16
    {
17
        $endpoint = 'addons.silverstripe.org/api/supported-addons';
18
        return $this->doRequest($endpoint, function ($responseBody) {
19
            return isset($responseBody['addons']) ? $responseBody['addons'] : [];
20
        });
21
    }
22
23
    protected function getCacheKey()
24
    {
25
        return 'addons';
26
    }
27
}
28