You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by ta...@apache.org on 2018/12/18 00:03:36 UTC

[myfaces] branch master updated: avoid lookup

This is an automated email from the ASF dual-hosted git repository.

tandraschko pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/myfaces.git


The following commit(s) were added to refs/heads/master by this push:
     new 5b211b4  avoid lookup
5b211b4 is described below

commit 5b211b4a7b9dd5f01213c5f5ba2628745275aa77
Author: Thomas Andraschko <ta...@apache.org>
AuthorDate: Tue Dec 18 01:03:43 2018 +0100

    avoid lookup
---
 .../myfaces/view/facelets/impl/DefaultFacelet.java | 29 +++++++++-------------
 .../view/facelets/impl/DefaultFaceletFactory.java  | 20 +++++++--------
 2 files changed, 22 insertions(+), 27 deletions(-)

diff --git a/impl/src/main/java/org/apache/myfaces/view/facelets/impl/DefaultFacelet.java b/impl/src/main/java/org/apache/myfaces/view/facelets/impl/DefaultFacelet.java
index 55afc3e..3191f19 100644
--- a/impl/src/main/java/org/apache/myfaces/view/facelets/impl/DefaultFacelet.java
+++ b/impl/src/main/java/org/apache/myfaces/view/facelets/impl/DefaultFacelet.java
@@ -47,7 +47,6 @@ import javax.faces.context.FacesContext;
 import javax.faces.view.facelets.FaceletContext;
 import javax.faces.view.facelets.FaceletException;
 import javax.faces.view.facelets.FaceletHandler;
-import org.apache.myfaces.config.MyfacesConfig;
 
 import org.apache.myfaces.view.facelets.AbstractFacelet;
 import org.apache.myfaces.view.facelets.AbstractFaceletContext;
@@ -70,29 +69,20 @@ final class DefaultFacelet extends AbstractFacelet
     private final static String APPLIED_KEY = "org.apache.myfaces.view.facelets.APPLIED";
 
     private final String _alias;
-    
     private final String _faceletId;
-
     private final ExpressionFactory _elFactory;
-
     private final DefaultFaceletFactory _factory;
-
     private final long _createTime;
-
     private final long _refreshPeriod;
-
     private final Map<String, URL> _relativePaths;
-
     private final FaceletHandler _root;
-
     private final URL _src;
-
     private final boolean _isBuildingCompositeComponentMetadata; 
-    
     private final boolean _encodingHandler;
+    private final boolean viewUniqueIdsCacheEnabled;
 
     public DefaultFacelet(DefaultFaceletFactory factory, ExpressionFactory el, URL src, String alias,
-                          String faceletId, FaceletHandler root)
+                          String faceletId, FaceletHandler root, boolean viewUniqueIdsCacheEnabled)
     {
         _factory = factory;
         _elFactory = el;
@@ -102,13 +92,16 @@ final class DefaultFacelet extends AbstractFacelet
         _faceletId = faceletId;
         _createTime = System.currentTimeMillis();
         _refreshPeriod = _factory.getRefreshPeriod();
+        
         _relativePaths = Collections.synchronizedMap(new WeakHashMap());
         _isBuildingCompositeComponentMetadata = false;
         _encodingHandler = (root instanceof EncodingHandler);
+        this.viewUniqueIdsCacheEnabled = viewUniqueIdsCacheEnabled;
     }
 
     public DefaultFacelet(DefaultFaceletFactory factory, ExpressionFactory el, URL src, String alias,
-            String faceletId, FaceletHandler root, boolean isBuildingCompositeComponentMetadata)
+            String faceletId, FaceletHandler root, boolean isBuildingCompositeComponentMetadata,
+            boolean viewUniqueIdsCacheEnabled)
     {
         _factory = factory;
         _elFactory = el;
@@ -118,9 +111,11 @@ final class DefaultFacelet extends AbstractFacelet
         _faceletId = faceletId;
         _createTime = System.currentTimeMillis();
         _refreshPeriod = _factory.getRefreshPeriod();
+        
         _relativePaths = Collections.synchronizedMap(new WeakHashMap());
         _isBuildingCompositeComponentMetadata = isBuildingCompositeComponentMetadata;
         _encodingHandler = (root instanceof EncodingHandler);
+        this.viewUniqueIdsCacheEnabled = viewUniqueIdsCacheEnabled;
     }    
 
     /**
@@ -140,10 +135,10 @@ final class DefaultFacelet extends AbstractFacelet
             myFaceletContext = new FaceletCompositionContextImpl(_factory, facesContext);
             myFaceletContext.init(facesContext);
             faceletCompositionContextInitialized = true;
-            if (_encodingHandler && !myFaceletContext.isBuildingViewMetadata()
-                    && MyfacesConfig.getCurrentInstance(
-                    facesContext.getExternalContext()).isViewUniqueIdsCacheEnabled() && 
-                    _refreshPeriod <= 0)
+            if (_encodingHandler
+                    && !myFaceletContext.isBuildingViewMetadata()
+                    && viewUniqueIdsCacheEnabled
+                    && _refreshPeriod <= 0)
             {
                 List<String> uniqueIdList = ((EncodingHandler)_root).getUniqueIdList();
                 if (uniqueIdList == null)
diff --git a/impl/src/main/java/org/apache/myfaces/view/facelets/impl/DefaultFaceletFactory.java b/impl/src/main/java/org/apache/myfaces/view/facelets/impl/DefaultFaceletFactory.java
index fa5df50..b282977 100644
--- a/impl/src/main/java/org/apache/myfaces/view/facelets/impl/DefaultFaceletFactory.java
+++ b/impl/src/main/java/org/apache/myfaces/view/facelets/impl/DefaultFaceletFactory.java
@@ -40,6 +40,7 @@ import javax.faces.view.facelets.FaceletContext;
 import javax.faces.view.facelets.FaceletException;
 import javax.faces.view.facelets.FaceletHandler;
 import javax.faces.view.facelets.ResourceResolver;
+import org.apache.myfaces.config.MyfacesConfig;
 
 import org.apache.myfaces.resource.ResourceLoaderUtils;
 import org.apache.myfaces.util.Assert;
@@ -61,13 +62,9 @@ public final class DefaultFaceletFactory extends FaceletFactory
     protected final Logger log = Logger.getLogger(DefaultFaceletFactory.class.getName());
 
     private URL _baseUrl;
-
     private Compiler _compiler;
-
     private Map<String, DefaultFacelet> _compositeComponentMetadataFacelets;
-
     private long _refreshPeriod;
-
     private Map<String, URL> _relativeLocations;
 
     private javax.faces.view.facelets.ResourceResolver _resolver;
@@ -75,6 +72,7 @@ public final class DefaultFaceletFactory extends FaceletFactory
     
     private FaceletCache<Facelet> _faceletCache;
     private AbstractFaceletCache<Facelet> _abstractFaceletCache;
+    private boolean viewUniqueIdsCacheEnabled;
     
     public DefaultFaceletFactory(Compiler compiler, ResourceResolver resolver) throws IOException
     {
@@ -98,8 +96,6 @@ public final class DefaultFaceletFactory extends FaceletFactory
             _defaultResolver = (DefaultResourceResolver) _resolver;
         }
 
-        //_baseUrl = resolver.resolveUrl("/");
-
         _refreshPeriod = refreshPeriod < 0 ? INFINITE_DELAY : refreshPeriod * 1000;
         
         // facelet cache. Lookup here, because after all this is a "part" of the facelet factory implementation.
@@ -174,6 +170,8 @@ public final class DefaultFaceletFactory extends FaceletFactory
             log.fine("Using ResourceResolver: " + _resolver);
             log.fine("Using Refresh Period: " + _refreshPeriod);
         }
+
+        this.viewUniqueIdsCacheEnabled = MyfacesConfig.getCurrentInstance().isViewUniqueIdsCacheEnabled();
     }
 
     /**
@@ -380,7 +378,8 @@ public final class DefaultFaceletFactory extends FaceletFactory
         try
         {
             FaceletHandler h = _compiler.compile(url, alias);
-            DefaultFacelet f = new DefaultFacelet(this, _compiler.createExpressionFactory(), url, alias, alias, h);
+            DefaultFacelet f = new DefaultFacelet(this, _compiler.createExpressionFactory(), url, alias, alias, h,
+                viewUniqueIdsCacheEnabled);
             return f;
         }
         catch (FileNotFoundException fnfe)
@@ -414,7 +413,7 @@ public final class DefaultFaceletFactory extends FaceletFactory
         {
             FaceletHandler h = _compiler.compileViewMetadata(url, alias);
             DefaultFacelet f = new DefaultFacelet(this, _compiler.createExpressionFactory(), url, alias, 
-                    faceletId, h);
+                    faceletId, h, viewUniqueIdsCacheEnabled);
             return f;
         }
         catch (FileNotFoundException fnfe)
@@ -448,7 +447,7 @@ public final class DefaultFaceletFactory extends FaceletFactory
         {
             FaceletHandler h = _compiler.compileCompositeComponentMetadata(url, alias);
             DefaultFacelet f = new DefaultFacelet(this, _compiler.createExpressionFactory(), url, alias,
-                    alias, h, true);
+                    alias, h, true, viewUniqueIdsCacheEnabled);
             return f;
         }
         catch (FileNotFoundException fnfe)
@@ -599,7 +598,8 @@ public final class DefaultFaceletFactory extends FaceletFactory
     {
         FaceletHandler handler = _compiler.compileComponent(taglibURI, tagName, attributes);
         String alias = "/component/oamf:"+tagName;
-        return new DefaultFacelet(this, _compiler.createExpressionFactory(), getBaseUrl(), alias, alias, handler);
+        return new DefaultFacelet(this, _compiler.createExpressionFactory(), getBaseUrl(), alias, alias, handler,
+                viewUniqueIdsCacheEnabled);
     }
     
     /**