com.dslplatform.json
Class DslJson.SimpleStringCache

java.lang.Object
  extended by com.dslplatform.json.DslJson.SimpleStringCache
All Implemented Interfaces:
StringCache
Enclosing class:
DslJson<TContext>

public static class DslJson.SimpleStringCache
extends Object
implements StringCache

Simplistic string cache implementation. It uses a fixed String[] structure in which it caches string value based on it's hash. Eg, hash & mask provide index into the structure. Different string with same hash will overwrite the previous one.


Constructor Summary
DslJson.SimpleStringCache()
          Will use String[] with 1024 elements.
DslJson.SimpleStringCache(int log2Size)
           
 
Method Summary
 String get(char[] chars, int len)
          Calculates hash of the provided "string" and looks it up from the String[] It it doesn't exists of a different string is already there a new String instance is created and saved into the String[]
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DslJson.SimpleStringCache

public DslJson.SimpleStringCache()
Will use String[] with 1024 elements.


DslJson.SimpleStringCache

public DslJson.SimpleStringCache(int log2Size)
Method Detail

get

public String get(char[] chars,
                  int len)
Calculates hash of the provided "string" and looks it up from the String[] It it doesn't exists of a different string is already there a new String instance is created and saved into the String[]

Specified by:
get in interface StringCache
Parameters:
chars - buffer into which string was parsed
len - the string length inside the buffer
Returns:
String instance matching the char[]/int pair


Copyright © 2019. All rights reserved.