PageBundle changes

One good thing about meeting people is that you get feedbacks, awesome! The issue with feedbacks from very good people (cmf guys) is that they are right.

So during the CMF hack day (and some days after), the PageBundle has been refactored a lot : 2 new bundles has been extracted and CMS*Manager classes has been simplify to respect the single responsibility pattern.

CacheBundle

The cache bundle is a standard cache bundle which support different backends (APC, memcached, mongodb or ESI).

BlockBundle

The bundle manage blocks, a block is like a small MVC. Originally it was part of the PageBundle, but there is no logic involve between a block service and a page. So the block management has been taken away. For now, the bundle "as it" does not provide any block or specific logic. It is just a container for interfaces and a block manager.

CMS*Manager refactoring

2 new services has been created from the CMS*Manager classes :

  • DecoratorStrategy : determines if the current request can be decorate with a specific layout
  • PageRenderer : render a page

Others methods have been moved to other existing services.

how to upgrade ?

The Sonata sandbox is a good starting point, please see this commit https://github.com/sonata-project/sandbox/commit/007848b61528d5b287d01d4c3bf8f319c091316d.

If you have some dedicated blocks, please review these changes https://github.com/sonata-project/SonataMediaBundle/commit/02b8eeac27504789a22d425c97a392c6aa36103a

Comments

  • No comments available
The comment form is closed for this current news.