Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
| Total | |
100.00% |
1 / 1 |
|
100.00% |
4 / 4 |
CRAP | |
100.00% |
11 / 11 |
| Parsers | |
100.00% |
1 / 1 |
|
100.00% |
4 / 4 |
6 | |
100.00% |
11 / 11 |
| getForContentType | |
100.00% |
1 / 1 |
2 | |
100.00% |
4 / 4 |
|||
| json | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
| parser | |
100.00% |
1 / 1 |
2 | |
100.00% |
5 / 5 |
|||
| buildJson | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
| <?php | |
| namespace PHPixie\HTTPProcessors; | |
| class Parsers | |
| { | |
| protected $contentTypeMap = array( | |
| 'application/json' => 'json' | |
| ); | |
| protected $parsers = array(); | |
| public function getForContentType($contentType) | |
| { | |
| if(!array_key_exists($contentType, $this->contentTypeMap)) { | |
| return null; | |
| } | |
| $name = $this->contentTypeMap[$contentType]; | |
| return $this->parser($name); | |
| } | |
| public function json() | |
| { | |
| return $this->parser('json'); | |
| } | |
| protected function parser($name) | |
| { | |
| if(!array_key_exists($name, $this->parsers)) { | |
| $method = 'build'.ucfirst($name); | |
| $this->parsers[$name] = $this->$method(); | |
| } | |
| return $this->parsers[$name]; | |
| } | |
| protected function buildJson() | |
| { | |
| return new Parsers\Parser\JSON(); | |
| } | |
| } |