|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.apache.xerces.utils.CharDataChunk
This class provides the character buffers used by some of the reader classes. The instances of this class are reference counted and placed upon a free list for reallocation when no longer in use so that they are reclaimed faster and with less overhead than using the garbage collector.
Field Summary | |
---|---|
static int |
CHUNK_MASK
|
static int |
CHUNK_SHIFT
Chunk size constants The reader classes use the chunk size directly for better performance. |
static int |
CHUNK_SIZE
|
Method Summary | |
---|---|
int |
addString(int offset,
int length)
Add a range from this chunk to the StringPool |
int |
addSymbol(int offset,
int length,
int hashcode)
Add a range from this chunk to the StringPool as a symbol |
void |
append(XMLEntityHandler.CharBuffer charBuffer,
int offset,
int length)
Append data from a CharBuffer to this chunk. |
CharDataChunk |
chunkFor(int offset)
Return the instance that contains the specified offset. |
boolean |
clearPreviousChunk()
Clean the previous chunk reference. |
static CharDataChunk |
createChunk(StringPool stringPool,
CharDataChunk prev)
Public constructor (factory) If there are any free instances available, remove them from the free list and reinitialize them. |
boolean |
equalsString(int offset,
int length,
char[] strChars,
int strOffset,
int strLength)
Compare a range in this chunk and a range in a character array for equality |
CharDataChunk |
nextChunk()
Get the next chunk. |
void |
releaseChunk()
Release the reference to this chunk held by the reader that allocated this instance. |
void |
releaseString(int offset,
int length)
Release a string from this chunk |
void |
setCharArray(char[] data)
Set the character array for this instance. |
char[] |
toCharArray()
Get the character array of this instance. |
java.lang.String |
toString(int offset,
int length)
Return a range of characters as a String . |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static final int CHUNK_SHIFT
public static final int CHUNK_SIZE
public static final int CHUNK_MASK
Method Detail |
public static CharDataChunk createChunk(StringPool stringPool, CharDataChunk prev)
stringPool
- The string pool.prev
- The chunk that precedes this one, or null if this is
the first chunk.public CharDataChunk chunkFor(int offset)
offset
- The offset to find.public char[] toCharArray()
public void setCharArray(char[] data)
data
- The character data.public CharDataChunk nextChunk()
public boolean clearPreviousChunk()
true
if we cleared the previous chunk pointer;
otherwise false
if the pointer is already null.public void releaseChunk()
public int addString(int offset, int length)
StringPool
offset
- the offset of the first character to be addedlength
- the number of characters to addStringPool
handle that was added.public int addSymbol(int offset, int length, int hashcode)
StringPool
as a symboloffset
- the offset of the first character to be addedlength
- the number of characters to addhashcode
- hashcode to match to ensure uniquenessStringPool
handle that was added.public void append(XMLEntityHandler.CharBuffer charBuffer, int offset, int length)
CharBuffer
to this chunk.charBuffer
- the buffer to be appended.offset
- the offset of the first character to be appended.length
- the number of characters to append.public java.lang.String toString(int offset, int length)
String
.toString
in interface StringPool.StringProducer
offset
- the offset of the first character to convert.length
- the number of characters to convert.String
public void releaseString(int offset, int length)
releaseString
in interface StringPool.StringProducer
offset
- the offset of the first character to be releasedlength
- the number of characters to release.public boolean equalsString(int offset, int length, char[] strChars, int strOffset, int strLength)
equalsString
in interface StringPool.StringProducer
offset
- the offset of the first character in the range in this chunklength
- the number of characters in the range to comparestrChars
- the character array to comparestrOffset
- the offset of the first character in the range in strCharsstrLength
- the number of characters to release.
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |