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

thiagohp pushed a commit to branch better-page-invalidation
in repository https://gitbox.apache.org/repos/asf/tapestry-5.git

commit c6460dbf2895ad2645cf335b495d860e1d5f79b3
Author: Thiago H. de Paula Figueiredo <thi...@arsmachina.com.br>
AuthorDate: Sat Apr 29 17:02:28 2023 -0300

    TAP-2742: fixing PageSourceImpl
---
 .../internal/services/PageSourceImpl.java          | 43 ----------------------
 1 file changed, 43 deletions(-)

diff --git 
a/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PageSourceImpl.java
 
b/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PageSourceImpl.java
index a93720f72..5e33c05db 100644
--- 
a/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PageSourceImpl.java
+++ 
b/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PageSourceImpl.java
@@ -38,8 +38,6 @@ import org.apache.tapestry5.services.ComponentMessages;
 import org.apache.tapestry5.services.ComponentTemplates;
 import org.apache.tapestry5.services.pageload.ComponentRequestSelectorAnalyzer;
 import org.apache.tapestry5.services.pageload.ComponentResourceSelector;
-import org.apache.tapestry5.services.pageload.PageClassloaderContext;
-import org.apache.tapestry5.services.pageload.PageClassloaderContextManager;
 import org.slf4j.Logger;
 
 public class PageSourceImpl implements PageSource
@@ -52,8 +50,6 @@ public class PageSourceImpl implements PageSource
     
     private final ComponentClassResolver componentClassResolver;
     
-    private final PageClassloaderContextManager pageClassloaderContextManager;
-    
     private final Logger logger;
     
     final private boolean productionMode;
@@ -101,7 +97,6 @@ public class PageSourceImpl implements PageSource
     public PageSourceImpl(PageLoader pageLoader, 
ComponentRequestSelectorAnalyzer selectorAnalyzer,
             ComponentDependencyRegistry componentDependencyRegistry,
             ComponentClassResolver componentClassResolver,
-            PageClassloaderContextManager pageClassloaderContextManager,
             @Symbol(SymbolConstants.PRODUCTION_MODE) boolean productionMode,
             Logger logger)
     {
@@ -110,7 +105,6 @@ public class PageSourceImpl implements PageSource
         this.componentDependencyRegistry = componentDependencyRegistry;
         this.componentClassResolver = componentClassResolver;
         this.productionMode = productionMode;
-        this.pageClassloaderContextManager = pageClassloaderContextManager;
         this.logger = logger;
     }
 
@@ -139,43 +133,6 @@ public class PageSourceImpl implements PageSource
             // different threads. The last built one will "evict" the others 
from the page cache,
             // and the earlier ones will be GCed.
 
-            // TODO: maybe remove this
-            if (!productionMode)
-            {
-                
-                final String className = 
componentClassResolver.resolvePageNameToClassName(canonicalPageName);
-                if (!componentDependencyRegistry.contains(canonicalPageName))
-                {
-                    // Make sure you get a fresh version of the class before 
processing its
-                    // dependencies
-                    pageClassloaderContextManager.clear(className);
-                    final PageClassloaderContext context = 
pageClassloaderContextManager.get(className);
-                    final Class<?> clasz;
-                    try {
-                        
-                        clasz = 
context.getProxyFactory().getClassLoader().loadClass(className);
-                        
pageClassloaderContextManager.invalidateAndFireInvalidationEvents(context);
-                        componentDependencyRegistry.register(clasz);
-                        
-                        // The call to register() above will potentially cause 
some dependencies
-                        // to wrongly end in the the page's context's 
classloader instead of one of its parent
-                        // context/classloader. That's why we need to 
invalidate the page's current 
-                        // context and classloader and create a new instance 
of each.
-//                        componentDependencyRegistry.disableInvalidations();
-//                        final PageClassloaderContext toInvalidate = 
-//                                pageClassloaderContextManager.get(className);
-//                        
pageClassloaderContextManager.invalidate(toInvalidate);
-//                        componentDependencyRegistry.disableInvalidations();
-                        pageClassloaderContextManager.get(className);
-                    } catch (ClassNotFoundException e) 
-                    {
-                        throw new RuntimeException(e);
-                    }
-                    
-                }
-                
-            }
-            
             page = pageLoader.loadPage(canonicalPageName, selector);
 
             ref = new SoftReference<Page>(page);

Reply via email to