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 2022/02/15 06:54:57 UTC

[myfaces] branch 3.0.x updated: MYFACES-4428 - Separate 'begin tag' code from 'end tag' code in HtmlTextRendererBase / HtmlSecretRendererBase (#230)

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

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


The following commit(s) were added to refs/heads/3.0.x by this push:
     new aa84bd9  MYFACES-4428 - Separate 'begin tag' code from 'end tag' code in HtmlTextRendererBase / HtmlSecretRendererBase (#230)
aa84bd9 is described below

commit aa84bd9e40f7502cb62d5181b3ac0396e19aed81
Author: Jonathan S. Fisher <ex...@gmail.com>
AuthorDate: Tue Feb 15 00:54:53 2022 -0600

    MYFACES-4428 - Separate 'begin tag' code from 'end tag' code in HtmlTextRendererBase / HtmlSecretRendererBase (#230)
---
 .../renderkit/html/HtmlSecretRendererTest.java     |  1 +
 .../renderkit/html/HtmlTextRendererTest.java       |  2 ++
 .../renderkit/html/HtmlSecretRendererBase.java     | 36 +++++++++++---------
 .../renderkit/html/HtmlTextRendererBase.java       | 38 +++++++++++++---------
 4 files changed, 45 insertions(+), 32 deletions(-)

diff --git a/impl/src/test/java/org/apache/myfaces/renderkit/html/HtmlSecretRendererTest.java b/impl/src/test/java/org/apache/myfaces/renderkit/html/HtmlSecretRendererTest.java
index 3ce5de8..52fc115 100644
--- a/impl/src/test/java/org/apache/myfaces/renderkit/html/HtmlSecretRendererTest.java
+++ b/impl/src/test/java/org/apache/myfaces/renderkit/html/HtmlSecretRendererTest.java
@@ -77,6 +77,7 @@ public class HtmlSecretRendererTest extends AbstractJsfTestCase
 
     public void testInputTextDefault() throws Exception
     {
+        inputText.encodeBegin(facesContext);
         inputText.encodeEnd(facesContext);
         facesContext.renderResponse();
 
diff --git a/impl/src/test/java/org/apache/myfaces/renderkit/html/HtmlTextRendererTest.java b/impl/src/test/java/org/apache/myfaces/renderkit/html/HtmlTextRendererTest.java
index e356e26..f340d0a 100644
--- a/impl/src/test/java/org/apache/myfaces/renderkit/html/HtmlTextRendererTest.java
+++ b/impl/src/test/java/org/apache/myfaces/renderkit/html/HtmlTextRendererTest.java
@@ -99,6 +99,7 @@ public class HtmlTextRendererTest extends AbstractJsfTestCase
         outputText.setValue("Output");
         outputText.setStyleClass("myStyleClass");
 
+        outputText.encodeBegin(facesContext);
         outputText.encodeEnd(facesContext);
         facesContext.renderResponse();
 
@@ -117,6 +118,7 @@ public class HtmlTextRendererTest extends AbstractJsfTestCase
         outputText.setValue("Output");
         outputText.setEscape(true);
 
+        outputText.encodeBegin(facesContext);
         outputText.encodeEnd(facesContext);
         facesContext.renderResponse();
 
diff --git a/shared/src/main/java/org/apache/myfaces/shared/renderkit/html/HtmlSecretRendererBase.java b/shared/src/main/java/org/apache/myfaces/shared/renderkit/html/HtmlSecretRendererBase.java
index 7610d5f..0a4507d 100644
--- a/shared/src/main/java/org/apache/myfaces/shared/renderkit/html/HtmlSecretRendererBase.java
+++ b/shared/src/main/java/org/apache/myfaces/shared/renderkit/html/HtmlSecretRendererBase.java
@@ -43,26 +43,30 @@ public class HtmlSecretRendererBase
         extends HtmlRenderer
 {
     private static final String AUTOCOMPLETE_VALUE_OFF = "off";
+    
+    @Override
+    public void encodeBegin(FacesContext facesContext, UIComponent uiComponent) throws IOException
+    {
+      RendererUtils.checkParamValidity(facesContext, uiComponent, UIInput.class);
+
+      ResponseWriter writer = facesContext.getResponseWriter();
+      
+      Map<String, List<ClientBehavior>> behaviors = null;
+      if (uiComponent instanceof ClientBehaviorHolder)
+      {
+          behaviors = ((ClientBehaviorHolder) uiComponent).getClientBehaviors();
+          if (!behaviors.isEmpty())
+          {
+              ResourceUtils.renderDefaultJsfJsInlineIfNecessary(facesContext, writer);
+          }
+      }
+      //allow subclasses to render custom attributes by separating rendering begin and end
+      renderInputBegin(facesContext, uiComponent);
+    }
 
     public void encodeEnd(FacesContext facesContext, UIComponent uiComponent)
             throws IOException
     {
-        RendererUtils.checkParamValidity(facesContext, uiComponent, UIInput.class);
-
-        ResponseWriter writer = facesContext.getResponseWriter();
-        
-        Map<String, List<ClientBehavior>> behaviors = null;
-        if (uiComponent instanceof ClientBehaviorHolder)
-        {
-            behaviors = ((ClientBehaviorHolder) uiComponent).getClientBehaviors();
-            if (!behaviors.isEmpty())
-            {
-                ResourceUtils.renderDefaultJsfJsInlineIfNecessary(facesContext, writer);
-            }
-        }
-        
-        //allow subclasses to render custom attributes by separating rendering begin and end
-        renderInputBegin(facesContext, uiComponent);
         renderInputEnd(facesContext, uiComponent);
     }
 
diff --git a/shared/src/main/java/org/apache/myfaces/shared/renderkit/html/HtmlTextRendererBase.java b/shared/src/main/java/org/apache/myfaces/shared/renderkit/html/HtmlTextRendererBase.java
index 45d9cbd..cb53daa 100644
--- a/shared/src/main/java/org/apache/myfaces/shared/renderkit/html/HtmlTextRendererBase.java
+++ b/shared/src/main/java/org/apache/myfaces/shared/renderkit/html/HtmlTextRendererBase.java
@@ -48,25 +48,33 @@ public class HtmlTextRendererBase
     private static final Logger log = Logger.getLogger(HtmlTextRendererBase.class.getName());
 
     private static final String AUTOCOMPLETE_VALUE_OFF = "off";
+    
+    @Override
+    public void encodeBegin(FacesContext facesContext, UIComponent component) throws IOException
+    {
+      org.apache.myfaces.shared.renderkit.RendererUtils.checkParamValidity(facesContext,component,null);
+      
+      Map<String, List<ClientBehavior>> behaviors = null;
+      if (component instanceof ClientBehaviorHolder)
+      {
+          behaviors = ((ClientBehaviorHolder) component).getClientBehaviors();
+          if (!behaviors.isEmpty())
+          {
+              ResourceUtils.renderDefaultJsfJsInlineIfNecessary(facesContext, facesContext.getResponseWriter());
+          }
+      }
+      if (component instanceof UIInput)
+      {
+          renderInputBegin(facesContext, component);
+      }
+    }
 
     public void encodeEnd(FacesContext facesContext, UIComponent component)
         throws IOException
     {
-        org.apache.myfaces.shared.renderkit.RendererUtils.checkParamValidity(facesContext,component,null);
-        
-        Map<String, List<ClientBehavior>> behaviors = null;
-        if (component instanceof ClientBehaviorHolder)
-        {
-            behaviors = ((ClientBehaviorHolder) component).getClientBehaviors();
-            if (!behaviors.isEmpty())
-            {
-                ResourceUtils.renderDefaultJsfJsInlineIfNecessary(facesContext, facesContext.getResponseWriter());
-            }
-        }
-        
         if (component instanceof UIInput)
         {
-            renderInput(facesContext, component);
+            renderInputEnd(facesContext, component);
         }
         else if (component instanceof UIOutput)
         {
@@ -173,12 +181,10 @@ public class HtmlTextRendererBase
         return true;
     }
 
+    @Deprecated
     protected void renderInput(FacesContext facesContext, UIComponent component)
         throws IOException
     {
-        //allow subclasses to render custom attributes by separating rendering begin and end 
-        renderInputBegin(facesContext, component);
-        renderInputEnd(facesContext, component);
     }
 
     //Subclasses can set the value of an attribute before, or can render a custom attribute after calling this method