1 | <?php |
||
9 | class Serializer |
||
10 | { |
||
11 | /** @var SerializableClassMapper */ |
||
12 | private $classMapper; |
||
13 | |||
14 | /** @var HydratorFactory */ |
||
15 | private $hydratorFactory; |
||
16 | |||
17 | /** @var DataFormatter */ |
||
18 | private $dataFormatter; |
||
19 | |||
20 | /** @var InstantiatorInterface */ |
||
21 | private $instantiator; |
||
22 | |||
23 | /** @var CustomSerializer[] */ |
||
24 | private $customSerializers; |
||
25 | |||
26 | /** |
||
27 | * Constructor. |
||
28 | * |
||
29 | * @param SerializableClassMapper $classMapper |
||
30 | 9 | * @param HydratorFactory $hydratorFactory |
|
31 | * @param DataFormatter $dataFormatter |
||
32 | * @param InstantiatorInterface $instantiator |
||
33 | */ |
||
34 | public function __construct( |
||
46 | |||
47 | 6 | /** |
|
48 | * @param CustomSerializer $customSerializer |
||
49 | 6 | */ |
|
50 | 3 | public function addCustomSerializer(CustomSerializer $customSerializer) |
|
54 | |||
55 | /** |
||
56 | * @param mixed $object |
||
57 | * |
||
58 | * @return array |
||
59 | */ |
||
60 | public function serialize($object) |
||
68 | |||
69 | 3 | /** |
|
70 | 3 | * @param mixed $object |
|
71 | 3 | * |
|
72 | * @return array |
||
73 | 3 | */ |
|
74 | private function innerSerialize($object) |
||
89 | 2 | ||
90 | /** |
||
91 | 3 | * @param object $object |
|
92 | * |
||
93 | * @return array |
||
94 | */ |
||
95 | private function serializeObject($object) |
||
106 | |||
107 | /** |
||
108 | * @param object $object |
||
109 | 3 | * |
|
110 | * @return array |
||
111 | 3 | */ |
|
112 | 3 | private function getPayload($object) |
|
124 | |||
125 | /** |
||
126 | * @param array $serializedObject |
||
127 | * |
||
128 | * @return mixed |
||
129 | */ |
||
130 | 3 | public function deserialize(array $serializedObject) |
|
134 | 3 | ||
135 | 3 | /** |
|
136 | 3 | * @param mixed $serializedObject |
|
137 | 2 | * |
|
138 | * @return mixed |
||
139 | 3 | */ |
|
140 | 3 | private function recursiveDeserialize($serializedObject) |
|
155 | |||
156 | /** |
||
157 | * @param array $serializedObject |
||
158 | * |
||
159 | * @return object |
||
160 | */ |
||
161 | private function deserializeObject(array $serializedObject) |
||
184 | } |
||
185 |