You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by gp...@apache.org on 2010/11/04 16:01:23 UTC

svn commit: r1031018 - in /myfaces/extensions/cdi/trunk: core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/ jee-modules/jpa-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jpa/impl/ jee-modules/jsf-module/impl/src/main/jav...

Author: gpetracek
Date: Thu Nov  4 15:01:22 2010
New Revision: 1031018

URL: http://svn.apache.org/viewvc?rev=1031018&view=rev
Log:
cleanup and improvements for better findbugs results

Added:
    myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/FormatterConfigKey.java
Modified:
    myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/InvocationOrderComparator.java
    myfaces/extensions/cdi/trunk/jee-modules/jpa-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jpa/impl/TransactionalInterceptor.java
    myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/navigation/ViewConfigAwareNavigationHandler.java
    myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/BeanStorage.java
    myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/DefaultConversationKey.java
    myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/DefaultWindowContextManager.java
    myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/DefaultWindowHandler.java
    myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/JsfWindowContext.java
    myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/scope/mapped/MappedJsf2ScopeExtension.java
    myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/scope/view/ViewScopedExtension.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/payload/AbstractMessagePayload.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultArgumentFilter.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultCompositeMessageHandler.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultFormatterFactory.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultMessageBuilder.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultMessageContextConfig.java
    myfaces/extensions/cdi/trunk/jse-modules/scripting-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/scripting/impl/DefaultLanguageManager.java
    myfaces/extensions/cdi/trunk/jse-modules/scripting-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/scripting/impl/util/ArgumentAwareScriptHelperMap.java

Modified: myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/InvocationOrderComparator.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/InvocationOrderComparator.java?rev=1031018&r1=1031017&r2=1031018&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/InvocationOrderComparator.java (original)
+++ myfaces/extensions/cdi/trunk/core/impl/src/main/java/org/apache/myfaces/extensions/cdi/core/impl/InvocationOrderComparator.java Thu Nov  4 15:01:22 2010
@@ -21,12 +21,15 @@ package org.apache.myfaces.extensions.cd
 import org.apache.myfaces.extensions.cdi.core.api.InvocationOrder;
 
 import java.util.Comparator;
+import java.io.Serializable;
 
 /**
  * @author Gerhard Petracek
  */
-public class InvocationOrderComparator<T> implements Comparator<T>
+public class InvocationOrderComparator<T> implements Comparator<T>, Serializable
 {
+    private static final long serialVersionUID = -7492852803631628400L;
+
     public int compare(T t1, T t2)
     {
         if (hasPriority(t1) && hasPriority(t2))

Modified: myfaces/extensions/cdi/trunk/jee-modules/jpa-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jpa/impl/TransactionalInterceptor.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jpa-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jpa/impl/TransactionalInterceptor.java?rev=1031018&r1=1031017&r2=1031018&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jpa-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jpa/impl/TransactionalInterceptor.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jpa-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jpa/impl/TransactionalInterceptor.java Thu Nov  4 15:01:22 2010
@@ -152,9 +152,6 @@ public class TransactionalInterceptor im
 
         EntityTransaction transaction = entityManager.getTransaction();
 
-        // used to store any exception we get from the services
-        Exception firstException = null;
-
         if(entityManagerEntry != null)
         {
             //only in case of add-ons synchronize
@@ -164,25 +161,25 @@ public class TransactionalInterceptor im
                 return proceedMethodInTransaction(context,
                                                   entityManagerEntry,
                                                   entityManager,
-                                                  transaction,
-                                                  firstException);
+                                                  transaction);
             }
         }
         //we don't have a shared entity manager
         return proceedMethodInTransaction(context,
                                           entityManagerEntry,
                                           entityManager,
-                                          transaction,
-                                          firstException);
+                                          transaction);
     }
 
     private Object proceedMethodInTransaction(InvocationContext context,
                                               EntityManagerEntry entityManagerEntry,
                                               EntityManager entityManager,
-                                              EntityTransaction transaction,
-                                              Exception firstException)
+                                              EntityTransaction transaction)
             throws Exception
     {
+        // used to store any exception we get from the services
+        Exception firstException = null;
+
         try
         {
             if(!transaction.isActive())

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/navigation/ViewConfigAwareNavigationHandler.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/navigation/ViewConfigAwareNavigationHandler.java?rev=1031018&r1=1031017&r2=1031018&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/navigation/ViewConfigAwareNavigationHandler.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/navigation/ViewConfigAwareNavigationHandler.java Thu Nov  4 15:01:22 2010
@@ -85,7 +85,7 @@ public class ViewConfigAwareNavigationHa
                     {
                         this.otherOutcomes.add(originalOutcome);
                     }
-                    else if(loadedClass instanceof Class && ViewConfig.class.isAssignableFrom((Class)loadedClass))
+                    else if(ViewConfig.class.isAssignableFrom((Class)loadedClass))
                     {
                         //noinspection unchecked
                         entry = ViewConfigCache.getViewDefinition((Class<? extends ViewConfig>)loadedClass);

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/BeanStorage.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/BeanStorage.java?rev=1031018&r1=1031017&r2=1031018&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/BeanStorage.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/BeanStorage.java Thu Nov  4 15:01:22 2010
@@ -29,7 +29,6 @@ import javax.enterprise.inject.Any;
 import javax.enterprise.inject.Default;
 import javax.inject.Named;
 import java.io.Serializable;
-import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 import java.lang.annotation.Annotation;
 
@@ -42,7 +41,8 @@ class BeanStorage implements Serializabl
 
     private transient BeanManager beanManager;
 
-    private Map<Class, BeanEntry<Serializable>> beanMap = new ConcurrentHashMap<Class, BeanEntry<Serializable>>();
+    private ConcurrentHashMap<Class, BeanEntry<Serializable>> beanMap =
+            new ConcurrentHashMap<Class, BeanEntry<Serializable>>();
 
     public BeanStorage(BeanManager beanManager)
     {

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/DefaultConversationKey.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/DefaultConversationKey.java?rev=1031018&r1=1031017&r2=1031018&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/DefaultConversationKey.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/DefaultConversationKey.java Thu Nov  4 15:01:22 2010
@@ -40,7 +40,7 @@ class DefaultConversationKey implements 
 
     private Class<?> groupKey;
 
-    private Set<Annotation> qualifiers;
+    private HashSet<Annotation> qualifiers;
 
     DefaultConversationKey(Class<? extends Annotation> scopeType,
                            Class<?> groupKey,

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/DefaultWindowContextManager.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/DefaultWindowContextManager.java?rev=1031018&r1=1031017&r2=1031018&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/DefaultWindowContextManager.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/DefaultWindowContextManager.java Thu Nov  4 15:01:22 2010
@@ -42,7 +42,6 @@ import javax.faces.component.UIComponent
 import javax.faces.context.ExternalContext;
 import javax.faces.context.FacesContext;
 import java.util.Iterator;
-import java.util.Map;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.concurrent.ConcurrentHashMap;
@@ -56,7 +55,7 @@ public class DefaultWindowContextManager
 {
     private static final long serialVersionUID = 2872151847183166424L;
 
-    private Map<String, EditableWindowContext> windowContextMap =
+    private ConcurrentHashMap<String, EditableWindowContext> windowContextMap =
             new ConcurrentHashMap<String, EditableWindowContext>();
 
     private ProjectStage projectStage;

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/DefaultWindowHandler.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/DefaultWindowHandler.java?rev=1031018&r1=1031017&r2=1031018&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/DefaultWindowHandler.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/DefaultWindowHandler.java Thu Nov  4 15:01:22 2010
@@ -43,7 +43,7 @@ public class DefaultWindowHandler implem
     private static final long serialVersionUID = -103516988654873089L;
     private static final int DEFAULT_WINDOW_KEY_LENGTH = 3;
 
-    private final String windowIdParameter = WINDOW_CONTEXT_ID_PARAMETER_KEY + "=";
+    private static final String WINDOW_ID_PARAMETER_KEY = WINDOW_CONTEXT_ID_PARAMETER_KEY + "=";
 
     protected final boolean useWindowAwareUrlEncoding;
 
@@ -75,6 +75,8 @@ public class DefaultWindowHandler implem
 
     protected String addRequestParameter(ExternalContext externalContext, String url)
     {
+        StringBuilder finalUrl = new StringBuilder(url);
+
         Map<String, String> requestParms = externalContext.getRequestParameterMap();
         for(Map.Entry<String, String> requestParam : requestParms.entrySet())
         {
@@ -82,10 +84,13 @@ public class DefaultWindowHandler implem
 
             if(!url.contains(key + "="))
             {
-                url += "&" + key + "=" + requestParam.getValue();
+                finalUrl.append("&");
+                finalUrl.append(key);
+                finalUrl.append("=");
+                finalUrl.append(requestParam.getValue());
             }
         }
-        return url;
+        return finalUrl.toString();
     }
 
     //TODO add a counter in case of project stage dev
@@ -159,7 +164,7 @@ public class DefaultWindowHandler implem
 
     private String encodeActionURL(String url, String windowId)
     {
-        if(url.contains(this.windowIdParameter))
+        if(url.contains(WINDOW_ID_PARAMETER_KEY))
         {
             return url;
         }

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/JsfWindowContext.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/JsfWindowContext.java?rev=1031018&r1=1031017&r2=1031018&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/JsfWindowContext.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/JsfWindowContext.java Thu Nov  4 15:01:22 2010
@@ -42,8 +42,7 @@ import java.util.logging.Logger;
 
 import static org.apache.myfaces.extensions.cdi.core.impl.utils.CodiUtils.isQualifierEqual;
 import static org.apache.myfaces.extensions.cdi.jsf.impl.util.ConversationUtils.convertToScope;
-import static org.apache.myfaces.extensions.cdi.jsf.impl.util.ExceptionUtils.conversationNotEditableException;
-import static org.apache.myfaces.extensions.cdi.jsf.impl.util.ExceptionUtils.conversationNotFoundException;
+import static org.apache.myfaces.extensions.cdi.jsf.impl.util.ExceptionUtils.*;
 
 /**
  * TODO
@@ -62,10 +61,10 @@ public class JsfWindowContext implements
 
     private BeanManager beanManager;
 
-    private Map<ConversationKey, EditableConversation> groupedConversations
+    private ConcurrentHashMap<ConversationKey, EditableConversation> groupedConversations
             = new ConcurrentHashMap<ConversationKey, EditableConversation>();
 
-    private Map<String, Object> attributes = new ConcurrentHashMap<String, Object>();
+    private ConcurrentHashMap<String, Object> attributes = new ConcurrentHashMap<String, Object>();
 
     private final TimeoutExpirationEvaluator expirationEvaluator;
 
@@ -146,13 +145,9 @@ public class JsfWindowContext implements
         ConversationKey conversationKey =
                 new DefaultConversationKey(scopeType, conversationGroupKey, qualifiers);
 
-        Conversation conversation = getConversationForKey(conversationKey, true);
+        EditableConversation conversation = getConversationForKey(conversationKey, true);
 
-        if(!(conversation instanceof EditableConversation))
-        {
-            throw conversationNotEditableException(conversation);
-        }
-        return closeAndRemoveConversation(conversationKey, (EditableConversation)conversation, true);
+        return closeAndRemoveConversation(conversationKey, conversation, true);
     }
 
     public Set<Conversation> closeConversationGroup(Class conversationGroupKey)

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/scope/mapped/MappedJsf2ScopeExtension.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/scope/mapped/MappedJsf2ScopeExtension.java?rev=1031018&r1=1031017&r2=1031018&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/scope/mapped/MappedJsf2ScopeExtension.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/scope/mapped/MappedJsf2ScopeExtension.java Thu Nov  4 15:01:22 2010
@@ -132,10 +132,13 @@ public class MappedJsf2ScopeExtension im
 
     private ProjectStage getCurrentProjectStage()
     {
-        ProjectStageProducer projectStageProducer = null;
         try
         {
-            projectStageProducer = ProjectStageProducer.getInstance();
+            ProjectStageProducer projectStageProducer = ProjectStageProducer.getInstance();
+
+            //noinspection ConstantConditions
+            projectStageProducer.determineProjectStage();
+            return projectStageProducer.getProjectStage();
         }
         catch (Exception e)
         {
@@ -143,11 +146,8 @@ public class MappedJsf2ScopeExtension im
             {
                 throw new RuntimeException(e);
             }
+            throw (RuntimeException)e;
         }
-        //noinspection ConstantConditions
-        projectStageProducer.determineProjectStage();
-        ProjectStage projectStage = projectStageProducer.getProjectStage();
-        return projectStage;
     }
 
     public boolean isActivated()

Modified: myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/scope/view/ViewScopedExtension.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/scope/view/ViewScopedExtension.java?rev=1031018&r1=1031017&r2=1031018&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/scope/view/ViewScopedExtension.java (original)
+++ myfaces/extensions/cdi/trunk/jee-modules/jsf20-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/jsf2/impl/scope/view/ViewScopedExtension.java Thu Nov  4 15:01:22 2010
@@ -70,12 +70,25 @@ public class ViewScopedExtension impleme
             return;
         }
 
-        // we need to do this manually because there is no dependency injection in place
-        // at this time
-        ProjectStageProducer psp = null;
         try
         {
-            psp = ProjectStageProducer.getInstance();
+            // we need to do this manually because there is no dependency injection in place
+            // at this time
+            ProjectStageProducer psp = ProjectStageProducer.getInstance();
+
+            psp.determineProjectStage();
+            ProjectStage projectStage = psp.getProjectStage();
+
+            if (projectStage == ProjectStage.UnitTest)
+            {
+                // for unit tests, we use the mock context
+                afterBeanDiscovery.addContext(new MockViewScopedContext());
+            }
+            else
+            {
+                // otherwise we use the real JSF ViewMap context
+                afterBeanDiscovery.addContext(new ViewScopedContext());
+            }
         }
         catch (Exception e)
         {
@@ -83,19 +96,7 @@ public class ViewScopedExtension impleme
             {
                 throw new RuntimeException(e);
             }
-        }
-        psp.determineProjectStage();
-        ProjectStage projectStage = psp.getProjectStage();
-
-        if (projectStage == ProjectStage.UnitTest)
-        {
-            // for unit tests, we use the mock context
-            afterBeanDiscovery.addContext(new MockViewScopedContext());
-        }
-        else
-        {
-            // otherwise we use the real JSF ViewMap context
-            afterBeanDiscovery.addContext(new ViewScopedContext());
+            throw (RuntimeException)e;
         }
     }
 

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/payload/AbstractMessagePayload.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/payload/AbstractMessagePayload.java?rev=1031018&r1=1031017&r2=1031018&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/payload/AbstractMessagePayload.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/payload/AbstractMessagePayload.java Thu Nov  4 15:01:22 2010
@@ -32,6 +32,6 @@ public abstract class AbstractMessagePay
     @Override
     public boolean equals(Object target)
     {
-        return getClass().equals(target.getClass());
+        return target != null && getClass().equals(target.getClass());
     }
 }

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultArgumentFilter.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultArgumentFilter.java?rev=1031018&r1=1031017&r2=1031018&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultArgumentFilter.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultArgumentFilter.java Thu Nov  4 15:01:22 2010
@@ -25,6 +25,8 @@ import org.apache.myfaces.extensions.cdi
  */
 public class DefaultArgumentFilter implements ArgumentFilter
 {
+    private static final long serialVersionUID = -2599667995355691782L;
+
     public boolean isArgumentAllowed(String expression, Object value)
     {
         return value != null && !isUnresolvedArgument(expression, value);

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultCompositeMessageHandler.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultCompositeMessageHandler.java?rev=1031018&r1=1031017&r2=1031018&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultCompositeMessageHandler.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultCompositeMessageHandler.java Thu Nov  4 15:01:22 2010
@@ -38,7 +38,7 @@ class DefaultCompositeMessageHandler imp
 {
     private static final long serialVersionUID = 3553885372006874180L;
 
-    private List<MessageHandler> messageHandlers = new ArrayList<MessageHandler>();
+    private ArrayList<MessageHandler> messageHandlers = new ArrayList<MessageHandler>();
 
     DefaultCompositeMessageHandler(Iterable<MessageHandler> messageHandlerIterable)
     {

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultFormatterFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultFormatterFactory.java?rev=1031018&r1=1031017&r2=1031018&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultFormatterFactory.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultFormatterFactory.java Thu Nov  4 15:01:22 2010
@@ -23,9 +23,7 @@ import org.apache.myfaces.extensions.cdi
 import org.apache.myfaces.extensions.cdi.message.api.GenericConfig;
 import org.apache.myfaces.extensions.cdi.message.impl.formatter.FormatterBuilder;
 
-import java.io.Serializable;
 import java.util.List;
-import java.util.Map;
 import java.util.Collections;
 import java.util.Locale;
 import java.util.concurrent.ConcurrentHashMap;
@@ -42,11 +40,11 @@ public class DefaultFormatterFactory imp
 {
     private static final long serialVersionUID = -7462205386564870045L;
 
-    transient protected Logger logger = getLogger();
+    transient private Logger logger = getLogger();
 
-    private List<Formatter> formatters = new CopyOnWriteArrayList<Formatter>();
-    private Map<Class<?>, Formatter> formatterCache = null;
-    private Map<FormatterConfigKey, GenericConfig> formatterConfigs =
+    private CopyOnWriteArrayList<Formatter> formatters = new CopyOnWriteArrayList<Formatter>();
+    private ConcurrentHashMap<Class<?>, Formatter> formatterCache = null;
+    private ConcurrentHashMap<FormatterConfigKey, GenericConfig> formatterConfigs =
             new ConcurrentHashMap<FormatterConfigKey, GenericConfig>();
 
     public synchronized FormatterFactory add(Formatter formatter)
@@ -71,7 +69,6 @@ public class DefaultFormatterFactory imp
 
     public Formatter findFormatter(Class<?> type)
     {
-
         if (this.formatterCache != null && this.formatterCache.containsKey(type))
         {
             return this.formatterCache.get(type);
@@ -137,7 +134,7 @@ public class DefaultFormatterFactory imp
         return new FormatterConfigKey(type, locale);
     }
 
-    private Logger getLogger()
+    protected Logger getLogger()
     {
         if(this.logger == null)
         {
@@ -145,57 +142,4 @@ public class DefaultFormatterFactory imp
         }
         return this.logger;
     }
-
-    class FormatterConfigKey implements Serializable
-    {
-        private static final long serialVersionUID = -6430653319283563370L;
-
-        private Class type;
-        private Locale locale;
-
-        FormatterConfigKey(Class type, Locale locale)
-        {
-            this.type = type;
-            this.locale = locale;
-        }
-
-        /*
-         * generated
-         */
-
-        @Override
-        public boolean equals(Object o)
-        {
-            if (this == o)
-            {
-                return true;
-            }
-            if (!(o instanceof FormatterConfigKey))
-            {
-                return false;
-            }
-
-            FormatterConfigKey that = (FormatterConfigKey) o;
-
-            if (!locale.equals(that.locale))
-            {
-                return false;
-            }
-            //noinspection RedundantIfStatement
-            if (!type.equals(that.type))
-            {
-                return false;
-            }
-
-            return true;
-        }
-
-        @Override
-        public int hashCode()
-        {
-            int result = type.hashCode();
-            result = 31 * result + locale.hashCode();
-            return result;
-        }
-    }
 }

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultMessageBuilder.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultMessageBuilder.java?rev=1031018&r1=1031017&r2=1031018&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultMessageBuilder.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultMessageBuilder.java Thu Nov  4 15:01:22 2010
@@ -37,7 +37,6 @@ import org.apache.myfaces.extensions.cdi
 import java.io.Serializable;
 import java.util.List;
 import java.util.ArrayList;
-import java.util.Set;
 import java.util.HashSet;
 import java.util.Map;
 import java.util.HashMap;
@@ -49,11 +48,12 @@ class DefaultMessageBuilder implements M
 {
     private static final long serialVersionUID = 892218539314030675L;
 
-    private List<Serializable> argumentList;
+    private ArrayList<Serializable> argumentList;
 
-    private Set<NamedArgument> namedArguments;
+    private HashSet<NamedArgument> namedArguments;
+    
     private MessageContext messageContext;
-    private Map<Class, MessagePayload> messagePayload;
+    private HashMap<Class, MessagePayload> messagePayload;
     private String messageDescriptor;
 
     private MessageFactory messageFactory;

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultMessageContextConfig.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultMessageContextConfig.java?rev=1031018&r1=1031017&r2=1031018&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultMessageContextConfig.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultMessageContextConfig.java Thu Nov  4 15:01:22 2010
@@ -30,7 +30,6 @@ import org.apache.myfaces.extensions.cdi
 import org.apache.myfaces.extensions.cdi.message.api.GenericConfig;
 
 import java.util.Locale;
-import java.util.Set;
 import java.util.concurrent.CopyOnWriteArraySet;
 
 /**
@@ -42,7 +41,7 @@ class DefaultMessageContextConfig implem
 
     private MessageInterpolator messageInterpolator;
     private MessageResolver messageResolver;
-    private Set<MessageHandler> messageHandlers;
+    private CopyOnWriteArraySet<MessageHandler> messageHandlers;
     private LocaleResolver localeResolver;
     private FormatterFactory formatterFactory;
 

Added: myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/FormatterConfigKey.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/FormatterConfigKey.java?rev=1031018&view=auto
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/FormatterConfigKey.java (added)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/FormatterConfigKey.java Thu Nov  4 15:01:22 2010
@@ -0,0 +1,78 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.myfaces.extensions.cdi.message.impl;
+
+import java.io.Serializable;
+import java.util.Locale;
+
+/**
+ * @author Gerhard Petracek
+ */
+class FormatterConfigKey implements Serializable
+{
+    private static final long serialVersionUID = -6430653319283563370L;
+
+    private Class type;
+    private Locale locale;
+
+    FormatterConfigKey(Class type, Locale locale)
+    {
+        this.type = type;
+        this.locale = locale;
+    }
+
+    /*
+    * generated
+    */
+
+    @Override
+    public boolean equals(Object o)
+    {
+        if (this == o)
+        {
+            return true;
+        }
+        if (!(o instanceof FormatterConfigKey))
+        {
+            return false;
+        }
+
+        FormatterConfigKey that = (FormatterConfigKey) o;
+
+        if (!locale.equals(that.locale))
+        {
+            return false;
+        }
+        //noinspection RedundantIfStatement
+        if (!type.equals(that.type))
+        {
+            return false;
+        }
+
+        return true;
+    }
+
+    @Override
+    public int hashCode()
+    {
+        int result = type.hashCode();
+        result = 31 * result + locale.hashCode();
+        return result;
+    }
+}
\ No newline at end of file

Modified: myfaces/extensions/cdi/trunk/jse-modules/scripting-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/scripting/impl/DefaultLanguageManager.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/scripting-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/scripting/impl/DefaultLanguageManager.java?rev=1031018&r1=1031017&r2=1031018&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/scripting-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/scripting/impl/DefaultLanguageManager.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/scripting-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/scripting/impl/DefaultLanguageManager.java Thu Nov  4 15:01:22 2010
@@ -29,7 +29,6 @@ import org.apache.myfaces.extensions.cdi
 import javax.enterprise.inject.spi.BeanManager;
 import javax.enterprise.inject.spi.Bean;
 import javax.enterprise.context.spi.CreationalContext;
-import java.util.Map;
 import java.util.Set;
 import java.util.concurrent.ConcurrentHashMap;
 
@@ -38,7 +37,7 @@ import java.util.concurrent.ConcurrentHa
  */
 public class DefaultLanguageManager implements LanguageManager
 {
-    private Map<Class<? extends Language>, Language> languageCache;
+    private ConcurrentHashMap<Class<? extends Language>, Language> languageCache;
 
     protected DefaultLanguageManager()
     {

Modified: myfaces/extensions/cdi/trunk/jse-modules/scripting-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/scripting/impl/util/ArgumentAwareScriptHelperMap.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/scripting-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/scripting/impl/util/ArgumentAwareScriptHelperMap.java?rev=1031018&r1=1031017&r2=1031018&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/scripting-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/scripting/impl/util/ArgumentAwareScriptHelperMap.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/scripting-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/scripting/impl/util/ArgumentAwareScriptHelperMap.java Thu Nov  4 15:01:22 2010
@@ -18,7 +18,6 @@
  */
 package org.apache.myfaces.extensions.cdi.scripting.impl.util;
 
-import java.util.Map;
 import java.util.HashMap;
 
 /**
@@ -27,8 +26,9 @@ import java.util.HashMap;
 class ArgumentAwareScriptHelperMap extends ScriptHelperMap
 {
     private static final long serialVersionUID = 393871900655666197L;
+
     private String language;
-    private Map<String, Object> arguments = new HashMap<String, Object>();
+    private HashMap<String, Object> arguments = new HashMap<String, Object>();
 
     public ArgumentAwareScriptHelperMap(String language, String arguments)
     {