Make play-cms cache agnostic
Use JCache API to work with cache. It allows to make play-cms use any cache provider that supports JCache API. List of appliable cahces could be found here: https://jcp.org/aboutJava/communityprocess/implementations/jsr107/index.html
This MR also introduces 2 new pluggable modules to make play-cms work with the various cache providers:
- play-cache-ehcache - for local or non clustered usage.
- play-cache-redis - for cluster solutions.
One of the caches should be added as project dependency, otherwise play-cms would fail to start.
play-cache-redis uses redisson client. In order to configure client cms.cache.redis
config key could be used. It supports all settings listed at https://github.com/redisson/redisson/wiki/2.-Configuration except the codec.class
. Codec is always overriden and provided to client via DI.