diff --git a/examples/simple/application.e b/examples/simple/application.e index 532ddbfd..159f0cf4 100644 --- a/examples/simple/application.e +++ b/examples/simple/application.e @@ -8,12 +8,23 @@ class inherit WSF_DEFAULT_SERVICE + redefine + initialize + end create make_and_launch feature {NONE} -- Initialization + initialize + -- Initialize current service. + do + set_service_option ("port", 9090) + end + +feature -- Basic operations + execute (req: WSF_REQUEST; res: WSF_RESPONSE) do -- To send a response we need to setup, the status code and diff --git a/library/server/wsf/src/response/wsf_default_router_response.e b/library/server/wsf/src/response/wsf_default_router_response.e index 23b7ef99..327f97e4 100644 --- a/library/server/wsf/src/response/wsf_default_router_response.e +++ b/library/server/wsf/src/response/wsf_default_router_response.e @@ -24,6 +24,7 @@ feature {NONE} -- Initialization do router := a_router make (req) + set_suggestion_only_method (True) end feature -- Access @@ -36,6 +37,9 @@ feature -- Settings documentation_included: BOOLEAN -- Include self-documentation from `router' in the response? + suggestion_only_method: BOOLEAN + -- Display only suggestion for `req' method ? + feature -- Change set_documentation_included (b: BOOLEAN) @@ -43,6 +47,14 @@ feature -- Change documentation_included := b end + set_suggestion_only_method (b: BOOLEAN) + -- Set `suggestion_only_method' to `b' + do + suggestion_only_method := b + ensure + suggestion_only_method_set: suggestion_only_method = b + end + feature {WSF_RESPONSE} -- Output send_to (res: WSF_RESPONSE) @@ -138,10 +150,14 @@ feature {NONE} -- Implementation not_found_message (req: WSF_REQUEST): WSF_NOT_FOUND_RESPONSE local vis: WSF_ROUTER_AGENT_ITERATOR + l_method: detachable READABLE_STRING_8 do Result := Precursor (req) if documentation_included then create vis + if suggestion_only_method then + l_method := req.request_method + end vis.on_item_actions.extend (agent (i: WSF_ROUTER_ITEM; r: WSF_NOT_FOUND_RESPONSE; m: detachable READABLE_STRING_8) local l_is_hidden: BOOLEAN @@ -174,7 +190,7 @@ feature {NONE} -- Implementation r.add_suggested_text (s, Void) end end - end (?, Result, req.request_method)) + end (?, Result, l_method)) vis.process_router (router) end end diff --git a/library/server/wsf/src/response/wsf_method_not_allowed_response.e b/library/server/wsf/src/response/wsf_method_not_allowed_response.e index ea1e0d70..4b33868a 100644 --- a/library/server/wsf/src/response/wsf_method_not_allowed_response.e +++ b/library/server/wsf/src/response/wsf_method_not_allowed_response.e @@ -136,11 +136,11 @@ feature {WSF_RESPONSE} -- Output s.append ( "[