Class PipelinePool
java.lang.Object
org.languagetool.server.PipelinePool
Caches pre-configured JLanguageTool instances to avoid costly setup time of rules, etc.
TODO: reimplement using apache commons KeyedObjectPool
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final org.languagetool.ResultCacheprivate final HTTPServerConfigprivate final booleanprivate static final org.slf4j.Logger(package private) static final longprivate longprivate longprivate final com.google.common.cache.LoadingCache<PipelinePool.PipelineSettings, ConcurrentLinkedQueue<Pipeline>> private long -
Constructor Summary
ConstructorsConstructorDescriptionPipelinePool(HTTPServerConfig config, org.languagetool.ResultCache cache, boolean internalServer) -
Method Summary
Modifier and TypeMethodDescriptionprivate voidconfigureFromGUI(org.languagetool.JLanguageTool langTool, org.languagetool.Language lang) private voidconfigureFromRulesFile(org.languagetool.JLanguageTool langTool, org.languagetool.Language lang) (package private) PipelinecreatePipeline(org.languagetool.Language lang, org.languagetool.Language motherTongue, TextChecker.QueryParams params, org.languagetool.GlobalConfig globalConfig, org.languagetool.UserConfig userConfig, List<String> disabledRuleIds) Create a JLanguageTool instance for a specific language, mother tongue, and rule configuration.(package private) PipelinegetPipeline(PipelinePool.PipelineSettings settings) (package private) voidreturnPipeline(PipelinePool.PipelineSettings settings, Pipeline pipeline)
-
Field Details
-
logger
private static final org.slf4j.Logger logger -
PIPELINE_EXPIRE_TIME
static final long PIPELINE_EXPIRE_TIME- See Also:
-
config
-
cache
private final org.languagetool.ResultCache cache -
pool
private final com.google.common.cache.LoadingCache<PipelinePool.PipelineSettings, ConcurrentLinkedQueue<Pipeline>> pool -
internalServer
private final boolean internalServer -
pipelineExpireCheckTimestamp
private long pipelineExpireCheckTimestamp -
pipelinesUsed
private long pipelinesUsed -
requests
private long requests
-
-
Constructor Details
-
PipelinePool
PipelinePool(HTTPServerConfig config, org.languagetool.ResultCache cache, boolean internalServer)
-
-
Method Details
-
getPipeline
- Throws:
Exception
-
returnPipeline
void returnPipeline(PipelinePool.PipelineSettings settings, Pipeline pipeline) throws ExecutionException - Throws:
ExecutionException
-
createPipeline
Pipeline createPipeline(org.languagetool.Language lang, org.languagetool.Language motherTongue, TextChecker.QueryParams params, org.languagetool.GlobalConfig globalConfig, org.languagetool.UserConfig userConfig, List<String> disabledRuleIds) throws Exception Create a JLanguageTool instance for a specific language, mother tongue, and rule configuration. Uses Pipeline wrapper to safely share objects- Parameters:
lang- the language to be usedmotherTongue- the user's mother tongue ornull- Throws:
Exception
-
configureFromRulesFile
private void configureFromRulesFile(org.languagetool.JLanguageTool langTool, org.languagetool.Language lang) throws IOException - Throws:
IOException
-
configureFromGUI
private void configureFromGUI(org.languagetool.JLanguageTool langTool, org.languagetool.Language lang) throws IOException - Throws:
IOException
-