Blog

ColdBox 4.0 Module Enhancements

Curt Gratz February 02, 2015

Spread the word

Curt Gratz

February 02, 2015

Spread the word


Share your thoughts

One of the biggest things we changed about ColdBox 4.0 is making tons of the core completely modular.  To support this change, we needed to enhance our modules architecture which brought some cool new features to you.  

Module Inception

Every time I talk about ColdBox modules with people, I get asked if modules can contain modules, which up to now wasn't an option. But the first Module Enhancement I'd like to bring to your attention is just that.  We call it Module Inception.  This will allow for even greater ways for you to build and architect your applications.  Modules can be nested to the Nth degree.  Creating a ton of options and flexibility for you the developer in how you organize your code.

Module Dependencies

The next Module Enhancement I'd like to point out is Module Dependencies.  This allows for you to ensure the modules that are needed to support your module are available and active before before your module is loaded.  This is handy in controlling activation order (avoiding chicken and egg problems) and again gives you better options as you architect your applications with modules.

Module Model Wirebox Mappings.

Now your module models will be mapped in Wirebox automatically similar to how your ColdBox model folder is mapped.  The mappings will be setup with the DSL that is model@modulename.  For example.

property name="orderService" inject="OrderService@store";

Of course, if you don't want it to work this way, we give you a setting called autoMapModules that you can set to false if you don't want to map your models in your modules.

These are just a few of the Module Enhancements.  To check them all out, read our wiki page at 

http://wiki.coldbox.org/wiki/WhatsNew:4.0.0.cfm#Module_Enhancements

Add Your Comment

Recent Entries

Using CommandBox Docker Images to Perform Bytecode Source Conversions

Using CommandBox Docker Images to Perform Bytecode Source Conversions

There are times when code needs to be shipped in a compiled state. It might be for obfuscation or source protection, it might just because it runs faster that way, without the CFML server needing to compile templates at runtime. It's an excellent use case for production Docker images and code deploy pipelines.

Jon Clausen
Jon Clausen
October 03, 2022
cbElasticsearch 2.3.3 Released

cbElasticsearch 2.3.3 Released

We are pleased to announce the release of cbElasticsearch version 2.3.4. cbElasticsearch is the Elasticsearch module for the Coldbox platform, and provides a fluent CFML API for interacting with, searching, and serializing to Elasticsearch servers.

This release adds full compatibility for Elasticsearch v8.x as well as maintaining support for Elasticsearch versions 6 and 7.

Jon Clausen
Jon Clausen
October 03, 2022
Ortus Will be at Adobe CF Summit 2022!

Ortus Will be at Adobe CF Summit 2022!

4 of our Ortusians will be speaking at CF Summit this year from Oct 3 - 4 in Las Vegas, Nevada. Here are all the details you need to join us and enjoy valuable CFML content to modernize your projects! We are sponsoring the event and will have a booth for you to come by and have a chat with our team!

Maria Jose Herrera
Maria Jose Herrera
September 27, 2022