WireBox

WireBox is an enterprise web application framework for the ColdFusion application programming language, inspired by Google_Guice and the Java Spring Framework. It was created by Luis Majano & Ortus Solutions and provides Dependency injection, inversion of control and aspect-oriented programming design pattern capabilities in an effort to make the configuration and dependencies of ColdFusion components (CFCs) easier to manage and consume. It relies on the fact of using annotations, programmatic configurations (no XML), life cycle scopes and event driven messaging to produce highly reliable DI and AOP patterns.

Contents

Motivation

WireBox's inspiration has been based on the idea of rapid workflows when building object oriented ColdFusion applications, programmatic configurations and simplicity. With that motivation it introduced dependency injection by annotations and conventions, which has been the core foundation of WireBox.

WireBox alleviates the need for custom object factories or manual object creation in ColdFusion applications. It provides a standardized approach to object construction and assembling that will make your code easier to adapt to changes, easier to test, mock and extend. WireBox leverages an array of object, function, and property metadata annotations to make your object assembling, storage and creation. It uses the power of event driven architecture via object listeners or interceptors for extending not only WireBox but the way objects are analyzed, created, and wired. The AOP capabilities are all driven by an AOP listener which decouples itself from WireBox code and is standalone. WireBox uses the WireBox Programmatic Mapping DSL (Domain Specific Language) to define object construction and relationships in pure ColdFusion (No XML!).

Features At A Glance

Here are a simple listing of features WireBox implements

External links