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

svn commit: r1433542 - /myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/ResourceHandlerImpl.java

Author: lu4242
Date: Tue Jan 15 17:29:18 2013
New Revision: 1433542

URL: http://svn.apache.org/viewvc?rev=1433542&view=rev
Log:
MYFACES-3672 TODO 'optimize this code' in ResourceHandlerImpl.isResourceIdentifierExcluded() (Thanks to dennis hoersch for provide this patch)

Modified:
    myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/ResourceHandlerImpl.java

Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/ResourceHandlerImpl.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/ResourceHandlerImpl.java?rev=1433542&r1=1433541&r2=1433542&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/ResourceHandlerImpl.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/ResourceHandlerImpl.java Tue Jan 15 17:29:18 2013
@@ -87,6 +87,8 @@ public class ResourceHandlerImpl extends
     
     private Boolean _allowSlashLibraryName;
     private int _resourceBufferSize = -1;
+    
+    private String[] _excludedResourceExtensions;
 
     @Override
     public Resource createResource(String resourceName)
@@ -542,20 +544,20 @@ public class ResourceHandlerImpl extends
         return localePrefix;
     }
 
-    protected boolean isResourceIdentifierExcluded(FacesContext context,
-            String resourceIdentifier)
+    protected boolean isResourceIdentifierExcluded(FacesContext context, String resourceIdentifier)
     {
-        String value = context.getExternalContext().getInitParameter(
-                RESOURCE_EXCLUDES_PARAM_NAME);
-        if (value == null)
+        if (_excludedResourceExtensions == null)
         {
-            value = RESOURCE_EXCLUDES_DEFAULT_VALUE;
+            String value = WebConfigParamUtils.getStringInitParameter(context.getExternalContext(),
+                            RESOURCE_EXCLUDES_PARAM_NAME,
+                            RESOURCE_EXCLUDES_DEFAULT_VALUE);
+            
+            _excludedResourceExtensions = StringUtils.splitShortString(value, ' ');
         }
-        //TODO: optimize this code
-        String[] extensions = StringUtils.splitShortString(value, ' ');
-        for (int i = 0; i < extensions.length; i++)
+        
+        for (int i = 0; i < _excludedResourceExtensions.length; i++)
         {
-            if (resourceIdentifier.endsWith(extensions[i]))
+            if (resourceIdentifier.endsWith(_excludedResourceExtensions[i]))
             {
                 return true;
             }