|
|




Contact Us Freedombase Pty Ltd 7 Woodlands Edge Templestowe 3106 Victoria, Australia General Enquiries Ph: +61 4 1837 1251 enquiries@freedombase.com Technical Support Ph: +61 4 1170 0016 support@freedombase.com |
Copyright 2010 Freedombase Pty Ltd |
Freedombase Architecture The fundamental architecture of Freedombase, including a description of a normal Web request and response. Please note that many Freedombase features are not described or included in this architecture diagram. [Click on the diagram to the left to open in a new window.] |
Step Description Step 1 A standard HTTP request is sent from any standard Web browser. Step 2 The Web server forwards the request to the Freedombase control code, using any kind of connection between the Web server and the database system that Freedombase is running on. Step 3 The Freedombase control code extracts data for each instance passed back from the page, and passes the data for each instance to the appropriate classes for processing. Step 4 The class can optionally integrate external code, that will be executed before the class does anything with the data, and can alter what the class will do. Step 5 The class applies any business logic and validation that has been defined, and that is relevant to the command being processed. The class may write data into the database, and may pull data out of the database, as part of this processing. Step 6 The class can optionally integrate external code, that will be executed after the class processes the data, and can alter what the class will return. Step 7 The class returns the processed data to the Freedombase control code. Step 8 The Freedombase control code determines what template to use/to return to the page, and executes that template code. Step 9 The template code can optionally integrate external code, that will be executed before the template code does anything, and can alter what the template will do. Step 10 If required, the template code will request data from classes. The request may be for a specific record/row/instance, or for data related to other data already retrieved. Step 11 The class can optionally integrate external code, that will be executed before the class does anything with the request for data, and can alter what the class will do with that request for data. Step 12 The class retrieves the data requested, or drills to find the data requested based on data already held, if appropriate. Step 13 The class can optionally integrate external code, that will be executed after the class processes the request for data, and can alter what the class will return. Step 14 The class returns the requested data to the template code, if appropriate. Step 15 The template code can optionally integrate external code, that will be executed after the template code completes processing, and can alter what the template code will return. Step 16 The template code returns the template output to the Freedombase control code, as a finished HTTP response or Web page ready to be displayed, with data and Freedombase commands integrated into the page. Step 17 The Freedombase control code returns a standard HTTP request to the Web server. The standard HTTP request contains the Template output from the template code. Step 18 The Web server returns the HTTP response to the Web browser, to be displayed, and ready for the next iteration to begin. |
Click to open in new window |