Author: maksimkaszynski
Date: 2007-08-30 09:24:36 -0400 (Thu, 30 Aug 2007)
New Revision: 2607
Added:
trunk/ui/scrollableDataTable/src/main/java/org/richfaces/model/internal/ValueBindingExpression.java
Log:
RF-734
Added:
trunk/ui/scrollableDataTable/src/main/java/org/richfaces/model/internal/ValueBindingExpression.java
===================================================================
---
trunk/ui/scrollableDataTable/src/main/java/org/richfaces/model/internal/ValueBindingExpression.java
(rev 0)
+++
trunk/ui/scrollableDataTable/src/main/java/org/richfaces/model/internal/ValueBindingExpression.java 2007-08-30
13:24:36 UTC (rev 2607)
@@ -0,0 +1,42 @@
+package org.richfaces.model.internal;
+
+import java.util.Map;
+
+import javax.faces.context.FacesContext;
+import javax.faces.el.ValueBinding;
+
+/**
+ *
+ * Expression evaluated by invoking EL-expression in context of base object
+ *
+ * @author Maksim Kaszynski
+ *
+ */
+final class ValueBindingExpression extends Expression {
+ private final FacesContext context;
+
+ private Map requestMap;
+ private String var;
+ private ValueBinding binding;
+
+ /**
+ * @param n
+ * @param application
+ * @param requestMap
+ * @param expressionString
+ * @param context
+ * @param var
+ */
+ ValueBindingExpression(FacesContext context, String expressionString, String var) {
+ super(expressionString);
+ this.context = context;
+ this.var = var;
+ binding = context.getApplication().createValueBinding(expressionString);
+ requestMap = context.getExternalContext().getRequestMap();
+ }
+
+ public Object evaluate(Object base) {
+ requestMap.put(var, base);
+ return binding.getValue(context);
+ }
+}
\ No newline at end of file
Show replies by date