>
> > also, would it be possible to use a Valve to accomplish this?
>
> Yes...
>
> > how are valves processed? are they stacked such that the
> first valve entered
> > is the last one exited?
>
> Correct.
>
> > or are they chained such that one valve is processed after
> the next, and once
> > the last valve is processed, the response is sent?
>
> Nope... See how the "invoke()" method works...
>
> > what i'm getting at is, could you put a valve in place such
> that it could
> > always log (or send events) at the beginning of a request
> and right before the
> > response is sent?
>
> In TC4.0 valve are more-or-less like loggers. So if you put
> down a valve at
> the bottom of your <Engine> (the first root component in the
> component stack
> of Catralina), you'll end up intercepting all requests coming from the
> connectors... :)
>
a valve can choose to not invoke the next valve by not calling
context.invokeNext(), right? so, this would be guaranteed to work only if
the "statistic" valve was the first valve, right?
thanks for the info :)