You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@labs.apache.org by si...@apache.org on 2009/01/02 17:19:03 UTC

svn commit: r730766 - /labs/magma/trunk/foundation-website/src/main/java/org/apache/magma/website/WebHandler.java

Author: simoneg
Date: Fri Jan  2 08:19:03 2009
New Revision: 730766

URL: http://svn.apache.org/viewvc?rev=730766&view=rev
Log:
LABS-260: using old methods

Refactored sting tokenizer inside handlers.

Modified:
    labs/magma/trunk/foundation-website/src/main/java/org/apache/magma/website/WebHandler.java

Modified: labs/magma/trunk/foundation-website/src/main/java/org/apache/magma/website/WebHandler.java
URL: http://svn.apache.org/viewvc/labs/magma/trunk/foundation-website/src/main/java/org/apache/magma/website/WebHandler.java?rev=730766&r1=730765&r2=730766&view=diff
==============================================================================
--- labs/magma/trunk/foundation-website/src/main/java/org/apache/magma/website/WebHandler.java (original)
+++ labs/magma/trunk/foundation-website/src/main/java/org/apache/magma/website/WebHandler.java Fri Jan  2 08:19:03 2009
@@ -26,6 +26,7 @@
 import java.lang.reflect.Method;
 import java.util.Arrays;
 import java.util.List;
+import java.util.StringTokenizer;
 
 // TODO optimization : GenericClass could be taken only once
 // TODO optimization : getRightMethod could return a MethodRef directly
@@ -92,6 +93,25 @@
 		return null;		
 	}
 	
+	protected String[] tokenizeRequest(String pathInfo) {
+		String[] info = null;
+		if (pathInfo == null) {
+			info = new String[] { "" };
+		} else {
+			StringTokenizer stok = new StringTokenizer(pathInfo, "/-");
+			info = new String[stok.countTokens()];
+			int pos = 0;
+			while (stok.hasMoreTokens()) {
+				info[pos++] = stok.nextToken();
+			}
+		}
+		return info;
+	}
+	
+	public Producer find(String info) {		
+		return find(tokenizeRequest(info));
+	}
+	
 	public Producer find(String[] info) {
 		if (info == null || info.length == 0 || (info.length == 1 && info[0].length() == 0)) {
 			info = new String[] { defaultPostfix };
@@ -190,7 +210,10 @@
 		int consumed = getConsumed(info);
 		String[] subinfo = null;
 		if (consumed < info.length) {
-			subinfo = Arrays.copyOfRange(info, consumed, info.length);
+			subinfo = new String[info.length - consumed];
+			System.arraycopy(info, consumed, subinfo, 0, subinfo.length);
+			// TODO reenable this for Java 1.6
+			//subinfo = Arrays.copyOfRange(info, consumed, info.length);
 		}
 		if (subinfo == null || subinfo.length == 0) subinfo = new String[] { "" };
 		return subinfo;



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@labs.apache.org
For additional commands, e-mail: commits-help@labs.apache.org