diff --git a/cms/cms.ecf b/cms/cms-safe.ecf similarity index 94% rename from cms/cms.ecf rename to cms/cms-safe.ecf index 0248847..5da317c 100644 --- a/cms/cms.ecf +++ b/cms/cms-safe.ecf @@ -9,11 +9,10 @@ - - + - + diff --git a/examples/api/roc_api.ecf b/examples/api/roc_api.ecf index adf512d..a68d4e1 100644 --- a/examples/api/roc_api.ecf +++ b/examples/api/roc_api.ecf @@ -16,12 +16,12 @@ - + - + diff --git a/examples/roc_api/modules/demo/cms_demo_module-safe.ecf b/examples/roc_api/modules/demo/cms_demo_module-safe.ecf new file mode 100644 index 0000000..dd678f2 --- /dev/null +++ b/examples/roc_api/modules/demo/cms_demo_module-safe.ecf @@ -0,0 +1,23 @@ + + + + + + /.git$ + /EIFGENs$ + /.svn$ + + + + + + + + + + + + + + diff --git a/examples/roc_api/modules/demo/cms_demo_module.e b/examples/roc_api/modules/demo/cms_demo_module.e new file mode 100644 index 0000000..aeabe7b --- /dev/null +++ b/examples/roc_api/modules/demo/cms_demo_module.e @@ -0,0 +1,93 @@ +note + description: "Summary description for {CMS_DEMO_MODULE}." + author: "" + date: "$Date$" + revision: "$Revision$" + +class + CMS_DEMO_MODULE + +inherit + CMS_MODULE + +create + make + +feature {NONE} -- Initialization + + make (a_config: CMS_SETUP) + do + name := "Demo module" + version := "1.0" + description := "Service to demonstrate and test cms system" + package := "demo" + config := a_config + end + + config: CMS_SETUP + -- Node configuration. + +feature -- Access: router + + router: WSF_ROUTER + -- Node router. + do + create Result.make (2) + + map_uri_template_agent (Result, "/demo/", agent handle_demo) + map_uri_template_agent (Result, "/book/{id}", agent handle_demo_entry) + end + +feature -- Handler + + handle_demo, + handle_demo_entry (req: WSF_REQUEST; res: WSF_RESPONSE) + local + m: WSF_NOT_FOUND_RESPONSE + do + create m.make (req) + m.set_body ("Not yet implemented!") + res.send (m) + end + +feature -- Mapping helper: uri template + + map_uri_template (a_router: WSF_ROUTER; a_tpl: STRING; h: WSF_URI_TEMPLATE_HANDLER) + -- Map `h' as handler for `a_tpl' + require + a_tpl_attached: a_tpl /= Void + h_attached: h /= Void + do + map_uri_template_with_request_methods (a_router, a_tpl, h, Void) + end + + map_uri_template_with_request_methods (a_router: WSF_ROUTER; a_tpl: READABLE_STRING_8; h: WSF_URI_TEMPLATE_HANDLER; rqst_methods: detachable WSF_REQUEST_METHODS) + -- Map `h' as handler for `a_tpl' for request methods `rqst_methods'. + require + a_tpl_attached: a_tpl /= Void + h_attached: h /= Void + do + a_router.map_with_request_methods (create {WSF_URI_TEMPLATE_MAPPING}.make (a_tpl, h), rqst_methods) + end + +feature -- Mapping helper: uri template agent + + map_uri_template_agent (a_router: WSF_ROUTER; a_tpl: READABLE_STRING_8; proc: PROCEDURE [ANY, TUPLE [req: WSF_REQUEST; res: WSF_RESPONSE]]) + -- Map `proc' as handler for `a_tpl' + require + a_tpl_attached: a_tpl /= Void + proc_attached: proc /= Void + do + map_uri_template_agent_with_request_methods (a_router, a_tpl, proc, Void) + end + + map_uri_template_agent_with_request_methods (a_router: WSF_ROUTER; a_tpl: READABLE_STRING_8; proc: PROCEDURE [ANY, TUPLE [req: WSF_REQUEST; res: WSF_RESPONSE]]; rqst_methods: detachable WSF_REQUEST_METHODS) + -- Map `proc' as handler for `a_tpl' for request methods `rqst_methods'. + require + a_tpl_attached: a_tpl /= Void + proc_attached: proc /= Void + do + map_uri_template_with_request_methods (a_router, a_tpl, create {WSF_URI_TEMPLATE_AGENT_HANDLER}.make (proc), rqst_methods) + end + +end diff --git a/examples/roc_api/roc_api.ecf b/examples/roc_api/roc_api-safe.ecf similarity index 91% rename from examples/roc_api/roc_api.ecf rename to examples/roc_api/roc_api-safe.ecf index fb9f85c..c8576e2 100644 --- a/examples/roc_api/roc_api.ecf +++ b/examples/roc_api/roc_api-safe.ecf @@ -10,8 +10,9 @@ - - + + + diff --git a/examples/roc_api/site/config/application_configuration.json b/examples/roc_api/site/config/application_configuration.json index d493ed8..793f8ef 100644 --- a/examples/roc_api/site/config/application_configuration.json +++ b/examples/roc_api/site/config/application_configuration.json @@ -24,7 +24,7 @@ "backup_count":"4" }, "server": { - "mode":"api" + "mode":"html" } } diff --git a/examples/roc_api/src/ewf_roc_server.e b/examples/roc_api/src/ewf_roc_server.e index 875128d..5fd497b 100644 --- a/examples/roc_api/src/ewf_roc_server.e +++ b/examples/roc_api/src/ewf_roc_server.e @@ -136,6 +136,11 @@ feature -- CMS setup create {BASIC_AUTH_MODULE} m.make (a_setup) m.enable a_setup.modules.extend (m) + + create {CMS_DEMO_MODULE} m.make (a_setup) + m.enable + a_setup.modules.extend (m) + end setup_storage (a_setup: CMS_SETUP) diff --git a/layout/layout.ecf b/layout/layout-safe.ecf similarity index 100% rename from layout/layout.ecf rename to layout/layout-safe.ecf diff --git a/persistence/implementation/mysql/persistence_mysql.ecf b/persistence/implementation/mysql/persistence_mysql-safe.ecf similarity index 96% rename from persistence/implementation/mysql/persistence_mysql.ecf rename to persistence/implementation/mysql/persistence_mysql-safe.ecf index d66d48e..6811629 100644 --- a/persistence/implementation/mysql/persistence_mysql.ecf +++ b/persistence/implementation/mysql/persistence_mysql-safe.ecf @@ -12,7 +12,7 @@ - + diff --git a/persistence/implementation/mysql/tests/tests.ecf b/persistence/implementation/mysql/tests/tests.ecf index cf85bf2..363c33c 100644 --- a/persistence/implementation/mysql/tests/tests.ecf +++ b/persistence/implementation/mysql/tests/tests.ecf @@ -8,7 +8,7 @@ - + diff --git a/persistence/implementation/sqlite/persistence_sqlite.ecf b/persistence/implementation/sqlite/persistence_sqlite-safe.ecf similarity index 96% rename from persistence/implementation/sqlite/persistence_sqlite.ecf rename to persistence/implementation/sqlite/persistence_sqlite-safe.ecf index c4c203c..90af783 100644 --- a/persistence/implementation/sqlite/persistence_sqlite.ecf +++ b/persistence/implementation/sqlite/persistence_sqlite-safe.ecf @@ -10,7 +10,7 @@ - + diff --git a/persistence/implementation/sqlite/tests/tests.ecf b/persistence/implementation/sqlite/tests/tests-safe.ecf similarity index 97% rename from persistence/implementation/sqlite/tests/tests.ecf rename to persistence/implementation/sqlite/tests/tests-safe.ecf index d401b33..cdeb22e 100644 --- a/persistence/implementation/sqlite/tests/tests.ecf +++ b/persistence/implementation/sqlite/tests/tests-safe.ecf @@ -8,7 +8,7 @@ - +