Skip to content

Commit 8ea443c

Browse files
committed
Added abstraction WSF_ROUTED, and WSF_FILTERED.
Added under library/server/obsolete/v0 the previous non concurrent friendly version of EWF/WSF, for backward compatiblity. Removed WSF_CALLBACK_SERVICE and WSF_TO_WGI_SERVICE which are not need with new EWF.
1 parent 019393f commit 8ea443c

File tree

64 files changed

+2741
-90
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

64 files changed

+2741
-90
lines changed

examples/restbucksCRUD/src/restbucks_server_execution.e

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ inherit
1414
initialize
1515
end
1616

17-
WSF_URI_TEMPLATE_HELPER_FOR_ROUTED_EXECUTION
17+
WSF_ROUTED_URI_TEMPLATE_HELPER
1818

1919
WSF_HANDLER_HELPER
2020

examples/upload_image/src/image_uploader_execution.e

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ inherit
1717

1818
WSF_NO_PROXY_POLICY
1919

20-
WSF_URI_TEMPLATE_HELPER_FOR_ROUTED_EXECUTION
20+
WSF_ROUTED_URI_TEMPLATE_HELPER
2121

2222
SHARED_EXECUTION_ENVIRONMENT
2323

library/security/openid/consumer/demo/application_execution.e

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ inherit
1313
requires_proxy
1414
end
1515

16-
WSF_URI_TEMPLATE_HELPER_FOR_ROUTED_EXECUTION
16+
WSF_ROUTED_URI_TEMPLATE_HELPER
1717

1818
WSF_NO_PROXY_POLICY
1919

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
<?xml version="1.0" encoding="ISO-8859-1"?>
2+
<system xmlns="http://www.eiffel.com/developers/xml/configuration-1-11-0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.eiffel.com/developers/xml/configuration-1-11-0 http://www.eiffel.com/developers/xml/configuration-1-11-0.xsd" name="connector_libfcgi" uuid="59C57E56-3EE6-4EF7-873F-7ED084B0EB22" library_target="connector_libfcgi">
3+
<target name="connector_libfcgi">
4+
<root all_classes="true"/>
5+
<file_rule>
6+
<exclude>/EIFGENs$</exclude>
7+
<exclude>/\.git$</exclude>
8+
<exclude>/\.svn$</exclude>
9+
</file_rule>
10+
<option warning="true" full_class_checking="true" is_attached_by_default="true" void_safety="all" syntax="transitional">
11+
</option>
12+
<library name="base" location="$ISE_LIBRARY\library\base\base-safe.ecf"/>
13+
<library name="ewsgi" location="..\..\ewsgi-safe.ecf"/>
14+
<library name="http" location="..\..\..\..\..\..\network\protocol\http\http-safe.ecf"/>
15+
<library name="libfcgi" location="..\..\..\..\..\libfcgi\libfcgi-safe.ecf"/>
16+
<cluster name="src" location="..\..\..\..\..\ewsgi\connectors\libfcgi\src\" recursive="true">
17+
<file_rule>
18+
<exclude>/wgi_.*_connector.e$</exclude>
19+
</file_rule>
20+
</cluster>
21+
<cluster name="src_v0" location=".\" recursive="true"/>
22+
</target>
23+
</system>
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
<?xml version="1.0" encoding="ISO-8859-1"?>
2+
<system xmlns="http://www.eiffel.com/developers/xml/configuration-1-11-0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.eiffel.com/developers/xml/configuration-1-11-0 http://www.eiffel.com/developers/xml/configuration-1-11-0.xsd" name="connector_libfcgi" uuid="59C57E56-3EE6-4EF7-873F-7ED084B0EB22" library_target="connector_libfcgi">
3+
<target name="connector_libfcgi">
4+
<root all_classes="true"/>
5+
<file_rule>
6+
<exclude>/EIFGENs$</exclude>
7+
<exclude>/\.git$</exclude>
8+
<exclude>/\.svn$</exclude>
9+
</file_rule>
10+
<option warning="true" full_class_checking="true" void_safety="none" syntax="transitional">
11+
</option>
12+
<library name="base" location="$ISE_LIBRARY\library\base\base.ecf"/>
13+
<library name="ewsgi" location="..\..\ewsgi.ecf"/>
14+
<library name="http" location="..\..\..\..\..\..\network\protocol\http\http.ecf"/>
15+
<library name="libfcgi" location="..\..\..\..\..\libfcgi\libfcgi.ecf"/>
16+
<cluster name="src" location=".\" recursive="true"/>
17+
</target>
18+
</system>
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
${NOTE_KEYWORD}
2+
copyright: "2011-${YEAR}, Eiffel Software and others"
3+
license: "Eiffel Forum License v2 (see http://www.eiffel.com/licensing/forum.txt)"
4+
source: "[
5+
Eiffel Software
6+
5949 Hollister Ave., Goleta, CA 93117 USA
7+
Telephone 805-685-1006, Fax 805-685-6869
8+
Website http://www.eiffel.com
9+
Customer support http://support.eiffel.com
10+
]"
Lines changed: 118 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,118 @@
1+
note
2+
description: "Summary description for {WGI_LIBFCGI_CONNECTOR}."
3+
legal: "See notice at end of class."
4+
status: "See notice at end of class."
5+
date: "$Date$"
6+
revision: "$Revision$"
7+
8+
class
9+
WGI_LIBFCGI_CONNECTOR
10+
11+
inherit
12+
WGI_CONNECTOR
13+
14+
create
15+
make
16+
17+
feature {NONE} -- Initialization
18+
19+
make (a_service: like service)
20+
do
21+
service := a_service
22+
create fcgi.make
23+
create input.make (fcgi)
24+
create output.make (fcgi)
25+
end
26+
27+
feature -- Access
28+
29+
Name: STRING_8 = "libFCGI"
30+
-- Name of Current connector
31+
32+
Version: STRING_8 = "0.1"
33+
-- Version of Current connector
34+
35+
feature {NONE} -- Access
36+
37+
service: WGI_SERVICE
38+
-- Gateway Service
39+
40+
feature -- Server
41+
42+
launch
43+
local
44+
res: INTEGER
45+
do
46+
from
47+
res := fcgi.fcgi_listen
48+
until
49+
res < 0
50+
loop
51+
process_fcgi_request (fcgi.updated_environ_variables, input, output)
52+
res := fcgi.fcgi_listen
53+
end
54+
end
55+
56+
feature -- Execution
57+
58+
process_fcgi_request (vars: STRING_TABLE [READABLE_STRING_8]; a_input: like input; a_output: like output)
59+
local
60+
req: WGI_REQUEST_FROM_TABLE
61+
res: detachable WGI_RESPONSE_STREAM
62+
rescued: BOOLEAN
63+
do
64+
if not rescued then
65+
a_input.reset
66+
create req.make (vars, a_input, Current)
67+
create res.make (a_output, a_output)
68+
service.execute (req, res)
69+
res.push
70+
else
71+
if attached (create {EXCEPTION_MANAGER}).last_exception as e and then attached e.exception_trace as l_trace then
72+
if res /= Void then
73+
if not res.status_is_set then
74+
res.set_status_code ({HTTP_STATUS_CODE}.internal_server_error, Void)
75+
end
76+
if res.message_writable then
77+
res.put_string ("<pre>")
78+
res.put_string (l_trace)
79+
res.put_string ("</pre>")
80+
end
81+
res.push
82+
end
83+
end
84+
end
85+
rescue
86+
if not rescued then
87+
rescued := True
88+
retry
89+
end
90+
end
91+
92+
feature -- Input/Output
93+
94+
input: WGI_LIBFCGI_INPUT_STREAM
95+
-- Input from client (from httpd server via FCGI)
96+
97+
output: WGI_LIBFCGI_OUTPUT_STREAM
98+
-- Output to client (via httpd server/fcgi)
99+
100+
feature {NONE} -- Implementation
101+
102+
fcgi: FCGI
103+
104+
invariant
105+
fcgi_attached: fcgi /= Void
106+
107+
note
108+
copyright: "2011-2013, Eiffel Software and others"
109+
license: "Eiffel Forum License v2 (see http://www.eiffel.com/licensing/forum.txt)"
110+
source: "[
111+
Eiffel Software
112+
5949 Hollister Ave., Goleta, CA 93117 USA
113+
Telephone 805-685-1006, Fax 805-685-6869
114+
Website http://www.eiffel.com
115+
Customer support http://support.eiffel.com
116+
]"
117+
118+
end
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
${NOTE_KEYWORD}
2+
copyright: "2011-${YEAR}, Jocelyn Fiat, Javier Velilla, Eiffel Software and others"
3+
license: "Eiffel Forum License v2 (see http://www.eiffel.com/licensing/forum.txt)"
4+
source: "[
5+
Eiffel Software
6+
5949 Hollister Ave., Goleta, CA 93117 USA
7+
Telephone 805-685-1006, Fax 805-685-6869
8+
Website http://www.eiffel.com
9+
Customer support http://support.eiffel.com
10+
]"
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
<?xml version="1.0" encoding="ISO-8859-1"?>
2+
<system xmlns="http://www.eiffel.com/developers/xml/configuration-1-12-0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.eiffel.com/developers/xml/configuration-1-12-0 http://www.eiffel.com/developers/xml/configuration-1-12-0.xsd" name="connector_nino" uuid="F91861FB-4FEA-455F-9570-828D7903DC64" library_target="connector_nino">
3+
<target name="connector_nino">
4+
<root all_classes="true"/>
5+
<file_rule>
6+
<exclude>/EIFGENs$</exclude>
7+
<exclude>/\.git$</exclude>
8+
<exclude>/\.svn$</exclude>
9+
</file_rule>
10+
<option warning="true" full_class_checking="true" is_attached_by_default="true" void_safety="all" syntax="transitional">
11+
</option>
12+
<library name="base" location="$ISE_LIBRARY\library\base\base-safe.ecf"/>
13+
<library name="encoder" location="..\..\..\..\..\..\text\encoder\encoder-safe.ecf"/>
14+
<library name="ewsgi" location="..\..\ewsgi-safe.ecf" readonly="false"/>
15+
<library name="http" location="..\..\..\..\..\..\network\protocol\http\http-safe.ecf"/>
16+
<library name="nino" location="..\..\..\..\..\..\..\contrib\library\network\server\nino\nino-safe.ecf" readonly="false">
17+
<renaming old_name="HTTP_CONSTANTS" new_name="NINO_HTTP_CONSTANTS"/>
18+
</library>
19+
<cluster name="src" location="..\..\..\..\..\ewsgi\connectors\nino\src\" recursive="true">
20+
<file_rule>
21+
<exclude>/wgi_.*_handler.e$</exclude>
22+
<exclude>/wgi_.*_connector.e$</exclude>
23+
<exclude>/.*_service.e$</exclude>
24+
</file_rule>
25+
</cluster>
26+
<cluster name="src_v0" location=".\src\" recursive="true"/>
27+
</target>
28+
</system>
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
<?xml version="1.0" encoding="ISO-8859-1"?>
2+
<system xmlns="http://www.eiffel.com/developers/xml/configuration-1-12-0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.eiffel.com/developers/xml/configuration-1-12-0 http://www.eiffel.com/developers/xml/configuration-1-12-0.xsd" name="connector_nino" uuid="F91861FB-4FEA-455F-9570-828D7903DC64" library_target="connector_nino">
3+
<target name="connector_nino">
4+
<root all_classes="true"/>
5+
<file_rule>
6+
<exclude>/EIFGENs$</exclude>
7+
<exclude>/\.git$</exclude>
8+
<exclude>/\.svn$</exclude>
9+
</file_rule>
10+
<option warning="true" full_class_checking="true" void_safety="none" syntax="transitional">
11+
</option>
12+
<library name="base" location="$ISE_LIBRARY\library\base\base.ecf"/>
13+
<library name="encoder" location="..\..\..\..\..\..\text\encoder\encoder.ecf"/>
14+
<library name="ewsgi" location="..\..\ewsgi.ecf" readonly="false"/>
15+
<library name="http" location="..\..\..\..\..\..\network\protocol\http\http.ecf"/>
16+
<library name="nino" location="..\..\..\..\..\..\..\contrib\library\network\server\nino\nino.ecf" readonly="false">
17+
<renaming old_name="HTTP_CONSTANTS" new_name="NINO_HTTP_CONSTANTS"/>
18+
</library>
19+
<cluster name="src" location="..\..\..\..\..\ewsgi\connectors\nino\src\" recursive="true">
20+
<file_rule>
21+
<exclude>/wgi_.*_handler.e$</exclude>
22+
<exclude>/wgi_.*_connector.e$</exclude>
23+
<exclude>/.*_service.e$</exclude>
24+
</file_rule>
25+
</cluster>
26+
<cluster name="src" location=".\src\" recursive="true"/>
27+
</target>
28+
</system>

0 commit comments

Comments
 (0)