Skip to content
This repository has been archived by the owner on Sep 16, 2021. It is now read-only.

Integrating third party components

lsmith77 edited this page Jan 16, 2013 · 5 revisions

When we integrate third party components into the CMF, there are basically 3 options. The first 2 try to find a solution to not create unneeded hard dependencies.

1. Integration classes in the CMF bundle

Write integration classes in a CMF bundle and load service if 3rd party bundle is available. For example Sonata Admin classes

  • Use case: We have a lot of CMF specific logic to maintain for the integration

2. Integration classes in 3rd party component/bundle

Write CMF integration classes in the 3rd party component/bundle and only load them if the CMF is available

  • Use case: When this is just a small adapter to implement some CMF interface

3. New integration bundle

Write a new bundle which depends on both the CMF and the 3rd party component/bundle and write integration code in that new bundle.

  • Use case: When the whole thing is quite big and out of scope of the base CMF and 3rd party component/bundle(s) that is/are integrated.

4. Integration in the application

Write the integration directly in the application using it.

  • Use case: Application specific things that have no big potential for reusing.
Clone this wiki locally