Andrei Shakirin created CXF-5879:
------------------------------------

             Summary: Distinguishing client or service in FactoryBeanListener
                 Key: CXF-5879
                 URL: https://issues.apache.org/jira/browse/CXF-5879
             Project: CXF
          Issue Type: Improvement
          Components: JAX-WS Runtime
            Reporter: Andrei Shakirin
            Assignee: Andrei Shakirin


The events notification in FactoryBeanListener has restriction in following use 
case:
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.

Option B seems to be more consequent and logical.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to