Update of /var/cvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib/util
In directory james.mmbase.org:/tmp/cvs-serv5490/util

Modified Files:
        Backing.java BasicBacking.java ContextContainer.java 
        PageContextBacking.java StandaloneContextContainer.java 
Log Message:
MMB-1760


See also: 
http://cvs.mmbase.org/viewcvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib/util
See also: http://www.mmbase.org/jira/browse/MMB-1760


Index: Backing.java
===================================================================
RCS file: 
/var/cvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib/util/Backing.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- Backing.java        13 Oct 2008 12:04:30 -0000      1.9
+++ Backing.java        29 Dec 2008 11:19:17 -0000      1.10
@@ -19,7 +19,7 @@
  *
  * @author Michiel Meeuwissen
  * @since MMBase-1.8
- * @version $Id: Backing.java,v 1.9 2008/10/13 12:04:30 michiel Exp $
+ * @version $Id: Backing.java,v 1.10 2008/12/29 11:19:17 michiel Exp $
  */
 
 public interface Backing extends Map<String, Object> {
@@ -60,5 +60,10 @@
      * @since MMBase-1.9
      */
     public Map<String, Object> getOriginalMap();
+
+    /**
+     * @since MMBase-1.9.1
+     */
+    public boolean isELIgnored();
 }
 


Index: BasicBacking.java
===================================================================
RCS file: 
/var/cvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib/util/BasicBacking.java,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- BasicBacking.java   13 Oct 2008 12:04:31 -0000      1.14
+++ BasicBacking.java   29 Dec 2008 11:19:17 -0000      1.15
@@ -28,7 +28,7 @@
 
  * @author Michiel Meeuwissen
  * @since MMBase-1.8
- * @version $Id: BasicBacking.java,v 1.14 2008/10/13 12:04:31 michiel Exp $
+ * @version $Id: BasicBacking.java,v 1.15 2008/12/29 11:19:17 michiel Exp $
  */
 
 public  class BasicBacking extends AbstractMap<String, Object>  implements 
Backing {
@@ -72,28 +72,36 @@
         }
 
     }
-    public BasicBacking(Map<String, Object> backing) {
+    /**
+     * @since MMBase-1.9
+     */
+    public BasicBacking(Map<String, Object> backing, boolean ignoreEL) {
+        if (log.isDebugEnabled()) {
+            log.debug("Explicit backing " + backing, new Exception());
+        }
         pageContext = null;
         b = backing;
-        isELIgnored = true;
+        isELIgnored = ignoreEL;
     }
 
     public void pushPageContext(PageContext pc) {
-        final PageContext origPageContext = pageContext;
         pageContext = pc;
-        if (isELIgnored) return; // never mind
+        if (isELIgnored) {
+            log.debug("EL ignored");
+            return; // never mind
+        } else {
+            log.debug("Pushing page context " + b);
+        }
 
         originalPageContextValues = (Map<String, Object>) 
pageContext.getAttribute(PAGECONTEXT_KEY + uniqueNumber);
         if (originalPageContextValues == null) {
             originalPageContextValues = new HashMap<String, Object>();
             pageContext.setAttribute(PAGECONTEXT_KEY + uniqueNumber, 
originalPageContextValues);
         }
-        if (! origPageContext.equals(pageContext)) {
             for (Map.Entry<String, Object> entry : b.entrySet()) {
                 mirrorPut(entry.getKey(), entry.getValue());
             }
         }
-    }
     public void pullPageContext(PageContext pc) {
         pageContext = pc;
         if (isELIgnored) return;
@@ -219,6 +227,13 @@
         }
     }
 
+    /**
+     * @since MMBase-1.9.1
+     */
+    public boolean isELIgnored() {
+        return isELIgnored;
+    }
+
     public String toString() {
         return "BASIC BACKING " + super.toString();
     }


Index: ContextContainer.java
===================================================================
RCS file: 
/var/cvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib/util/ContextContainer.java,v
retrieving revision 1.63
retrieving revision 1.64
diff -u -b -r1.63 -r1.64
--- ContextContainer.java       7 Oct 2008 17:28:25 -0000       1.63
+++ ContextContainer.java       29 Dec 2008 11:19:17 -0000      1.64
@@ -25,7 +25,7 @@
  * there is searched for HashMaps in the HashMap.
  *
  * @author Michiel Meeuwissen
- * @version $Id: ContextContainer.java,v 1.63 2008/10/07 17:28:25 michiel Exp $
+ * @version $Id: ContextContainer.java,v 1.64 2008/12/29 11:19:17 michiel Exp $
  **/
 
 public abstract class ContextContainer extends AbstractMap<String, Object> 
implements Map<String, Object> {
@@ -152,7 +152,7 @@
      */
     public void setParent(PageContext pc, ContextContainer p) {
         if (log.isDebugEnabled()) {
-            log.debug("Setting parent of " + getClass() + " "  + this + " to " 
+ pc);
+            log.debug("Setting parent of " + getClass() + " "  + this + " to " 
+ pc + " backing " + getBacking().getClass());
         }
         getBacking().pushPageContext(pc);
         parent = p;


Index: PageContextBacking.java
===================================================================
RCS file: 
/var/cvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib/util/PageContextBacking.java,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -b -r1.20 -r1.21
--- PageContextBacking.java     5 Nov 2008 13:06:49 -0000       1.20
+++ PageContextBacking.java     29 Dec 2008 11:19:17 -0000      1.21
@@ -26,7 +26,7 @@
 
  * @author Michiel Meeuwissen
  * @since MMBase-1.8
- * @version $Id: PageContextBacking.java,v 1.20 2008/11/05 13:06:49 michiel 
Exp $
+ * @version $Id: PageContextBacking.java,v 1.21 2008/12/29 11:19:17 michiel 
Exp $
  */
 
 public  class PageContextBacking extends AbstractMap<String, Object> 
implements Backing {
@@ -194,6 +194,10 @@
         jspvars.clear();
     }
 
+    public boolean isELIgnored() {
+        return false;
+    }
+
     public String toString() {
         return "PAGECONTEXT BACKING " + super.toString();
     }


Index: StandaloneContextContainer.java
===================================================================
RCS file: 
/var/cvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib/util/StandaloneContextContainer.java,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -b -r1.17 -r1.18
--- StandaloneContextContainer.java     15 Oct 2008 12:36:13 -0000      1.17
+++ StandaloneContextContainer.java     29 Dec 2008 11:19:17 -0000      1.18
@@ -15,7 +15,7 @@
  * This ContextContainer provides its own 'backing', it is used as 
'subcontext' in other contextes.
  *
  * @author Michiel Meeuwissen
- * @version $Id: StandaloneContextContainer.java,v 1.17 2008/10/15 12:36:13 
michiel Exp $
+ * @version $Id: StandaloneContextContainer.java,v 1.18 2008/12/29 11:19:17 
michiel Exp $
  * @since MMBase-1.8
  **/
 
@@ -37,9 +37,13 @@
         backing = createBacking(pc);
         // values must fall through to PageContext, otherwise you always must 
prefix by context, even in it.
     }
-    public StandaloneContextContainer(String i, java.util.Map<String, Object> 
values) {
+
+    /**
+     * @since MMBase-1.9
+     */
+    public StandaloneContextContainer(String i, java.util.Map<String, Object> 
values, boolean ignoreEL) {
         super(i, null);
-        backing = new BasicBacking(values);
+        backing = new BasicBacking(values, ignoreEL);
 
     }
     protected BasicBacking createBacking(PageContext pc) {
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to