[wsf-c-dev] Client API for Eventing

Paul Fremantle paul at wso2.com
Fri Mar 30 03:30:12 PDT 2007


One of our customers has asked us what the "client" api to receive 
notifications is with WS-Eventing.

Normally, the receiver of notifications is in fact a service, and so 
would be implemented by a service. However, this isn't always the 
easiest model for a developer who wants to see notifications.

So my proposal is that we think of notifications like the response half 
of an async interaction - i.e. a callback.

So we could basically allow a user to subscribe to a service, and pass 
the callback handler.

This would do:
1) start the simple HTTP server listener just like when you do 
setUseSeparateListener(true)
2) Create a new endpoint on that listener
3) Register the callback as the handler for any messages coming into 
that endpoint
4) Send that EPR as the subscription EPR to the Eventing source

We could also ensure that unsubscribing to the endpoint de-activated the 
HTTP listener (I guess we'd need a counter in case there were other 
subscribers using the listener). We could also make sure that the HTTP 
listener timed out in line with the subscription.

I'd also like us to think about other transports. For example, can we 
make an XMPP subscription behave the same.

Paul

PS I think we should also think about Atom. I've got some ideas but they 
aren't fully formed yet.

-- 
Paul Fremantle
VP/Technical Sales, WSO2
OASIS WS-RX TC Co-chair

http://bloglines.com/blog/paulfremantle
paul at wso2.com
(646) 290 8050

"Oxygenating the Web Service Platform", www.wso2.com





More information about the Wsf-c-dev mailing list