[Serializer] [WIP] Add cache warmer for normalizer cache #39853
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
As @bastnic said in #35268:
So, how it works?
The
Serializer
now uses aNormalizerChooserInterface
which give two methods:chooseNormalizer
andchooseDenormalizer
. The code written in theSerializer
is a little bit the same.On top of that, the
CacheNormalizerChooser
decorates the defaultNormalizerChooser
and give the ability to cache the results via the cache interface.Moreover, I have introduced a new cache warmer called
SerializerNormalizerChooserCacheWarmer
. It will fetch all the providers defined with the interfaceCacheNormalizationProviderInterface
and warm the cache with theCacheNormalizerChooser
.Cache normalization provider example