Package org.apache.tomcat.util.buf
Class StringCache
- java.lang.Object
-
- org.apache.tomcat.util.buf.StringCache
-
public class StringCache extends Object
This class implements a String cache for ByteChunk and CharChunk.- Author:
- Remy Maucherat
-
-
Field Summary
Fields Modifier and Type Field Description protected static intaccessCountAccess count.protected static org.apache.tomcat.util.buf.StringCache.ByteEntry[]bcCacheCache for byte chunk.protected static intbcCounttoString count for byte chunk.protected static HashMap<org.apache.tomcat.util.buf.StringCache.ByteEntry,int[]>bcStatsStatistics hash map for byte chunk.protected static booleanbyteEnabledEnabled ?protected static intcacheSizeprotected static org.apache.tomcat.util.buf.StringCache.CharEntry[]ccCacheCache for char chunk.protected static intccCounttoString count for char chunk.protected static HashMap<org.apache.tomcat.util.buf.StringCache.CharEntry,int[]>ccStatsStatistics hash map for char chunk.protected static booleancharEnabledprotected static inthitCountHit count.protected static intmaxStringSizeprotected static inttrainThreshold
-
Constructor Summary
Constructors Constructor Description StringCache()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected static intcompare(ByteChunk name, byte[] compareTo)Compare given byte chunk with byte array.protected static intcompare(CharChunk name, char[] compareTo)Compare given char chunk with char array.protected static Stringfind(ByteChunk name)Find an entry given its name in the cache and return the associated String.protected static Stringfind(CharChunk name)Find an entry given its name in the cache and return the associated String.protected static intfindClosest(ByteChunk name, org.apache.tomcat.util.buf.StringCache.ByteEntry[] array, int len)Find an entry given its name in a sorted array of map elements.protected static intfindClosest(CharChunk name, org.apache.tomcat.util.buf.StringCache.CharEntry[] array, int len)Find an entry given its name in a sorted array of map elements.intgetAccessCount()booleangetByteEnabled()intgetCacheSize()booleangetCharEnabled()intgetHitCount()intgetTrainThreshold()voidreset()voidsetByteEnabled(boolean byteEnabled)voidsetCacheSize(int cacheSize)voidsetCharEnabled(boolean charEnabled)voidsetTrainThreshold(int trainThreshold)static StringtoString(ByteChunk bc)static StringtoString(CharChunk cc)
-
-
-
Field Detail
-
byteEnabled
protected static boolean byteEnabled
Enabled ?
-
charEnabled
protected static boolean charEnabled
-
trainThreshold
protected static int trainThreshold
-
cacheSize
protected static int cacheSize
-
maxStringSize
protected static final int maxStringSize
-
bcStats
protected static final HashMap<org.apache.tomcat.util.buf.StringCache.ByteEntry,int[]> bcStats
Statistics hash map for byte chunk.
-
bcCount
protected static int bcCount
toString count for byte chunk.
-
bcCache
protected static volatile org.apache.tomcat.util.buf.StringCache.ByteEntry[] bcCache
Cache for byte chunk.
-
ccStats
protected static final HashMap<org.apache.tomcat.util.buf.StringCache.CharEntry,int[]> ccStats
Statistics hash map for char chunk.
-
ccCount
protected static int ccCount
toString count for char chunk.
-
ccCache
protected static volatile org.apache.tomcat.util.buf.StringCache.CharEntry[] ccCache
Cache for char chunk.
-
accessCount
protected static int accessCount
Access count.
-
hitCount
protected static int hitCount
Hit count.
-
-
Method Detail
-
getCacheSize
public int getCacheSize()
- Returns:
- Returns the cacheSize.
-
setCacheSize
public void setCacheSize(int cacheSize)
- Parameters:
cacheSize- The cacheSize to set.
-
getByteEnabled
public boolean getByteEnabled()
- Returns:
- Returns the enabled.
-
setByteEnabled
public void setByteEnabled(boolean byteEnabled)
- Parameters:
byteEnabled- The enabled to set.
-
getCharEnabled
public boolean getCharEnabled()
- Returns:
- Returns the enabled.
-
setCharEnabled
public void setCharEnabled(boolean charEnabled)
- Parameters:
charEnabled- The enabled to set.
-
getTrainThreshold
public int getTrainThreshold()
- Returns:
- Returns the trainThreshold.
-
setTrainThreshold
public void setTrainThreshold(int trainThreshold)
- Parameters:
trainThreshold- The trainThreshold to set.
-
getAccessCount
public int getAccessCount()
- Returns:
- Returns the accessCount.
-
getHitCount
public int getHitCount()
- Returns:
- Returns the hitCount.
-
reset
public void reset()
-
compare
protected static final int compare(ByteChunk name, byte[] compareTo)
Compare given byte chunk with byte array.- Parameters:
name- The name to comparecompareTo- The compared to data- Returns:
- -1, 0 or +1 if inferior, equal, or superior to the String.
-
find
protected static final String find(ByteChunk name)
Find an entry given its name in the cache and return the associated String.- Parameters:
name- The name to find- Returns:
- the corresponding value
-
findClosest
protected static final int findClosest(ByteChunk name, org.apache.tomcat.util.buf.StringCache.ByteEntry[] array, int len)
Find an entry given its name in a sorted array of map elements. This will return the index for the closest inferior or equal item in the given array.- Parameters:
name- The name to findarray- The array in which to looklen- The effective length of the array- Returns:
- the position of the best match
-
compare
protected static final int compare(CharChunk name, char[] compareTo)
Compare given char chunk with char array.- Parameters:
name- The name to comparecompareTo- The compared to data- Returns:
- -1, 0 or +1 if inferior, equal, or superior to the String.
-
find
protected static final String find(CharChunk name)
Find an entry given its name in the cache and return the associated String.- Parameters:
name- The name to find- Returns:
- the corresponding value
-
findClosest
protected static final int findClosest(CharChunk name, org.apache.tomcat.util.buf.StringCache.CharEntry[] array, int len)
Find an entry given its name in a sorted array of map elements. This will return the index for the closest inferior or equal item in the given array.- Parameters:
name- The name to findarray- The array in which to looklen- The effective length of the array- Returns:
- the position of the best match
-
-