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