cxf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrei Shakirin <ashaki...@talend.com>
Subject Distinguish client or service in FactoryBeanListener for ENDPOINT_CREATED event
Date Fri, 11 Jul 2014 15:38:50 GMT
I have discovered the restriction of FactoryBeanListener in one customer use case.
This scenario dynamically downloads WS-Policies from custom ServiceRegistry and applies them
to the CXF client and service.

Problem: it seems that there is not reliable way to determine that event ENDPOINT_CREATED
was fired by client or by the service in the method:
    protected void handleEventInternal(Event ev, ReflectionServiceFactoryBean factory, Object...
args) {
    }
Other events CLIENT_CREATED, PROXY_CREATED and SERVICE_CREATED help to distinguish client
or service, but are fired too late (for example transport is already initialized to this time).

Proposals:
Option A: introduce additional optional attribute in ReflectionServiceFactoryBean defining
was the factory created by the client or by the service.
Option B: fire additional events PRE_CLIENT_CREATE, PRE_SERVICE_CREATE before creation of
client and service.

Any thoughts, objections?
Perhaps there are any other ideas how to resolve the issue?

Regards,
Andrei.


Mime
View raw message