Mercurial > hg > isophonics-drupal-site
comparison vendor/symfony/serializer/Encoder/JsonEncoder.php @ 0:4c8ae668cc8c
Initial import (non-working)
author | Chris Cannam |
---|---|
date | Wed, 29 Nov 2017 16:09:58 +0000 |
parents | |
children | 1fec387a4317 |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:4c8ae668cc8c |
---|---|
1 <?php | |
2 | |
3 /* | |
4 * This file is part of the Symfony package. | |
5 * | |
6 * (c) Fabien Potencier <fabien@symfony.com> | |
7 * | |
8 * For the full copyright and license information, please view the LICENSE | |
9 * file that was distributed with this source code. | |
10 */ | |
11 | |
12 namespace Symfony\Component\Serializer\Encoder; | |
13 | |
14 /** | |
15 * Encodes JSON data. | |
16 * | |
17 * @author Jordi Boggiano <j.boggiano@seld.be> | |
18 */ | |
19 class JsonEncoder implements EncoderInterface, DecoderInterface | |
20 { | |
21 const FORMAT = 'json'; | |
22 | |
23 /** | |
24 * @var JsonEncode | |
25 */ | |
26 protected $encodingImpl; | |
27 | |
28 /** | |
29 * @var JsonDecode | |
30 */ | |
31 protected $decodingImpl; | |
32 | |
33 public function __construct(JsonEncode $encodingImpl = null, JsonDecode $decodingImpl = null) | |
34 { | |
35 $this->encodingImpl = $encodingImpl ?: new JsonEncode(); | |
36 $this->decodingImpl = $decodingImpl ?: new JsonDecode(true); | |
37 } | |
38 | |
39 /** | |
40 * {@inheritdoc} | |
41 */ | |
42 public function encode($data, $format, array $context = array()) | |
43 { | |
44 return $this->encodingImpl->encode($data, self::FORMAT, $context); | |
45 } | |
46 | |
47 /** | |
48 * {@inheritdoc} | |
49 */ | |
50 public function decode($data, $format, array $context = array()) | |
51 { | |
52 return $this->decodingImpl->decode($data, self::FORMAT, $context); | |
53 } | |
54 | |
55 /** | |
56 * {@inheritdoc} | |
57 */ | |
58 public function supportsEncoding($format) | |
59 { | |
60 return self::FORMAT === $format; | |
61 } | |
62 | |
63 /** | |
64 * {@inheritdoc} | |
65 */ | |
66 public function supportsDecoding($format) | |
67 { | |
68 return self::FORMAT === $format; | |
69 } | |
70 } |