cxf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Daniel Kulp <dk...@apache.org>
Subject Rationalizing the InterceptorProviders....
Date Fri, 06 Jun 2008 16:38:59 GMT

I'm trying to dig into CXF-1547 to try and get the "proper" fix in  
place.     Basically, I'm trying to make sure all the  
InterceptorProviders are properly examined and in a consistent  
order.    We basically have 5 interceptor providers:

Endpoint
Binding
Service
Bus
Client  (client side only)


On the server side, they are evaluated in this order:
In:  bus, endpoint, binding, service
Out: endpoint, service, bus, binding
Fault: endpoint, binding, service, bus

On the client side:
In: bus, endpoint, client, binding
Out: bus, endpoint, client, binding
Fault: endpoint, binding, service, bus


Things to note:
Client side doesn't look at the Service at all except for faults. We  
definitely need to fix that.
Server side uses different ordering for all three chains.


I'd like to make this completely consistent.   I want to make it:

Server:   bus, binding, endpoint, service
Client:    bus, binding, endpoint, service, client

Or:
Server: bus, service, endpoint, binding
Client: bus, client, service, endpoint, binding


Any opinions or objections?    Looking through things, I'm leaning  
toward the second option.   It LOOKS like the binding seems to define  
the most "addAfter" interceptors which cause more work when building  
the InterceptorChain if they are already in the chain.   Thus, putting  
them at the end may perform the best.   I may run some checks to make  
sure though.

In anycase, any thoughts?

---
Daniel Kulp
dkulp@apache.org
http://www.dankulp.com/blog





Mime
View raw message