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/02 19:38:46 UTC
[myfaces] branch master updated: [perf] use VisitCallbacks as
singleton if possible
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 2f6c0c4 [perf] use VisitCallbacks as singleton if possible
2f6c0c4 is described below
commit 2f6c0c44444d98454a6800059705f61aa5d6b43b
Author: Thomas Andraschko <ta...@apache.org>
AuthorDate: Sun Dec 2 20:38:43 2018 +0100
[perf] use VisitCallbacks as singleton if possible
---
.../org/apache/myfaces/application/NavigationHandlerImpl.java | 7 ++++---
.../view/facelets/DefaultFaceletsStateManagementStrategy.java | 9 +--------
.../myfaces/view/facelets/FaceletViewDeclarationLanguage.java | 2 +-
.../PublishDynamicComponentRefreshTransientBuildCallback.java | 3 +++
.../view/facelets/tag/jsf/ComponentTagHandlerDelegate.java | 6 +++++-
5 files changed, 14 insertions(+), 13 deletions(-)
diff --git a/impl/src/main/java/org/apache/myfaces/application/NavigationHandlerImpl.java b/impl/src/main/java/org/apache/myfaces/application/NavigationHandlerImpl.java
index 6888189..21f9e28 100755
--- a/impl/src/main/java/org/apache/myfaces/application/NavigationHandlerImpl.java
+++ b/impl/src/main/java/org/apache/myfaces/application/NavigationHandlerImpl.java
@@ -320,8 +320,7 @@ public class NavigationHandlerImpl
facesContext.getAttributes().put(SKIP_ITERATION_HINT, Boolean.TRUE);
VisitContext visitContext = VisitContext.createVisitContext(facesContext, null, VISIT_HINTS);
- facesContext.getViewRoot().visitTree(visitContext,
- new PreDisposeViewCallback());
+ facesContext.getViewRoot().visitTree(visitContext, PreDisposeViewCallback.INSTANCE);
}
finally
{
@@ -425,7 +424,9 @@ public class NavigationHandlerImpl
private static class PreDisposeViewCallback implements VisitCallback
{
-
+ public static final PreDisposeViewCallback INSTANCE = new PreDisposeViewCallback();
+
+ @Override
public VisitResult visit(VisitContext context, UIComponent target)
{
context.getFacesContext().getApplication().publishEvent(context.getFacesContext(),
diff --git a/impl/src/main/java/org/apache/myfaces/view/facelets/DefaultFaceletsStateManagementStrategy.java b/impl/src/main/java/org/apache/myfaces/view/facelets/DefaultFaceletsStateManagementStrategy.java
index e5ff57d..d34b2d4 100644
--- a/impl/src/main/java/org/apache/myfaces/view/facelets/DefaultFaceletsStateManagementStrategy.java
+++ b/impl/src/main/java/org/apache/myfaces/view/facelets/DefaultFaceletsStateManagementStrategy.java
@@ -1176,21 +1176,14 @@ public class DefaultFaceletsStateManagementStrategy extends StateManagementStrat
private class SaveStateAndResetViewCallback implements VisitCallback
{
private final Map<String, Object> states;
-
private final UIViewRoot view;
-
private boolean viewResetable;
-
private boolean skipRoot;
-
private int count;
-
private boolean forceHardReset;
-
private boolean removeAddedComponents;
- public SaveStateAndResetViewCallback(UIViewRoot view, Map<String, Object> states,
- boolean forceHardReset)
+ public SaveStateAndResetViewCallback(UIViewRoot view, Map<String, Object> states, boolean forceHardReset)
{
this.states = states;
this.view = view;
diff --git a/impl/src/main/java/org/apache/myfaces/view/facelets/FaceletViewDeclarationLanguage.java b/impl/src/main/java/org/apache/myfaces/view/facelets/FaceletViewDeclarationLanguage.java
index 468b140..99cf8a9 100644
--- a/impl/src/main/java/org/apache/myfaces/view/facelets/FaceletViewDeclarationLanguage.java
+++ b/impl/src/main/java/org/apache/myfaces/view/facelets/FaceletViewDeclarationLanguage.java
@@ -445,7 +445,7 @@ public class FaceletViewDeclarationLanguage extends FaceletViewDeclarationLangua
{
VisitContext visitContext = (VisitContext) getVisitContextFactory().
getVisitContext(context, null, VISIT_HINTS_DYN_REFRESH);
- view.visitTree(visitContext, new PublishDynamicComponentRefreshTransientBuildCallback());
+ view.visitTree(visitContext, PublishDynamicComponentRefreshTransientBuildCallback.INSTANCE);
}
if (!usePartialStateSavingOnThisView || refreshTransientBuildOnPSS)
{
diff --git a/impl/src/main/java/org/apache/myfaces/view/facelets/PublishDynamicComponentRefreshTransientBuildCallback.java b/impl/src/main/java/org/apache/myfaces/view/facelets/PublishDynamicComponentRefreshTransientBuildCallback.java
index 4f20f77..ab4214b 100644
--- a/impl/src/main/java/org/apache/myfaces/view/facelets/PublishDynamicComponentRefreshTransientBuildCallback.java
+++ b/impl/src/main/java/org/apache/myfaces/view/facelets/PublishDynamicComponentRefreshTransientBuildCallback.java
@@ -29,6 +29,9 @@ import javax.faces.component.visit.VisitResult;
*/
public class PublishDynamicComponentRefreshTransientBuildCallback implements VisitCallback
{
+ public static final PublishDynamicComponentRefreshTransientBuildCallback INSTANCE =
+ new PublishDynamicComponentRefreshTransientBuildCallback();
+
@Override
public VisitResult visit(VisitContext context, UIComponent target)
{
diff --git a/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/ComponentTagHandlerDelegate.java b/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/ComponentTagHandlerDelegate.java
index 691ec89..ae9c800 100644
--- a/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/ComponentTagHandlerDelegate.java
+++ b/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/ComponentTagHandlerDelegate.java
@@ -259,7 +259,7 @@ public class ComponentTagHandlerDelegate extends TagHandlerDelegate
{
VisitContext visitContext = (VisitContext) mctx.getVisitContextFactory().
getVisitContext(facesContext, null, VISIT_HINTS_DYN_REFRESH);
- c.visitTree(visitContext, new PublishFaceletDynamicComponentRefreshTransientBuildCallback());
+ c.visitTree(visitContext, PublishFaceletDynamicComponentRefreshTransientBuildCallback.INSTANCE);
}
mctx.incrementUniqueComponentId();
@@ -965,6 +965,10 @@ public class ComponentTagHandlerDelegate extends TagHandlerDelegate
private static class PublishFaceletDynamicComponentRefreshTransientBuildCallback implements VisitCallback
{
+ public static final PublishFaceletDynamicComponentRefreshTransientBuildCallback INSTANCE
+ = new PublishFaceletDynamicComponentRefreshTransientBuildCallback();
+
+ @Override
public VisitResult visit(VisitContext context, UIComponent target)
{
context.getFacesContext().getApplication().publishEvent(