March 12 & 13, 2007 Fusebox 5.5 Scaffolding Kevin Roche Objective Internet Ltd
Who am I? Kevin Roche Cold Fusion Programmer11 years Internet Development 12 years Adobe Registered CF Trainer 8 years TVCFUG Manager Team Fusebox Member
12 & 13, Themes for Fusebox 5.5 Simplification The main complaint about Fusebox 4.x through Fusebox 5.1 is the use of XML to configure the application. CFCs can replace Fusebox.xml Circuit.xml Default values for most configuration
Themes for Fusebox 5.5 Extensibility Lexicons – Standard Lexicons for ColdSpring, Reactor, Transfer Plugins – Standard Plugin for Assertions Scaffolding – Scaffolder Code Generator Quickly generating basic data management applications. March 12 & 13,
What is scaffolding ? Architecture Building Scaffolding Support during the building process. Building Blocks which we modify and are actually used by the application. Scaffolder = Component Factory March 12 & 13,
What does it do? Database Introspection Code Generation March 12 & 13,
XML Metadata What? More XML!!!! A standardised way to define the data in the application. Extracted from the database by DB Introspection phase. Can be edited to improve generated code. March 12 & 13,
Code Generation Phase Uses Peter Bell’s cfTemplate ColdFusion based Template No need to learn XSLT! Create your own Templates Your application can be converted into a template. Now you can generate more of the same. March 12 & 13,
How do you use it? Copy the sample index.cfm file into your application Add the following parameter to your URL: index.cfm?scaffolding.go=display March 12 & 13,
Demo March 12 & 13, Click Next
Configuration March 12 & 13, Choose a Datasource Give your Project a name Choose a Template You can decide to omit some tables
Comments March 12 & 13,
Code Generation March 12 & 13, Choose to: Introspect Build Watch your code being built
Completed Application March 12 & 13, List Page Edit Page
Generated Code Structure Controller Forum Model mForum View vLayout vForum March 12 & 13,
Controller Fuseactions List View Add Add_Action Edit Edit_Action Delete March 12 & 13,
Model (ColdSpring template version) circuit.xml xxxxService xxxxRecord xxxxDAO xxxxGateway xxxxVO xxxxTO March 12 & 13,
Display Pages dsp_layout.cfm dsp_display_xxxx.cfm dsp_form_xxxx.cfm dsp_list_xxx.cfm What data’s displayed? March 12 & 13,
Roll your own Some examples of metadata.cfc methods getTablesFromXML() getSelectedTableAlias() getFieldsFromXML(table:string) getPKFieldsFromXML(table:string) getJoinedFieldsFromXML(table:string) getRelationshipsFromXML(table:string, type:string) March 12 & 13,
Roll your own cfTemplate code generator becomes > #getProject()# becomes $$getProject()$$ March 12 & 13,
DB Introspection Phase Current Status – Dec 2007 MSSQL 2000 or 2005 Oracle – Volunteers Needed MySQL – Volunteers Needed Doug Hughes has offered code from Reactor March 12 & 13,
Code Generation Phase Current Status – Templates Now Available Reactor & Fusebox XML Based Maintenance Application ColdSpring & Fusebox XML Based Maintenance Application Templates Under Construction Coldspring & Fusebox CFC based Maintenance Application March 12 & 13,
Future Plans CFC based templates Wireframe tool as a datasource Introspect CFCs Application specific templates Forums Shop Suggestions ? March 12 & 13,
Questions ? March 12 & 13,