You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwebbeans.apache.org by st...@apache.org on 2013/01/18 15:43:17 UTC

svn commit: r1435165 - in /openwebbeans/trunk/webbeans-impl/src: main/java/org/apache/webbeans/context/ main/java/org/apache/webbeans/context/creational/ main/java/org/apache/webbeans/intercept/ test/java/org/apache/webbeans/newtests/proxy/

Author: struberg
Date: Fri Jan 18 14:43:16 2013
New Revision: 1435165

URL: http://svn.apache.org/viewvc?rev=1435165&view=rev
Log:
OWB-344 cleanup our Contexts after the CreationalContext rework

Added:
    openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/BeanInstanceBag.java   (contents, props changed)
      - copied, changed from r1435158, openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/BeanInstanceBagRemove.java
Removed:
    openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/CustomContextImpl.java
    openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/WebBeansContextRemove.java
    openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/BeanInstanceBagRemove.java
    openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/proxy/DummyScopedBeanInterceptorHandlerRemove.java
Modified:
    openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/AbstractContext.java
    openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/ApplicationContext.java
    openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/ContextFactory.java
    openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/ConversationContext.java
    openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/CustomPassivatingContextImpl.java
    openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/RequestContext.java
    openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/SessionContext.java
    openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/SingletonContext.java
    openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/DecoratorHandler.java

Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/AbstractContext.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/AbstractContext.java?rev=1435165&r1=1435164&r2=1435165&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/AbstractContext.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/AbstractContext.java Fri Jan 18 14:43:16 2013
@@ -28,15 +28,16 @@ import java.util.Map.Entry;
 import java.util.concurrent.ConcurrentMap;
 
 import javax.enterprise.context.ContextNotActiveException;
+import javax.enterprise.context.spi.Context;
 import javax.enterprise.context.spi.Contextual;
 import javax.enterprise.context.spi.CreationalContext;
 
 import org.apache.webbeans.container.SerializableBean;
 import org.apache.webbeans.container.SerializableBeanVault;
-import org.apache.webbeans.context.creational.BeanInstanceBagRemove;
+import org.apache.webbeans.context.creational.BeanInstanceBag;
 
 /**
- * Abstract implementation of the {@link WebBeansContextRemove} interfaces.
+ * Abstract implementation of the {@link Context} interfaces.
  * 
  * @see javax.enterprise.context.spi.Context
  * @see RequestContext
@@ -45,7 +46,7 @@ import org.apache.webbeans.context.creat
  * @see ApplicationContext
  * @see ConversationContext
  */
-public abstract class AbstractContext implements WebBeansContextRemove, Serializable
+public abstract class AbstractContext implements Context, Serializable
 {
     private static final long serialVersionUID = 2357678967444477818L;
     /**Context status, active or not*/
@@ -53,7 +54,7 @@ public abstract class AbstractContext im
 
 
     /**Context contextual instances*/
-    protected Map<Contextual<?>, BeanInstanceBagRemove<?>> componentInstanceMap = null;
+    protected Map<Contextual<?>, BeanInstanceBag<?>> componentInstanceMap = null;
 
     /**Contextual Scope Type*/
     protected Class<? extends Annotation> scopeType;
@@ -75,7 +76,7 @@ public abstract class AbstractContext im
     @SuppressWarnings("unchecked")
     private <T> void createContextualBag(Contextual<T> contextual, CreationalContext<T> creationalContext)
     {
-        BeanInstanceBagRemove<T> bag = new BeanInstanceBagRemove<T>(creationalContext);
+        BeanInstanceBag<T> bag = new BeanInstanceBag<T>(creationalContext);
         
         if(componentInstanceMap instanceof ConcurrentMap)
         {
@@ -112,7 +113,7 @@ public abstract class AbstractContext im
     {
         checkActive();
 
-        BeanInstanceBagRemove bag = componentInstanceMap.get(component);
+        BeanInstanceBag bag = componentInstanceMap.get(component);
         
         if(bag != null)
         {
@@ -141,11 +142,11 @@ public abstract class AbstractContext im
         T instance;
         
         //Look for bag
-        BeanInstanceBagRemove<T> bag = (BeanInstanceBagRemove<T>)componentInstanceMap.get(contextual);
+        BeanInstanceBag<T> bag = (BeanInstanceBag<T>)componentInstanceMap.get(contextual);
         if(bag == null)
         {
             createContextualBag(contextual, creationalContext);
-            bag = (BeanInstanceBagRemove<T>)componentInstanceMap.get(contextual);
+            bag = (BeanInstanceBag<T>)componentInstanceMap.get(contextual);
         }
 
         //Look for instance
@@ -177,7 +178,7 @@ public abstract class AbstractContext im
     @SuppressWarnings("unchecked")
     public <T> CreationalContext<T> getCreationalContext(Contextual<T> contextual)
     {
-        BeanInstanceBagRemove<?> bag = componentInstanceMap.get(contextual);
+        BeanInstanceBag<?> bag = componentInstanceMap.get(contextual);
         if (bag != null)
         {
             return (CreationalContext<T>) bag.getBeanCreationalContext();
@@ -205,15 +206,15 @@ public abstract class AbstractContext im
     @SuppressWarnings("unchecked")
     public void destroy()
     {
-        Set<Entry<Contextual<?>, BeanInstanceBagRemove<?>>> entrySet = componentInstanceMap.entrySet();
-        Iterator<Entry<Contextual<?>, BeanInstanceBagRemove<?>>> it = entrySet.iterator();
+        Set<Entry<Contextual<?>, BeanInstanceBag<?>>> entrySet = componentInstanceMap.entrySet();
+        Iterator<Entry<Contextual<?>, BeanInstanceBag<?>>> it = entrySet.iterator();
 
         Contextual<?> contextual;
         while (it.hasNext())
         {
             contextual = it.next().getKey();
             
-            BeanInstanceBagRemove<?> instance = componentInstanceMap.get(contextual);
+            BeanInstanceBag<?> instance = componentInstanceMap.get(contextual);
             //Get creational context
             CreationalContext<Object> cc = (CreationalContext<Object>)instance.getBeanCreationalContext();
 
@@ -284,10 +285,10 @@ public abstract class AbstractContext im
         {
             SerializableBeanVault sbv = org.apache.webbeans.config.WebBeansContext.getInstance().getSerializableBeanVault();
 
-            Map<Contextual<?>, BeanInstanceBagRemove<?>> serializableInstanceMap =
-                    new HashMap<Contextual<?>, BeanInstanceBagRemove<?>>();
+            Map<Contextual<?>, BeanInstanceBag<?>> serializableInstanceMap =
+                    new HashMap<Contextual<?>, BeanInstanceBag<?>>();
 
-            for (Map.Entry<Contextual<?>, BeanInstanceBagRemove<?>> componentInstanceMapEntry : componentInstanceMap.entrySet())
+            for (Map.Entry<Contextual<?>, BeanInstanceBag<?>> componentInstanceMapEntry : componentInstanceMap.entrySet())
             {
                 serializableInstanceMap.put(sbv.getSerializableBean(componentInstanceMapEntry.getKey()),
                                             componentInstanceMapEntry.getValue());
@@ -310,8 +311,8 @@ public abstract class AbstractContext im
     {
         scopeType = (Class<? extends Annotation>) s.readObject();
 
-        HashMap<Contextual<?>, BeanInstanceBagRemove<?>> serializableInstanceMap =
-                (HashMap<Contextual<?>, BeanInstanceBagRemove<?>>) s.readObject();
+        HashMap<Contextual<?>, BeanInstanceBag<?>> serializableInstanceMap =
+                (HashMap<Contextual<?>, BeanInstanceBag<?>>) s.readObject();
 
         if (serializableInstanceMap != null)
         {
@@ -321,7 +322,7 @@ public abstract class AbstractContext im
                 throw new NotSerializableException("componentInstanceMap not initialized!");
             }
 
-            for (Map.Entry<Contextual<?>, BeanInstanceBagRemove<?>> serializableInstanceMapEntry : serializableInstanceMap.entrySet())
+            for (Map.Entry<Contextual<?>, BeanInstanceBag<?>> serializableInstanceMapEntry : serializableInstanceMap.entrySet())
             {
                 Contextual<?> bean = serializableInstanceMapEntry.getKey();
                 if (bean instanceof SerializableBean)

Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/ApplicationContext.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/ApplicationContext.java?rev=1435165&r1=1435164&r2=1435165&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/ApplicationContext.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/ApplicationContext.java Fri Jan 18 14:43:16 2013
@@ -23,7 +23,7 @@ import java.util.concurrent.ConcurrentHa
 import javax.enterprise.context.ApplicationScoped;
 import javax.enterprise.context.spi.Contextual;
 
-import org.apache.webbeans.context.creational.BeanInstanceBagRemove;
+import org.apache.webbeans.context.creational.BeanInstanceBag;
 
 /**
  * Application context implementation.
@@ -41,7 +41,7 @@ public class ApplicationContext extends 
     @Override
     public void setComponentInstanceMap()
     {
-        componentInstanceMap = new ConcurrentHashMap<Contextual<?>, BeanInstanceBagRemove<?>>();
+        componentInstanceMap = new ConcurrentHashMap<Contextual<?>, BeanInstanceBag<?>>();
 
     }
 

Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/ContextFactory.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/ContextFactory.java?rev=1435165&r1=1435164&r2=1435165&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/ContextFactory.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/ContextFactory.java Fri Jan 18 14:43:16 2013
@@ -79,10 +79,10 @@ public final class ContextFactory
     {
         if (webBeansContext.getBeanManagerImpl().isPassivatingScope(context.getScope()))
         {
-            return new CustomPassivatingContextImpl(context);
+            return new CustomPassivatingContextImpl(webBeansContext.getSerializableBeanVault(), context);
         }
 
-        return new CustomContextImpl(context);
+        return context;
     }
 
     public void destroyRequestContext(Object request)

Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/ConversationContext.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/ConversationContext.java?rev=1435165&r1=1435164&r2=1435165&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/ConversationContext.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/ConversationContext.java Fri Jan 18 14:43:16 2013
@@ -32,7 +32,7 @@ import java.util.concurrent.ConcurrentHa
 import javax.enterprise.context.ConversationScoped;
 import javax.enterprise.context.spi.Contextual;
 
-import org.apache.webbeans.context.creational.BeanInstanceBagRemove;
+import org.apache.webbeans.context.creational.BeanInstanceBag;
 import org.apache.webbeans.util.WebBeansUtil;
 
 /**
@@ -53,14 +53,14 @@ public class ConversationContext extends
     @Override
     public void setComponentInstanceMap()
     {
-        componentInstanceMap = new ConcurrentHashMap<Contextual<?>, BeanInstanceBagRemove<?>>();
+        componentInstanceMap = new ConcurrentHashMap<Contextual<?>, BeanInstanceBag<?>>();
     }
 
     public void readExternal(ObjectInput in) throws IOException,
             ClassNotFoundException 
     {
         scopeType = (Class<? extends Annotation>) in.readObject();
-        Map<String, BeanInstanceBagRemove<?>> map = (Map<String, BeanInstanceBagRemove<?>>)in.readObject();
+        Map<String, BeanInstanceBag<?>> map = (Map<String, BeanInstanceBag<?>>)in.readObject();
         setComponentInstanceMap();
         Iterator<String> it = map.keySet().iterator();
         Contextual<?> contextual = null;
@@ -82,7 +82,7 @@ public class ConversationContext extends
     {
             out.writeObject(scopeType);
             Iterator<Contextual<?>> it = componentInstanceMap.keySet().iterator();
-            Map<String, BeanInstanceBagRemove<?>> map = new HashMap<String, BeanInstanceBagRemove<?>>();
+            Map<String, BeanInstanceBag<?>> map = new HashMap<String, BeanInstanceBag<?>>();
             while(it.hasNext()) 
             {
                 Contextual<?>contextual = it.next();

Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/CustomPassivatingContextImpl.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/CustomPassivatingContextImpl.java?rev=1435165&r1=1435164&r2=1435165&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/CustomPassivatingContextImpl.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/CustomPassivatingContextImpl.java Fri Jan 18 14:43:16 2013
@@ -18,42 +18,47 @@
  */
 package org.apache.webbeans.context;
 
-import org.apache.webbeans.config.WebBeansContext;
 import org.apache.webbeans.container.SerializableBeanVault;
 
 import javax.enterprise.context.spi.Context;
 import javax.enterprise.context.spi.Contextual;
 import javax.enterprise.context.spi.CreationalContext;
+import java.lang.annotation.Annotation;
 
 /**
  *
  */
-public class CustomPassivatingContextImpl extends CustomContextImpl
+public class CustomPassivatingContextImpl implements Context
 {
-    private SerializableBeanVault sbv = null;
+    private final SerializableBeanVault sbv;
+    private final Context context;
 
-    CustomPassivatingContextImpl(Context context)
+
+    CustomPassivatingContextImpl(SerializableBeanVault sbv, Context context)
     {
-        super(context);
+        this.sbv = sbv;
+        this.context = context;
     }
 
     public <T> T get(Contextual<T> contextual, CreationalContext<T> creationalContext)
     {
-        return super.get(getSerializableBeanVault().getSerializableBean(contextual), creationalContext);
+        return context.get(sbv.getSerializableBean(contextual), creationalContext);
     }
 
     public <T> T get(Contextual<T> contextual)
     {
-        return super.get(getSerializableBeanVault().getSerializableBean(contextual));
+        return context.get(sbv.getSerializableBean(contextual));
     }
 
-    private SerializableBeanVault getSerializableBeanVault()
+    @Override
+    public Class<? extends Annotation> getScope()
     {
-        if (sbv == null)
-        {
-            sbv = WebBeansContext.getInstance().getSerializableBeanVault();
-        }
+        return context.getScope();
+    }
 
-        return sbv;
+    @Override
+    public boolean isActive()
+    {
+        return context.isActive();
     }
 }

Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/RequestContext.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/RequestContext.java?rev=1435165&r1=1435164&r2=1435165&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/RequestContext.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/RequestContext.java Fri Jan 18 14:43:16 2013
@@ -23,7 +23,7 @@ import java.util.concurrent.ConcurrentHa
 import javax.enterprise.context.RequestScoped;
 import javax.enterprise.context.spi.Contextual;
 
-import org.apache.webbeans.context.creational.BeanInstanceBagRemove;
+import org.apache.webbeans.context.creational.BeanInstanceBag;
 
 /**
  * Request context implementation.
@@ -46,7 +46,7 @@ public class RequestContext extends Abst
     @Override
     public void setComponentInstanceMap()
     {
-        componentInstanceMap = new ConcurrentHashMap<Contextual<?>, BeanInstanceBagRemove<?>>();
+        componentInstanceMap = new ConcurrentHashMap<Contextual<?>, BeanInstanceBag<?>>();
 
     }
 

Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/SessionContext.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/SessionContext.java?rev=1435165&r1=1435164&r2=1435165&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/SessionContext.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/SessionContext.java Fri Jan 18 14:43:16 2013
@@ -34,7 +34,7 @@ import javax.enterprise.context.SessionS
 import javax.enterprise.context.spi.Contextual;
 
 import org.apache.webbeans.config.WebBeansContext;
-import org.apache.webbeans.context.creational.BeanInstanceBagRemove;
+import org.apache.webbeans.context.creational.BeanInstanceBag;
 import org.apache.webbeans.util.WebBeansUtil;
 
 /**
@@ -52,7 +52,7 @@ public class SessionContext extends Abst
     @Override
     public void setComponentInstanceMap()
     {
-        componentInstanceMap = new ConcurrentHashMap<Contextual<?>, BeanInstanceBagRemove<?>>();
+        componentInstanceMap = new ConcurrentHashMap<Contextual<?>, BeanInstanceBag<?>>();
     }
 
     public void readExternal(ObjectInput in) throws IOException,
@@ -61,7 +61,7 @@ public class SessionContext extends Abst
         WebBeansContext webBeansContext = WebBeansContext.currentInstance();
 
         scopeType = (Class<? extends Annotation>) in.readObject();
-        Map<String, BeanInstanceBagRemove<?>> map = (Map<String, BeanInstanceBagRemove<?>>)in.readObject();
+        Map<String, BeanInstanceBag<?>> map = (Map<String, BeanInstanceBag<?>>)in.readObject();
         setComponentInstanceMap();
         Iterator<String> it = map.keySet().iterator();
         Contextual<?> contextual = null;
@@ -83,7 +83,7 @@ public class SessionContext extends Abst
     {
         out.writeObject(scopeType);
         Iterator<Contextual<?>> it = componentInstanceMap.keySet().iterator();
-        Map<String, BeanInstanceBagRemove<?>> map = new HashMap<String, BeanInstanceBagRemove<?>>();
+        Map<String, BeanInstanceBag<?>> map = new HashMap<String, BeanInstanceBag<?>>();
         while(it.hasNext()) 
         {
             Contextual<?>contextual = it.next();

Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/SingletonContext.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/SingletonContext.java?rev=1435165&r1=1435164&r2=1435165&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/SingletonContext.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/SingletonContext.java Fri Jan 18 14:43:16 2013
@@ -23,7 +23,7 @@ import java.util.concurrent.ConcurrentHa
 import javax.enterprise.context.spi.Contextual;
 import javax.inject.Singleton;
 
-import org.apache.webbeans.context.creational.BeanInstanceBagRemove;
+import org.apache.webbeans.context.creational.BeanInstanceBag;
 
 /**
  * Application context implementation.
@@ -41,6 +41,6 @@ public class SingletonContext extends Ab
     @Override
     public void setComponentInstanceMap()
     {
-        componentInstanceMap = new ConcurrentHashMap<Contextual<?>, BeanInstanceBagRemove<?>>();
+        componentInstanceMap = new ConcurrentHashMap<Contextual<?>, BeanInstanceBag<?>>();
     }
 }

Copied: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/BeanInstanceBag.java (from r1435158, openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/BeanInstanceBagRemove.java)
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/BeanInstanceBag.java?p2=openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/BeanInstanceBag.java&p1=openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/BeanInstanceBagRemove.java&r1=1435158&r2=1435165&rev=1435165&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/BeanInstanceBagRemove.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/BeanInstanceBag.java Fri Jan 18 14:43:16 2013
@@ -25,9 +25,11 @@ import java.util.concurrent.locks.Lock;
 import java.util.concurrent.locks.ReentrantLock;
 
 /**
- * @deprecated we don't need the ContextualBag anymore once we have the new Interceptor handling
+ * Stores the CreationalContext and the Contextual Instance.
+ * This also makes sure that we don't create the same bean
+ * twice.
  */
-public class BeanInstanceBagRemove<T> implements Serializable
+public class BeanInstanceBag<T> implements Serializable
 {
     private static final long serialVersionUID = 1656996021599122499L;
     private final CreationalContext<T> beanCreationalContext;
@@ -36,7 +38,7 @@ public class BeanInstanceBagRemove<T> im
     
     private final Lock lock = new ReentrantLock();
     
-    public BeanInstanceBagRemove(CreationalContext<T> beanCreationalContext)
+    public BeanInstanceBag(CreationalContext<T> beanCreationalContext)
     {
         this.beanCreationalContext = beanCreationalContext;
     }

Propchange: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/context/creational/BeanInstanceBag.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/DecoratorHandler.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/DecoratorHandler.java?rev=1435165&r1=1435164&r2=1435165&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/DecoratorHandler.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/DecoratorHandler.java Fri Jan 18 14:43:16 2013
@@ -31,6 +31,10 @@ import org.apache.webbeans.intercept.Int
 import org.apache.webbeans.proxy.InterceptorHandler;
 import org.apache.webbeans.util.ExceptionUtil;
 
+/**
+ * InterceptorHandler which handles all the Decorators on the InjectionTarget.
+ * This one always gets added at the last position in the interceptor chain.
+ */
 public class DecoratorHandler implements InterceptorHandler {
 
     private BeanInterceptorInfo interceptorInfo;