Class ResultCache


  • public class ResultCache
    extends Object
    A cache to speed up text checking for use cases where sentences are checked more than once. This typically happens when using LT as a server and texts get re-checked after corrections have been applied for some sentences. Use the same cache object for all JLanguageTool objects only if the JLanguageTool objects all use the same rules. For example, if you call JLanguageTool.addRule() in different ways for the different instances that you use the same cache for, the cache will return invalid results. Using a cache with bitext rules isn't supported either. It is okay however, to use the same cache for JLanguageTool objects with different languages, as cached results are not used for a different language.
    Since:
    3.7
    • Constructor Detail

      • ResultCache

        public ResultCache​(long maxSize)
        Create a cache that expires items 5 minutes after the latest read access.
        Parameters:
        maxSize - maximum cache size in number of sentences
      • ResultCache

        public ResultCache​(long maxSize,
                           long expireAfter,
                           TimeUnit timeUnit)
        Parameters:
        maxSize - maximum cache size in number of sentences
        expireAfter - time to expire sentences from the cache after last read access
    • Method Detail

      • hitRate

        public double hitRate()
      • requestCount

        public double requestCount()
      • hitCount

        public long hitCount()
      • getIfPresent

        public List<RuleMatch> getIfPresent​(org.languagetool.InputSentence key)
      • getIfPresent

        public AnalyzedSentence getIfPresent​(org.languagetool.SimpleInputSentence key)
      • put

        public void put​(org.languagetool.InputSentence key,
                        List<RuleMatch> sentenceMatches)
      • put

        public void put​(org.languagetool.SimpleInputSentence key,
                        AnalyzedSentence aSentence)
      • getMatchesCache

        public com.google.common.cache.Cache<org.languagetool.InputSentence,​List<RuleMatch>> getMatchesCache()
        Since:
        4.1
      • getSentenceCache

        public com.google.common.cache.Cache<org.languagetool.SimpleInputSentence,​AnalyzedSentence> getSentenceCache()
        Since:
        4.1