Groovy Documentation

org.codehaus.groovy.grails.web.util
[Java] Class StringCharArrayAccessor

java.lang.Object
  org.codehaus.groovy.grails.web.util.StringCharArrayAccessor

public class StringCharArrayAccessor

Provides optimized access to java.lang.String internals - Optimized way of creating java.lang.String by reusing a char[] buffer - Optimized way of writing String to java.io.Writer java.lang.String creation reusing a char[] buffer requires Java 1.5+ System property "stringchararrayaccessor.disabled" disables this hack. -Dstringchararrayaccessor.disabled=true Read JSR-133, "9.1.1 Post-Construction Modification of Final Fields" http://www.cs.umd.edu/~pugh/java/memoryModel/jsr133.pdf

Authors:
Lari Hotari, Sagire Software Oy


Method Summary
static java.lang.String createString(char[] charBuf)

creates a new java.lang.String by setting the char array directly to the String instance with reflection.

static boolean isEnabled()

static void writeStringAsCharArray(java.io.Writer writer, java.lang.String str)

Writes a portion of a string to a target java.io.Writer with direct access to the char[] of the java.lang.String

static void writeStringAsCharArray(java.io.Writer writer, java.lang.String str, int off, int len)

Writes a portion of a string to a target java.io.Writer with direct access to the char[] of the java.lang.String

 
Methods inherited from class java.lang.Object
java.lang.Object#wait(), java.lang.Object#wait(long), java.lang.Object#wait(long, int), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()
 

Method Detail

createString

public static java.lang.String createString(char[] charBuf)
creates a new java.lang.String by setting the char array directly to the String instance with reflection.
Parameters:
charBuf - char array to be used as java.lang.String content, don't modify it after passing it.
Returns:
new java.lang.String


isEnabled

public static boolean isEnabled()


writeStringAsCharArray

public static void writeStringAsCharArray(java.io.Writer writer, java.lang.String str)
Writes a portion of a string to a target java.io.Writer with direct access to the char[] of the java.lang.String
throws:
IOException If an I/O error occurs
Parameters:
writer - target java.io.Writer for output
str - A String


writeStringAsCharArray

public static void writeStringAsCharArray(java.io.Writer writer, java.lang.String str, int off, int len)
Writes a portion of a string to a target java.io.Writer with direct access to the char[] of the java.lang.String
throws:
IOException If an I/O error occurs
Parameters:
writer - target java.io.Writer for output
str - A String
off - Offset from which to start writing characters
len - Number of characters to write


 

Groovy Documentation