Author: bayard
Date: Tue Jun 30 07:04:06 2009
New Revision: 789589

URL: http://svn.apache.org/viewvc?rev=789589&view=rev
Log:
Splitting out the \b \n \t \f \r Java ctrl chars as their own translator to 
help with the request in LANG-498

Modified:
    
commons/proper/lang/trunk/src/java/org/apache/commons/lang/text/translate/EscapeUtils.java
    
commons/proper/lang/trunk/src/java/org/apache/commons/lang/text/translate/UnescapeUtils.java

Modified: 
commons/proper/lang/trunk/src/java/org/apache/commons/lang/text/translate/EscapeUtils.java
URL: 
http://svn.apache.org/viewvc/commons/proper/lang/trunk/src/java/org/apache/commons/lang/text/translate/EscapeUtils.java?rev=789589&r1=789588&r2=789589&view=diff
==============================================================================
--- 
commons/proper/lang/trunk/src/java/org/apache/commons/lang/text/translate/EscapeUtils.java
 (original)
+++ 
commons/proper/lang/trunk/src/java/org/apache/commons/lang/text/translate/EscapeUtils.java
 Tue Jun 30 07:04:06 2009
@@ -29,12 +29,7 @@
  */
 public class EscapeUtils {
 
-    public static final CharSequenceTranslator ESCAPE_JAVA = 
-          new LookupTranslator(
-            new String[][] { 
-              {"\"", "\\\""},
-              {"\\", "\\\\"},
-          }).with(
+    public static final CharSequenceTranslator ESCAPE_JAVA_CTRL_CHARS = 
           new LookupTranslator(
             new String[][] {
               {"\b", "\\b"},
@@ -42,9 +37,18 @@
               {"\t", "\\t"},
               {"\f", "\\f"},
               {"\r", "\\r"}
+            });
+
+    public static final CharSequenceTranslator ESCAPE_JAVA = 
+          new LookupTranslator(
+            new String[][] { 
+              {"\"", "\\\""},
+              {"\\", "\\\\"},
           }).with(
-          UnicodeEscaper.outsideOf(32, 0x7f) 
-        ));
+            ESCAPE_JAVA_CTRL_CHARS
+          ).with(
+            UnicodeEscaper.outsideOf(32, 0x7f) 
+        );
 
     public static final String escapeJava(String input) {
         return ESCAPE_JAVA.translate(input);
@@ -59,14 +63,7 @@
                             {"\\", "\\\\"},
                             {"/", "\\/"}
                       }),
-            new LookupTranslator(
-                      new String[][] {
-                            {"\b", "\\b"},
-                            {"\n", "\\n"},
-                            {"\t", "\\t"},
-                            {"\f", "\\f"},
-                            {"\r", "\\r"}
-                      }),
+            ESCAPE_JAVA_CTRL_CHARS,
             UnicodeEscaper.outsideOf(32, 0x7f) 
         );
             

Modified: 
commons/proper/lang/trunk/src/java/org/apache/commons/lang/text/translate/UnescapeUtils.java
URL: 
http://svn.apache.org/viewvc/commons/proper/lang/trunk/src/java/org/apache/commons/lang/text/translate/UnescapeUtils.java?rev=789589&r1=789588&r2=789589&view=diff
==============================================================================
--- 
commons/proper/lang/trunk/src/java/org/apache/commons/lang/text/translate/UnescapeUtils.java
 (original)
+++ 
commons/proper/lang/trunk/src/java/org/apache/commons/lang/text/translate/UnescapeUtils.java
 Tue Jun 30 07:04:06 2009
@@ -29,20 +29,26 @@
  */
 public class UnescapeUtils {
 
+    public static final CharSequenceTranslator UNESCAPE_JAVA_CTRL_CHARS = 
+            new LookupTranslator(
+                      new String[][] { 
+                            {"\\b", "\b"},
+                            {"\\n", "\n"},
+                            {"\\t", "\t"},
+                            {"\\f", "\f"},
+                            {"\\r", "\r"}
+                      });
+
     // throw "illegal character: \92" as an Exception if a \ on the end of the 
Java (as per the compiler)?
     public static final CharSequenceTranslator UNESCAPE_JAVA = 
         new AggregateTranslator(
             new UnicodeUnescaper(),
+            UNESCAPE_JAVA_CTRL_CHARS,
             new LookupTranslator(
                       new String[][] { 
                             {"\\\\", "\\"},
                             {"\\\"", "\""},
                             {"\\'", "'"},
-                            {"\\r", "\r"},
-                            {"\\f", "\f"},
-                            {"\\t", "\t"},
-                            {"\\n", "\n"},
-                            {"\\b", "\b"},
                             {"\\", ""}
                       })
         );


Reply via email to