Author: michiel
Date: 2010-03-11 14:52:45 +0100 (Thu, 11 Mar 2010)
New Revision: 41343

Modified:
   
mmbase/branches/MMBase-1_9/applications/jumpers/src/main/java/org/mmbase/jumpers/Jumpers.java
Log:
  MMB-1940

Modified: 
mmbase/branches/MMBase-1_9/applications/jumpers/src/main/java/org/mmbase/jumpers/Jumpers.java
===================================================================
--- 
mmbase/branches/MMBase-1_9/applications/jumpers/src/main/java/org/mmbase/jumpers/Jumpers.java
       2010-03-11 13:43:52 UTC (rev 41342)
+++ 
mmbase/branches/MMBase-1_9/applications/jumpers/src/main/java/org/mmbase/jumpers/Jumpers.java
       2010-03-11 13:52:45 UTC (rev 41343)
@@ -75,7 +75,9 @@
                 @Override
                 public String  getFunctionValue(Parameters parameters) {
                     String key = parameters.getString("key");
-                    return getJump(key);
+                    boolean reload = 
org.mmbase.util.Casting.toBoolean(parameters.get("reload"));
+                    log.debug("Calculating jumper " + reload);
+                    return getJump(key, reload);
                 }
             });
     }
@@ -235,11 +237,11 @@
      * @return the found alternate url.
      */
     public String getJump(StringTokenizer tok) {
-        return getJump(tok,false);
+        return getJump(tok, false);
     }
     public String getJump(StringTokenizer tok, boolean reload) {
         String key = tok.nextToken();
-        return getJump(key,reload);
+        return getJump(key, reload);
     }
 
     public String getJump(String key){
@@ -393,14 +395,20 @@
             if (url == null) {
                 // no direct url call its builder
                 if (ikey >= 0) {
-                    url = jumperDatabaseCache_get(key);
+                    if (! reload) {
+                        url = jumperDatabaseCache_get(key);
+                    }
                     if (url == null) {
                         MMObjectNode node = getNode(ikey);
                         if (node != null) {
                             log.debug("Found node " + ikey);
                             synchronized(this) {
-                                url = (String) jumpCache.get(key);
-                                log.debug("found from jumpcache '" + url + 
"'");
+                                if (! reload) {
+                                    url = (String) jumpCache.get(key);
+                                    log.debug("found from jumpcache '" + url + 
"'");
+                                } else {
+                                    log.debug("requested reload so jumpcache 
not consulted");
+                                }
                                 if (url == null) {
                                     log.debug("Applying " + strategy);
                                     url = strategy.calculate(node);
@@ -497,7 +505,7 @@
                     oldurl = node.getStringValue("url");
                     node.setValue("url",url);
                     node.commit();
-                    log.info("dbcache: put: update detected for 
number("+number+"): old("+oldurl+") -> new("+url+")");
+                    log.debug("dbcache: put: update detected for 
number("+number+"): old("+oldurl+") -> new("+url+")");
 
                  // and remove double
                  } else {

_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to