Welcome to OfficeFloor
OfficeFloor is an Inversion of Control 2.0 implementation that focuses on multi-threaded dependency injection into methods rather than into objects and improves on existing dependency injection frameworks by letting you specify the Thread to execute the method - thereby really adhering to the "Hollywood Principle" (don't call us, we "really" will call you).
OfficeFloor is freely distributed under GPL (LGPL also available on request) and the source is available here.
The following code provides a simple example of OfficeFloor capabilities:
// OfficeFloor source to create an in process HTTP Server (useful for testing).
// Note that applications are normally configured using the WoOF graphical configuration.
HttpServerAutoWireOfficeFloorSource server = new HttpServerAutoWireOfficeFloorSource();
// Add a dynamic web page (PageLogic is just a POJO)
server.addHttpTemplate("page.html", PageLogic.class);
// Add configured DataSource for dependency injection
server.addManagedObject(DataSourceManagedObjectSource.class, null, DataSource.class).loadProperties("datasource.properties");
// Assign Team (specific thread pool) responsible for executing the methods with a DataSource dependency
server.assignTeam(LeaderFollowerTeamSource.class, DataSource.class).addProperty("size", "10");
// Start the HTTP Server
server.openOfficeFloor();
Further examples can be found in the Quick Tutorials.
The above example was limited to code configuration. The further value of OfficeFloor lies in its graphical configuration, which is the more preferred means of configuration.
An example graphical configuration from WoOF (Web on OfficeFloor) for web site navigation is:

To use the graphical configuration install the OfficeFloor Eclipse plug-ins.
To find out more about OfficeFloor: