Author: lindner
Date: Mon Aug 16 07:49:35 2010
New Revision: 985817

URL: http://svn.apache.org/viewvc?rev=985817&view=rev
Log:
optimize split/replace

Modified:
    
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/ServletUtil.java
    
shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/ServletUtilTest.java

Modified: 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/ServletUtil.java
URL: 
http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/ServletUtil.java?rev=985817&r1=985816&r2=985817&view=diff
==============================================================================
--- 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/ServletUtil.java
 (original)
+++ 
shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/ServletUtil.java
 Mon Aug 16 07:49:35 2010
@@ -181,9 +181,9 @@ public class ServletUtil {
     String contentType = response.getHeader("Content-Type");
     if (contentType == null) {
       contentType = "";
+    } else if (contentType.contains(";")) {
+      contentType = StringUtils.split(contentType, ';')[0].trim();
     }
-    contentType = contentType.split(";")[0].trim();
- 
     // First and most importantly, emit dataUri.
     // Do so in streaming fashion, to avoid needless buffering.
     ByteArrayOutputStream os = new ByteArrayOutputStream();
@@ -216,9 +216,9 @@ public class ServletUtil {
       }
       first = false;
       pw.write("'");
-      
pw.write(StringEscapeUtils.escapeJavaScript(metaEntry.getKey()).replaceAll("'", 
"\\'"));
+      
pw.write(StringEscapeUtils.escapeJavaScript(metaEntry.getKey()).replace("'", 
"\'"));
       pw.write("':'");
-      
pw.write(StringEscapeUtils.escapeJavaScript(metaEntry.getValue()).replaceAll("'",
 "\\'"));
+      
pw.write(StringEscapeUtils.escapeJavaScript(metaEntry.getValue()).replace("'", 
"\'"));
       pw.write("'");
     }
     pw.write("\n}");

Modified: 
shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/ServletUtilTest.java
URL: 
http://svn.apache.org/viewvc/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/ServletUtilTest.java?rev=985817&r1=985816&r2=985817&view=diff
==============================================================================
--- 
shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/ServletUtilTest.java
 (original)
+++ 
shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/servlet/ServletUtilTest.java
 Mon Aug 16 07:49:35 2010
@@ -130,6 +130,11 @@ public class ServletUtilTest {
     checkOutputDataUri("text/bar; charset=ISO-8859-1", "text/bar", 
"ISO-8859-1");
   }
   
+  @Test
+  public void testOutputDataUriWithEmptyCharset() throws Exception {
+    checkOutputDataUri("text/bar; charset=", "text/bar", "UTF-8");
+  }
+
   private void checkOutputDataUri(String contentType, String expectedType,
       String expectedEncoding) throws Exception {
     String theData = "this is the data";


Reply via email to