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/05/21 22:11:50 UTC

svn commit: r947155 - in /myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core: metadata/transformer/DefaultMetaDataTransformerFactory.java validation/strategy/DefaultValidationStrategyFactory.java

Author: gpetracek
Date: Fri May 21 20:11:50 2010
New Revision: 947155

URL: http://svn.apache.org/viewvc?rev=947155&view=rev
Log:
EXTVAL-80 improve caching

Modified:
    myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/metadata/transformer/DefaultMetaDataTransformerFactory.java
    myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/DefaultValidationStrategyFactory.java

Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/metadata/transformer/DefaultMetaDataTransformerFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/metadata/transformer/DefaultMetaDataTransformerFactory.java?rev=947155&r1=947154&r2=947155&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/metadata/transformer/DefaultMetaDataTransformerFactory.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/metadata/transformer/DefaultMetaDataTransformerFactory.java Fri May 21 20:11:50 2010
@@ -140,7 +140,7 @@ public class DefaultMetaDataTransformerF
             }
         }
 
-        return null;
+        return tryToCreateAndCacheMetaDataTransformer(validationStrategy, validationStrategyName, null);
     }
 
     private MetaDataTransformer tryToResolveCachedMetaDataTransformer(
@@ -170,24 +170,23 @@ public class DefaultMetaDataTransformerF
     private MetaDataTransformer tryToCreateAndCacheMetaDataTransformer(
             ValidationStrategy validationStrategy, String validationStrategyName, String transformerName)
     {
-        MetaDataTransformer metaDataTransformer = (MetaDataTransformer)
-                ClassUtils.tryToInstantiateClassForName(transformerName);
+        MetaDataTransformer metaDataTransformer = null;
+
+        if(transformerName != null)
+        {
+            metaDataTransformer = (MetaDataTransformer)ClassUtils.tryToInstantiateClassForName(transformerName);
+        }
 
-        if (metaDataTransformer != null)
+        if(validationStrategyName != null)
         {
-            if(validationStrategyName != null)
+            if(validationStrategy instanceof IdentifiableValidationStrategy)
             {
-                if(validationStrategy instanceof IdentifiableValidationStrategy)
-                {
-                    validationStrategyName += IdentifiableValidationStrategy.ID_PREFIX +
-                            ((IdentifiableValidationStrategy)validationStrategy).getId();
-                }
-                addMapping(validationStrategyName, transformerName);
+                validationStrategyName += IdentifiableValidationStrategy.ID_PREFIX +
+                        ((IdentifiableValidationStrategy)validationStrategy).getId();
             }
-            return metaDataTransformer;
+            addMapping(validationStrategyName, transformerName);
         }
-
-        return null;
+        return metaDataTransformer;
     }
 
     private synchronized void initStaticMappings()

Modified: myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/DefaultValidationStrategyFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/DefaultValidationStrategyFactory.java?rev=947155&r1=947154&r2=947155&view=diff
==============================================================================
--- myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/DefaultValidationStrategyFactory.java (original)
+++ myfaces/extensions/validator/trunk/core/src/main/java/org/apache/myfaces/extensions/validator/core/validation/strategy/DefaultValidationStrategyFactory.java Fri May 21 20:11:50 2010
@@ -97,11 +97,18 @@ public class DefaultValidationStrategyFa
                 return validationStrategy;
             }
         }
+
+        addMapping(metaDataKey, null);
         return null;
     }
 
     private ValidationStrategy getValidationStrategyInstance(String validationStrategyName)
     {
+        if(validationStrategyName == null)
+        {
+            return null;
+        }
+
         if (validationStrategyName
             .startsWith(AnnotationToValidationStrategyBeanNameMapper.PREFIX_FOR_BEAN_MAPPING))
         {