Update of /var/cvs/src/org/mmbase/framework/basic
In directory james.mmbase.org:/tmp/cvs-serv20406

Modified Files:
        ChainedUrlConverter.java DirectoryUrlConverter.java 
        MMBaseUrlConverter.java Url.java 
Log Message:
java sucks a bit when it comes to adition of integers. Worked around.


See also: http://cvs.mmbase.org/viewcvs/src/org/mmbase/framework/basic


Index: ChainedUrlConverter.java
===================================================================
RCS file: /var/cvs/src/org/mmbase/framework/basic/ChainedUrlConverter.java,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -b -r1.15 -r1.16
--- ChainedUrlConverter.java    27 Oct 2008 17:42:31 -0000      1.15
+++ ChainedUrlConverter.java    28 Oct 2008 17:40:26 -0000      1.16
@@ -28,7 +28,7 @@
  * outcome of a converter can be added to the outcome of its preceder.
  *
  * @author André van Toly
- * @version $Id: ChainedUrlConverter.java,v 1.15 2008/10/27 17:42:31 michiel 
Exp $
+ * @version $Id: ChainedUrlConverter.java,v 1.16 2008/10/28 17:40:26 michiel 
Exp $
  * @since MMBase-1.9
  */
 public class ChainedUrlConverter implements UrlConverter {
@@ -120,10 +120,10 @@
         Class preferred       = frameworkParameters.get(URLCONVERTER_PARAM);
         Url b = u;
         if (preferred != null && ! preferred.isInstance(u.getUrlConverter())) {
-            b = new BasicUrl(b, b.getQuality() - 10000);
+            b = new BasicUrl(b, Math.min(Integer.MIN_VALUE, b.getQuality() - 
10000));
         }
         if (current != null && u.getUrlConverter() != current) {
-            b = new BasicUrl(b, b.getQuality() - 10000);
+            b = new BasicUrl(b, Math.min(Integer.MIN_VALUE, b.getQuality() - 
10000));
         }
         return b;
     }
@@ -135,12 +135,17 @@
                          Map<String, Object> params,
                          Parameters frameworkParameters, boolean escapeAmps) 
throws FrameworkException {
         Url result = Url.NOT;
+        if (log.debugEnabled()) {
+            log.debug("Producing " + path + " " + params + " " + 
frameworkParameters);
+        }
         for (UrlConverter uc : uclist) {
             Url proposal = getProposal(uc.getUrl(path, params, 
frameworkParameters, escapeAmps), frameworkParameters);
             if (proposal.getQuality() > result.getQuality()) {
                 result = proposal;
             }
-
+        }
+        if (result == Url.NOT) {
+            log.warn("Could not produce URL for " + path + " " + params + " " 
+ frameworkParameters);
         }
         return result;
     }


Index: DirectoryUrlConverter.java
===================================================================
RCS file: /var/cvs/src/org/mmbase/framework/basic/DirectoryUrlConverter.java,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -b -r1.13 -r1.14
--- DirectoryUrlConverter.java  27 Oct 2008 17:27:37 -0000      1.13
+++ DirectoryUrlConverter.java  28 Oct 2008 17:40:26 -0000      1.14
@@ -28,7 +28,7 @@
  * It is also assumed that the niceness of the URL's is basicly about one 
block.
  *
  * @author Michiel Meeuwissen
- * @version $Id: DirectoryUrlConverter.java,v 1.13 2008/10/27 17:27:37 michiel 
Exp $
+ * @version $Id: DirectoryUrlConverter.java,v 1.14 2008/10/28 17:40:26 michiel 
Exp $
  * @since MMBase-1.9
  * @todo EXPERIMENTAL
  */
@@ -48,7 +48,7 @@
     }
 
     public int getDefaultQuality() {
-        return super.getDefaultQuality() + 1000;
+        return Math.max(Integer.MAX_VALUE, super.getDefaultQuality() + 1000);
     }
 
     @Override protected final Url getNiceUrl(Block block,


Index: MMBaseUrlConverter.java
===================================================================
RCS file: /var/cvs/src/org/mmbase/framework/basic/MMBaseUrlConverter.java,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -b -r1.19 -r1.20
--- MMBaseUrlConverter.java     27 Oct 2008 17:27:37 -0000      1.19
+++ MMBaseUrlConverter.java     28 Oct 2008 17:40:26 -0000      1.20
@@ -20,7 +20,7 @@
  * was configured for this prefix).
  *
  * @author Michiel Meeuwissen
- * @version $Id: MMBaseUrlConverter.java,v 1.19 2008/10/27 17:27:37 michiel 
Exp $
+ * @version $Id: MMBaseUrlConverter.java,v 1.20 2008/10/28 17:40:26 michiel 
Exp $
  * @since MMBase-1.9
  */
 public class MMBaseUrlConverter extends DirectoryUrlConverter {
@@ -43,7 +43,7 @@
 
 
     public int getDefaultQuality() {
-        return super.getDefaultQuality() + 1000;
+        return Math.max(Integer.MAX_VALUE, super.getDefaultQuality() + 1000);
     }
 
     public void setRenderJsp(String j) {


Index: Url.java
===================================================================
RCS file: /var/cvs/src/org/mmbase/framework/basic/Url.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- Url.java    27 Oct 2008 17:27:37 -0000      1.5
+++ Url.java    28 Oct 2008 17:40:26 -0000      1.6
@@ -18,7 +18,7 @@
  * #getUrl}) with a 'quality' of this string.
  *
  * @author Michiel Meeuwissen
- * @version $Id: Url.java,v 1.5 2008/10/27 17:27:37 michiel Exp $
+ * @version $Id: Url.java,v 1.6 2008/10/28 17:40:26 michiel Exp $
  * @since MMBase-1.9
  */
 
@@ -48,10 +48,12 @@
 
     public String toString() {
         String url = getUrl();
-        return url  == null ? "NULL" : url;
+        return getClass() + " " + getUrlConverter() + " " + (url  == null ? 
"NULL" : url) + ":" + getQuality();
     }
     public static final Url NOT = new Url(null, Integer.MIN_VALUE) {
-            public String getUrl() { return null; }
+            public String getUrl() {
+                return null;
+            }
         };
 
 
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to