Transfer ORM Plugin and ColdBox Importer Released
Building on the previous article where I announced the release of a Fusebox importer, I've now released a similar ColdBox importer that allows you to run ColdBox applications within the context of an onTap framework application as well as a Transfer ORM plugin that downloads, configures and installs Mark Mandel's ORM framework.
I think this is really starting to show how the onTap framework accomplishes one of my long-term goals of encouraging greater collaboration within the community.
In one way ColdBox turned out to be slightly less helpful than Fusebox in creating this integration, because there's no programmatic way for me to set the "AppMapping" setting in the Application.cfc, which means that the installer can't actually do everything for you, you have to set the AppMapping setting yourself in the ColdBox config xml. Bummer. Maybe a future version of ColdBox will allow that.
In another way, ColdBox turned out to be slightly more helpful in creating integration. In both cases the primary method of integration is by a combination of executing the events from the Application.cfc (onApplicationStart, onSessionStart, etc.) and by calling the framework methods that launch and execute an individual request for each page of the application and then scraping the result content for the content elements we want in our onTap framework application. Although this is a less than ideal solution, it is far superior to simply scraping an http request for several reasons, including the fact that all the application and session variables are shared within our new onTap framework application, it's more efficient than an additional http request, and the onTap framework structure allows us to seamlessly modify the CSS or JavaScript without touching the original Fusebox or ColdBox application. The little bit of extra goodness that ColdBox offers in this respect is that the framework gives me a handy RunEvent() method that can be used for further integration.
So for example if I installed a forum written in ColdBox and I wanted to sync-up the user database from the forum with my own user management in the onTap framework (check out the Members onTap plugin) I can look in my user management directories in my own application and I can slip in a handy little call to the ColdBox RunEvent() method any time I create a new user or update a user, to keep the two systems in-sync for a single-sign-on application.
On a similar note, I've also just published a new Transfer ORM Plugin. I found a handy little Transfer Config project on RIAForge from Rolando Lopez, which uses the new CFDBINFO tag in CF8 to introspect your database and generate the required XML config file for the Transfer ORM.
What's really neat about this is that now you can get Transfer all set up and running in your onTap framework application with zero coding (and very little downloading). You just head over to your handy plugin manager, search for new plugins on the webservice, select the Transfer plugin and press the install button. After you've accepted the license agreement, the plugin will optionally download the latest version of Transfer and install it for you. Then it presents you with a small form with some options for how you'd like to generate your transfer config file and viola! You're ready to get transfer objects in your onTap application. :)
Kudos to Rolando for helping to make this possible, and of course to Mark Mandel for giving us Transfer.

There are no comments for this entry.
[Add Comment]