You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by ba...@apache.org on 2006/10/07 15:03:05 UTC
svn commit: r453897 -
/myfaces/shared/branches/3_0_0/core/src/main/java/org/apache/myfaces/shared/taglib/UIComponentTagUtils.java
Author: baranda
Date: Sat Oct 7 06:03:05 2006
New Revision: 453897
URL: http://svn.apache.org/viewvc?view=rev&rev=453897
Log:
Reduced repetitive code by creating the evaluateValueExpression(ELContext,ValueExpression) util method
Modified:
myfaces/shared/branches/3_0_0/core/src/main/java/org/apache/myfaces/shared/taglib/UIComponentTagUtils.java
Modified: myfaces/shared/branches/3_0_0/core/src/main/java/org/apache/myfaces/shared/taglib/UIComponentTagUtils.java
URL: http://svn.apache.org/viewvc/myfaces/shared/branches/3_0_0/core/src/main/java/org/apache/myfaces/shared/taglib/UIComponentTagUtils.java?view=diff&rev=453897&r1=453896&r2=453897
==============================================================================
--- myfaces/shared/branches/3_0_0/core/src/main/java/org/apache/myfaces/shared/taglib/UIComponentTagUtils.java (original)
+++ myfaces/shared/branches/3_0_0/core/src/main/java/org/apache/myfaces/shared/taglib/UIComponentTagUtils.java Sat Oct 7 06:03:05 2006
@@ -33,6 +33,7 @@
import javax.faces.validator.MethodExpressionValidator;
import javax.el.ValueExpression;
import javax.el.MethodExpression;
+import javax.el.ELContext;
/**
* @author Manfred Geiler (latest modification by $Author$)
@@ -67,16 +68,11 @@
String propName,
ValueExpression value)
{
- if (value != null)
+ String strValue = (String) evaluateValueExpression(context.getELContext(), value);
+
+ if (strValue != null)
{
- if (value.isLiteralText())
- {
- component.getAttributes().put(propName, Integer.valueOf(value.getExpressionString()));
- }
- else
- {
- component.setValueExpression(propName, value);
- }
+ component.getAttributes().put(propName, Integer.valueOf(value.getExpressionString()));
}
}
@@ -89,16 +85,11 @@
String propName,
ValueExpression value)
{
- if (value != null)
+ String strValue = (String) evaluateValueExpression(context.getELContext(), value);
+
+ if (strValue != null)
{
- if (value.isLiteralText())
- {
- component.getAttributes().put(propName, Long.valueOf(value.getExpressionString()));
- }
- else
- {
- component.setValueExpression(propName, value);
- }
+ component.getAttributes().put(propName, Long.valueOf(value.getExpressionString()));
}
}
@@ -110,16 +101,11 @@
String propName,
ValueExpression value)
{
- if (value != null)
+ String strValue = (String) evaluateValueExpression(context.getELContext(), value);
+
+ if (strValue != null)
{
- if (value.isLiteralText())
- {
- component.getAttributes().put(propName, value.getExpressionString());
- }
- else
- {
- component.setValueExpression(propName, value);
- }
+ component.getAttributes().put(propName, value.getExpressionString());
}
}
@@ -131,16 +117,11 @@
String propName,
ValueExpression value)
{
- if (value != null)
+ String strValue = (String) evaluateValueExpression(context.getELContext(), value);
+
+ if (strValue != null)
{
- if (value.isLiteralText())
- {
- component.getAttributes().put(propName, Boolean.valueOf(value.getExpressionString()));
- }
- else
- {
- component.setValueExpression(propName, value);
- }
+ component.getAttributes().put(propName, Boolean.valueOf(value.getExpressionString()));
}
}
@@ -306,6 +287,21 @@
((EditableValueHolder)component).addValueChangeListener(
new MethodExpressionValueChangeListener(valueChangedListener));
+ }
+ }
+
+ /**
+ * @since 1.2
+ */
+ public static Object evaluateValueExpression(ELContext elContext, ValueExpression valueExpression )
+ {
+ if (valueExpression.isLiteralText())
+ {
+ return valueExpression.getExpressionString();
+ }
+ else
+ {
+ return valueExpression.getValue(elContext);
}
}