You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Andrei Shakirin (JIRA)" <ji...@apache.org> on 2014/07/15 09:59:04 UTC

[jira] [Created] (CXF-5879) Distinguishing client or service in FactoryBeanListener

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)