I blogged earlier this month that ColdFusion Builder 2 ships with a number of extensions for the major ColdFusion frameworks. MachBuilder is the extension for the Mach-II framework, and was built by Kurt Wiersma and I.
The extension ships with ColdFusion Builder 2 and can be found in the "extensions" folder inside in the ColdFusion Builder 2 install directory. You can also get it as part of the core Mach-II 1.9 download.
MachBuilder currently has two major features:
1. Configure and create a new Mach-II application skeleton
This option is available to you when you right-click on a project folder or a folder within a project. Selecting this option brings up a simple form that provides you some configuration options for a new Mach-II app skeleton. This includes:
- Specify the application name
- Specify the event parameter name
- Enabling the ColdSpring property
- Enabling SES URL writing in the Mach-II app
- Enabling the on-screen Mach-II logger
- Providing the password for the Mach-II Dashboard
- Specify a custom webroot path if you don't want to use the default
When you tell the extension to create the application skeleton, it parses through the application sekeleton files and inserts the values that you enetered as required. If you wanted the ColdSpring property to be set up, it does that for you. The same goes for SES URL rewriting (using the default /key/value/ pattern), and the logger. The Dashboard is included by default, as it's part of the core Mach-II 1.9 framework. If you don't want to include the Dashboard, you can delete the related lines from the mach-ii.xml configuration file.
All of the files end up in the folder which you right-clicked on to fire off the extension. You'll want to make sure that you're running the extension in the correct folder. If you want the Mach-II application skeleton files to be put into your webroot, then right-click on your webroot folder. If you want the application to live inside a folder in your webroot, right-click on that specific folder.
2. Display Mach-II Dashboard
This option is only available when you click on files in a project. It does one thing: launch the incredibly useful Mach-II Dashboard for the currently selected server in a view inside of ColdFusion Builder. That view stays open, like all ColdFusion Builder 2 extensions that create views, until you either close it or quit out of ColdFusion Builder 2.
The Mach-II Dashboard is what I would consider to be a required tool in developing Mach-II applications. If you're not using it and you develop using Mach-II, you're missing out on significantly improved development.
We had hoped to provide code assist on Mach-II configuration XML files with this extension, but ColdFusion Builder extensions currently do not work on non-cfc/cfm files. The ColdFusion Builder team is aware of this issue, but if you want to make sure that this becomes possible in the next version of ColdFusion Builder, then please vote for this enhancement request!
Side note: You can get code hinting and assistance on your Mach-II configuration XML files if you use the Mach-II DTD and the free Eclipse Web Tools Project (WTP) XML editor (not Aptana, which is the default XML editor in ColdFusion Builder).
One other feature of this extension is that it will automatically notify you when there's an update to the extension. (Kurt spent a lot of time for this 1.0 release implementing the auto-update mechanism.) We plan on adding more features to it in the future (see this Google Doc for more), and you're encouraged to add feature requests to the Mach-II Trac site. Mach-II is community-driven, after all.
If you want to see how this extension works, including the callback to refresh the Eclipse project view when creating a new Mach-II project, look at the "Mach II Builder Extension" directory that gets created in your webroot when you install the extension into CFBuilder.