axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andreas Veithen (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (AXIS2-5660) AXIS 2 Doc correction
Date Mon, 01 May 2017 21:18:04 GMT

     [ https://issues.apache.org/jira/browse/AXIS2-5660?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Andreas Veithen resolved AXIS2-5660.
------------------------------------
    Resolution: Invalid

You are confusing Axis2 and Axis 1.x.

> AXIS 2 Doc correction
> ---------------------
>
>                 Key: AXIS2-5660
>                 URL: https://issues.apache.org/jira/browse/AXIS2-5660
>             Project: Axis2
>          Issue Type: Bug
>          Components: documentation
>    Affects Versions: 1.6.2
>            Reporter: Martin Gainty
>
> Handlers and Chains can be defined to have 'per-access', 'per-request', or 'singleton'
scope although the registry currently only distinguishes between these by constructing non-singleton
scope objects when requested and constructing singleton scope objects once and holding on
to them for use on subsequent creation requests.
> There are NO singleton implementations of Handlers ..here is proof:
> public class FactoryRegistry {
>     private static volatile Map<Class, Object> table;
>     private static Object lockbox = new Object();
>     private static final Log log = LogFactory.getLog(FactoryRegistry.class);
>     
>     static {
>         try {
>             init();
>         } catch (Throwable t){
>             log.error(t.getMessage(), t);
>         }
>     }
>     
>     private static final void init() {
>         
>         // An unsynchronized Map is used to ensure that gets are fast.
>         table = new HashMap<Class, Object>(64, .5f);
>      ,,,,
>  table.put(HandlerInvokerFactory.class, new HandlerInvokerFactoryImpl());
> }
> //later on when you access HandlerInvokerFactory you get the 
> //SAME HandlerInvokerFactoryImpl that you instantated:
>  /**
>      * Get the factory.  This may be called frequently.
>      * @param intface of the Factory
>      * @return Object that is the factory implementation for the intface
>      */
>     public static Object getFactory(Class intface) {
>         Map m = table;
>         return m.get(intface);
>     }
> //so the RegistryFactory exhibits Singleton like behaviour
> //but what happens when I create a HandlerInvokeFactory?
> package org.apache.axis2.jaxws.handler.factory.impl;
> /**
>  * This is the default implementation of the HandlerInvokerFactory, 
>  * and it will be registered with the FactoryRegistry.
>  */
> public class HandlerInvokerFactoryImpl implements HandlerInvokerFactory {
> public HandlerInvoker createHandlerInvoker(MessageContext messageContext) {
>         return new HandlerInvokerImpl();
>     }
> }
> If this is NOT singleton which clearly it is not then you need to 
> correct this documentation asap
> http://axis.apache.org/axis/java/architecture-guide.html
> 16 July 2014
> Martin Gainty



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org


Mime
View raw message