3 weeks ago i started using coldbox, and i really like the framework,
because of its intereceptors, and pre-made things like security
intereceptors and all its plugins. And especially the documentation is
what made be adopt the framework.
The only thing i have some second thoughts with, is the plugin system.
I think the plugin system is completely fine, if the plugin is really
extendin the coldbox functionality. With this i mean, that the plugin
uses core coldbox functionality like the request collection for
example. The beanfactory seems to be (partly, for example the
populateBean method) a good example of this althought the generic
populateBeanFromStruct does not have any dependency with the coldbox
There are also plugins in the coldbox framework, like queryhelper or
the utilities plugin, that on first glance do do not need any depency
with the coldbox framework. The problem is, they are a plugin, so they
are extending a base plugin class... and also coldbox will inject
methods in these plugins (am i right?).
If i am making for example an object in my model, or another utility
object (or maybe a cfc that represents a general widget to, for
example, generate a form), and i want to use some plugin methods (like
the queryhelper), i will make my model or the utility object dependent
on the coldbox framework. If i for example want to use another
framework or no framework, i cannot re-use these model objects or
So the problem i have with the plugin system, is that it seems to make
needless dependencies for certain plugins.
A solution for this, would be to have in addition to the plugin
folder, a util folder. In which framework-independent utility objects
can be located, packages with coldbox juts as an extra. Coldbox could
provide a getUtil method, to make it easier to instantiate these
What dou you guys think about this? Am i missing something?
Note: instead of cfc i always say object, this feels more natural to