Commit Graph
24 Commits
Author SHA1 Message Date
Olivier Ligot 10c02219e3 Use execution_variable instead of context
This is mainly to be compatibe with other classes API.

In a lot of classes, we define methods like this:
```Eiffel
 method (req: WSF_REQUEST; res: WSF_RESPONSE)
    do
        ...
    end
```

With the context, the signature becomes:
```Eiffel
 method (ctx: C; req: WSF_REQUEST; res: WSF_RESPONSE)
    do
        ...
    end
```

So, I can't build a filter chain where one filter is with context
and one is without context (I can't call
WSF_FILTER.set_next (a_next: WSF_FILTER) with a filter that is a
descendant of WSF_CONTEXT_HANDLER).

Moreover, having to play with generic types just to pass some
data from one filter to another is a bit overkill imho.
Because this is really what I use contexts for:
to pass data from one filter to the next one.

Regarding execution_variable and strong typing, if we want to achieve these,
I realize we could write a class with one getter and one setter like this:

```Eiffel
  class
    TYPED_DATA

  feature -- Access

  user (req: WSF_REQUEST): detachable USER
    do
        if attached {USER} req.execution_variable ("user") as l_user then
            Result := l_user
        end
    end

  feature -- Element change

  set_user (req: WSF_REQUEST; a_user: USER)
    do
        req.set_execution_variable ("user", a_user)
    end
```

Now, I realize this is a major change since the last time we talked about this,
but at the end, after having played with both, I prefer the one with
execution_variable.
2013-01-23 10:20:03 +01:00
Olivier Ligot aadfdec1ae Fix a small typo: you are instead of your are 2013-01-07 11:11:42 +01:00
Olivier Ligot ed325f81e1 use /usr/lib/libfcgi.so instead of /usr/local/lib/libfcgi.so
This was already fixed in libfcgi.ecf
(commit 65a998cec3)
This fixes the libfcgi-safe.ecf file
2012-12-12 13:34:50 +01:00
Olivier Ligot 233de09c48 Fix {JSON_OBJECT}.hash_code implementation
Don't call {HASH_TABLE}.item_for_iteration when {HASH_TABLE}.off
Use {HASH_TABLE}.out instead
2012-12-10 17:39:22 +01:00
Olivier LigotandJocelyn Fiat 4ed8365afe ise_wizard Unix shell scripts 2012-12-05 22:30:16 +01:00
Olivier LigotandJocelyn Fiat a6ca54f958 Fix ise_wizard
* ewf.ini was used instead of template.ecf as configuration file
* remove initialize_router otherwise the compilation failed
* remove unused variables
2012-12-05 22:30:14 +01:00
Olivier LigotandJocelyn Fiat 075ac1d628 Logging filter
The logging filter is now part of EWF core (before it was only available in
the filter example) and can therefore be reused by others needing it.
Note that this is a first implementation. It can certainly be improved in
the future to support more fine grained logging.
2012-12-05 22:30:12 +01:00
Olivier Ligot eb676bd14b ise_wizard Unix shell scripts 2012-12-04 14:42:09 +01:00
Olivier Ligot e9376b5d16 Fix ise_wizard
* ewf.ini was used instead of template.ecf as configuration file
* remove initialize_router otherwise the compilation failed
* remove unused variables
2012-12-03 17:37:26 +01:00
Olivier Ligot fc8188aeb1 Logging filter
The logging filter is now part of EWF core (before it was only available in
the filter example) and can therefore be reused by others needing it.
Note that this is a first implementation. It can certainly be improved in
the future to support more fine grained logging.
2012-12-03 16:29:12 +01:00
Olivier Ligot 6cd21c39eb [FIX] Indentation 2012-09-12 22:01:13 +02:00
Olivier Ligot f361ce65c6 [FIX] Convertion from HASH_TABLE keys to JSON 2012-09-12 20:05:49 +02:00
Olivier Ligot d01bccbc84 Merge branch 'master' into fix_hash_table_converter 2012-09-12 19:54:06 +02:00
Olivier Ligot 42b971f28e [FIX] Unknown identifier 'unescaped_string' 2012-09-12 17:14:49 +02:00
Olivier Ligot b33d471cf8 [FIX] Path to libraries 2012-09-05 14:18:43 +02:00
Olivier Ligot 7ba863f43c Merge remote-tracking branch 'upstream/master' into filter 2012-09-05 14:08:41 +02:00
Olivier Ligot 74334e665d [ADD] Filter: pre-process incoming data and post-process outgoing data
Filters are part of a filter chain, thus following the chain of responsability
design pattern.
More information are available in library/server/wsf/src/filter/README.md
2012-08-10 10:09:59 +02:00
Olivier Ligot aedf8ec1cd [FIX] Convertion from DS_HASH_TABLE keys to JSON
This is useful when the type of the key is something else than a STRING
and we have a JSON converter for this type.
2012-08-02 14:06:48 +02:00
Olivier LigotandJocelyn Fiat ff713a42ab [REM] Remove unneeded precondition 2012-04-02 09:28:22 +02:00
Olivier LigotandJocelyn Fiat 155c45be6c [IMP] Ignore *.swp files 2012-04-02 09:28:10 +02:00
Olivier Ligot 425c276051 [REM] Remove unneeded precondition 2012-03-27 11:30:42 +02:00
Olivier Ligot 0040e4b0d0 [IMP] Ignore *.swp files 2012-03-27 11:29:33 +02:00
Olivier Ligot b862065c04 Merge branch 'master', remote branch 'upstream/master' 2012-03-26 17:19:02 +02:00
Olivier Ligot f3c779cf6e [FIX] libfcgi.so location
On Ubuntu 10.04 LTS, libfcgi.so is in /usr/lib instead of /usr/local/lib
2012-02-10 14:01:04 +01:00