@@ -187,17 +187,10 @@ private function getNormalizer($data, $format)
187
187
{
188
188
if ($ isObject = is_object ($ data )) {
189
189
$ class = get_class ($ data );
190
- if (isset ($ this ->normalizerCache [$ class ][$ format ])) {
191
- return $ this ->normalizerCache [$ class ][$ format ];
192
- }
193
190
}
194
191
195
192
foreach ($ this ->normalizers as $ normalizer ) {
196
193
if ($ normalizer instanceof NormalizerInterface && $ normalizer ->supportsNormalization ($ data , $ format )) {
197
- if ($ isObject ) {
198
- $ this ->normalizerCache [$ class ][$ format ] = $ normalizer ;
199
- }
200
-
201
194
return $ normalizer ;
202
195
}
203
196
}
@@ -214,14 +207,8 @@ private function getNormalizer($data, $format)
214
207
*/
215
208
private function getDenormalizer ($ data , $ class , $ format )
216
209
{
217
- if (isset ($ this ->denormalizerCache [$ class ][$ format ])) {
218
- return $ this ->denormalizerCache [$ class ][$ format ];
219
- }
220
-
221
210
foreach ($ this ->normalizers as $ normalizer ) {
222
211
if ($ normalizer instanceof DenormalizerInterface && $ normalizer ->supportsDenormalization ($ data , $ class , $ format )) {
223
- $ this ->denormalizerCache [$ class ][$ format ] = $ normalizer ;
224
-
225
212
return $ normalizer ;
226
213
}
227
214
}
@@ -264,6 +251,7 @@ private function normalizeObject($object, $format, array $context = array())
264
251
if ($ normalizer = $ this ->getNormalizer ($ object , $ format )) {
265
252
return $ normalizer ->normalize ($ object , $ format , $ context );
266
253
}
254
+
267
255
throw new UnexpectedValueException (sprintf ('Could not normalize object of type %s, no supporting normalizer found. ' , get_class ($ object )));
268
256
}
269
257
@@ -289,6 +277,15 @@ private function denormalizeObject($data, $class, $format, array $context = arra
289
277
if ($ normalizer = $ this ->getDenormalizer ($ data , $ class , $ format )) {
290
278
return $ normalizer ->denormalize ($ data , $ class , $ format , $ context );
291
279
}
280
+
281
+ foreach ($ this ->normalizers as $ normalizer ) {
282
+ if ($ normalizer instanceof DenormalizerInterface
283
+ && $ normalizer ->supportsDenormalization ($ data , $ class , $ format )) {
284
+
285
+ return $ normalizer ->denormalize ($ data , $ class , $ format , $ context );
286
+ }
287
+ }
288
+
292
289
throw new UnexpectedValueException (sprintf ('Could not denormalize object of type %s, no supporting normalizer found. ' , $ class ));
293
290
}
294
291
0 commit comments