On Jun 20, 2007, at 10:09 PM, Dan Diephouse wrote:
Are you thinking about a case where two features might add the same
interceptors to an InterceptorProvider? Can you explain a little
bit more
the case where multiple features are adding the same interceptors to a
Bus/Client/Server?
Exactly. E.g., what would happen in the following case (where we
have a fictional cxf:bus feature):
{{{
<cxf:bus>
<jaxws:features>
<acme:MyFeature ... />
</jaxws:features>
</cxf:bus>
<jaxws:endpoint name="{http://www.acme.com}WhizzBangPort">
<jaxws:features>
<acme:MyFeature ... />
</jaxws:features>
</jaxws:endpoint>
}}}
Is there one feature instance installed, or 2?
Maybe we need a notion of default features, as in
{{{
<cxf:bus>
<jaxws:defaultFeatures>
<acme:MyFeature ... />
</jaxws:defaultFeatures>
</cxf:bus>
}}}
which are only installed if they are not explicitly overridden by an
endpoint or client feature, but I don't think implementing that is
trivial, since the runtime doesn't really know anything about
features, per se. It just knows what interceptors are.
/Fred