Changeset 9128
- Timestamp:
- 06/19/08 16:59:55 (3 months ago)
- Files:
-
- sandbox/aida/demo-app/app/controllers/say_controller.js (modified) (3 diffs)
- sandbox/aida/demo-app/app/models/article.js (modified) (3 diffs)
- sandbox/aida/demo-app/app/test (added)
- sandbox/aida/demo-app/app/test/unit (added)
- sandbox/aida/demo-app/app/test/unit/article_test.js (added)
- sandbox/aida/demo-app/app/test/unit/article_test_.js (added)
- sandbox/aida/demo-app/app/test/unit/main_test.js (added)
- sandbox/aida/demo-app/config/environments/development (added)
- sandbox/aida/demo-app/config/environments/development.js (deleted)
- sandbox/aida/demo-app/config/environments/development/development.js (added)
- sandbox/aida/demo-app/config/environments/development/log4j.properties (added)
- sandbox/aida/demo-app/config/environments/production (added)
- sandbox/aida/demo-app/config/environments/production.js (deleted)
- sandbox/aida/demo-app/config/environments/production/production.js (added)
- sandbox/aida/demo-app/config/environments/test (added)
- sandbox/aida/demo-app/config/environments/test.js (deleted)
- sandbox/aida/demo-app/config/environments/test/log4j.properties (added)
- sandbox/aida/demo-app/main.js (modified) (1 diff)
- sandbox/aida/demo-app/test.js (added)
- sandbox/aida/modules/aida/controller.js (modified) (4 diffs)
- sandbox/aida/modules/aida/filters.js (added)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
sandbox/aida/demo-app/app/controllers/say_controller.js
r9111 r9128 13 13 function SayController(req, res, session) { 14 14 15 this.bla = "bla" 15 beforeFilter(authenticate); 16 afterFilter(afterFilter1); 17 afterFilter(afterFilter2); 18 19 this.bla = "bla"; 16 20 17 21 function hidden() { … … 24 28 25 29 this.index_action = function() { 30 /* 26 31 res.writeln("---" + getShortName()) 27 32 res.writeln("---" + this.foo1) 28 33 res.writeln("---" + this.foo2) 34 */ 29 35 } 30 36 … … 59 65 res.writeln("Hello World!" + __name__ + ":" + bar + ":" + getShortName()); 60 66 } 67 68 // filters 69 70 function authenticate() { 71 return (req.data.action === "index"); 72 } 73 74 function afterFilter1() { 75 logger.info("do some logging after request:" + req.route) 76 } 77 78 function afterFilter2(content) { 79 return content + "!!!!!!!!"; 80 } 81 61 82 62 83 } sandbox/aida/demo-app/app/models/article.js
r9095 r9128 17 17 var article = new Article(props); 18 18 db.save(article); 19 return 'Article "' + article.title + '" was created successfully.';19 return article; 20 20 } 21 21 … … 25 25 article.updateTime = new java.util.Date(); 26 26 db.save(article); 27 return 'Article "' + article.title + '" was updated successfully.';27 return article; 28 28 } 29 29 … … 31 31 var article = db.get('Article', id); 32 32 db.remove(article); 33 return 'Article "' + article.title + '" was deleted successfully.';33 return article; 34 34 } sandbox/aida/demo-app/main.js
r9115 r9128 1 1 importModule('helma.app', 'app'); 2 2 importModule('helma.rhino', 'rhino'); 3 importModule('helma.logging', 'logging'); 3 4 // this is just for convinience while developing/debugging aida - i will remove this in the future 4 5 importModule("helma.shell", "shell"); 5 // this is just for convinience while developing/debugging aida - i will remove this in the future6 6 global.shell = shell; 7 7 8 logging.setConfig(getResource('config/log4j.properties').name); 8 // this is just for convinience while developing/debugging aida - i will remove this in the future 9 importModule('helma.logging', 'logging'); 10 logging.setConfig(getResource('config/environments/development/log4j.properties').name); 9 11 global.logger = logging.getLogger(); 10 12 sandbox/aida/modules/aida/controller.js
r9115 r9128 1 2 importModule('helma.logging', 'logging'); 3 logging.setConfig(getResource('config/environments/development/log4j.properties').name); 4 var logger = logging.getLogger(__name__); 5 1 6 importModule('helma.skin'); 2 7 importModule('templating.este', 'este'); … … 4 9 importModule('javascript.prototype'); 5 10 importModule('routing'); 6 7 importFromModule("config.environments.development", "config"); 11 importFromModule("filters", "*"); 12 13 importFromModule("config.environments.development.development", "config"); 8 14 9 15 this.context = {}; 16 this.helpers = []; 10 17 11 18 function getControllerInstance(name, req, res, session) { … … 37 44 function handleRequest(controllerName, req, res, session) { 38 45 var routeSet = routing.loadRoutes(controllerName).routeSet; 39 var route = req.route = req.route || routeSet.recognizeRequest(req); 40 if (!route) return; // FIXME 404 41 var controller = getControllerInstance(route.controllerName, req, res, session); 42 43 Object.extend(req.data, route.params); 44 Object.extend(req.params, route.params); 45 46 route.handler = controller.getAction(route); 46 req.route = req.route || routeSet.recognizeRequest(req); 47 if (!req.route) return; // FIXME 404 48 var controller = getControllerInstance(req.route.controllerName, req, res, session); 49 50 Object.extend(req.data, req.route.params); 51 Object.extend(req.params, req.route.params); 52 53 req.route.handler = controller.getAction(req.route); 54 controller.actionName = req.route.action; 55 47 56 var content = ""; 57 if (!controller.beforeFilters.all()) return; 58 var content = controller.callAction(req.route.handler, req, res, session); 59 for (var i=0; i<controller.afterFilters.length; i++) { 60 content = controller.afterFilters[i].call(controller, content, req, res, session) || content; 61 } 62 res.write(content); 63 } 64 65 66 function callAction(handler, req, res, session) { 48 67 res.push(); 49 68 // try { 50 route.handler.call(controller);69 handler.call(this); 51 70 /* } catch(e) { 52 71 res.write(e.rhinoException); 53 72 } */ 73 if (!res.calledRender) this.render(); 54 74 content = res.pop(); 55 (res.calledRender) ? res.write(content) : controller.render(); 56 } 57 75 return content; 76 } 58 77 59 78 /** … … 371 390 } 372 391 392 373 393 importFromModule("helma.file", "File"); 374 394 /**