On Tue, Sep 29, 2009 at 10:38 AM, Thorsten Scherler <thorsten.scherler.ext@juntadeandalucia.es> wrote:
Hi all,

what is the best way to implement a Listener in cocoon 2.2?

I our use case we have a "listener" uri that got dispatched by an
external application to notify that some resources have changed and
invalid our cache for that resource.

The thing is that the uri do not have to/will not return anything in the
body only in the request header.

The current solution which was presented to us uses a custom generator
which will not output anything. That just does not feel right.

I did a small test with
<map:match pattern="notify">
 <map:act type="notify"/>
 <map:generate src="notify.xml"/>
 <map:serialize/>
</map:match>

but that is just to make it work the normal cocoon way. The notify.xml
is a dummy and I am not really thrilled about that neither.

Using flow seems to be as well too much since we just want a simple
listener that returns only http header.

Last time I needed something like this I used the "empty:" source.  Combined with a reader, that should do the track.

  <map:match pattern="notify">
    <map:read src="empty:" />
  </map:match>

This is untested — I can't remember if there are any quirks.

-Dom