1 | <?php |
||
11 | class Config |
||
12 | { |
||
13 | |||
14 | /** |
||
15 | * @var array $config |
||
16 | */ |
||
17 | private $config = []; |
||
18 | |||
19 | /** |
||
20 | * @var array $default |
||
21 | */ |
||
22 | private $default = [ |
||
23 | 'domain' => "cybozu.com", |
||
24 | 'use_api_token' => false, |
||
25 | 'use_basic' => false, |
||
26 | 'use_client_cert' => false, |
||
27 | 'base_url' => null, |
||
28 | 'defaults' => [], |
||
29 | 'use_cache' => false, |
||
30 | 'cache_dir' => null, |
||
31 | 'cache_ttl' => 0, |
||
32 | 'debug' => false |
||
33 | ]; |
||
34 | |||
35 | /** |
||
36 | * @var array $required |
||
37 | */ |
||
38 | private $required = [ |
||
39 | 'domain', |
||
40 | 'subdomain', |
||
41 | 'use_api_token', |
||
42 | 'use_basic', |
||
43 | 'use_client_cert', |
||
44 | 'base_url', |
||
45 | 'defaults', |
||
46 | 'use_cache', |
||
47 | 'debug' |
||
48 | ]; |
||
49 | |||
50 | 20 | public function __construct(array $config) |
|
58 | |||
59 | /** |
||
60 | * configure default options |
||
61 | */ |
||
62 | 20 | private function configureDefaults() |
|
68 | |||
69 | 20 | private function configureAuth() |
|
78 | |||
79 | 20 | private function configureBasicAuth() |
|
85 | |||
86 | 20 | private function configureCert() |
|
95 | |||
96 | /** |
||
97 | * @return array |
||
98 | */ |
||
99 | 7 | private function getBasicAuthOptions() |
|
109 | |||
110 | /** |
||
111 | * @return array |
||
112 | */ |
||
113 | 6 | private function getCertOptions() |
|
123 | |||
124 | /** |
||
125 | * @return array |
||
126 | */ |
||
127 | 9 | public function toArray() |
|
131 | |||
132 | /** |
||
133 | * @param $key |
||
134 | * @return string|bool |
||
135 | */ |
||
136 | 20 | public function get($key) |
|
144 | |||
145 | /** |
||
146 | * @return bool |
||
147 | */ |
||
148 | 9 | public function hasRequired() |
|
161 | |||
162 | /** |
||
163 | * @return bool |
||
164 | */ |
||
165 | 9 | private function hasRequiredOnAuth() |
|
173 | |||
174 | /** |
||
175 | * @return bool |
||
176 | */ |
||
177 | 11 | private function hasRequiredOnBasicAuth() |
|
181 | |||
182 | /** |
||
183 | * @return bool |
||
184 | */ |
||
185 | 12 | private function hasRequiredOnCert() |
|
189 | |||
190 | /** |
||
191 | * @return bool |
||
192 | */ |
||
193 | 9 | private function hasRequiredOnCache() |
|
197 | |||
198 | /** |
||
199 | * @param string $use |
||
200 | * @param string[] $keys |
||
201 | * @return bool |
||
202 | */ |
||
203 | 13 | private function hasKeysByUse($use, array $keys) |
|
217 | |||
218 | /** |
||
219 | * @return string |
||
220 | */ |
||
221 | 20 | public function getBaseUrl() |
|
236 | } |