Package org.languagetool.server
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.ResultCache
private final HTTPServerConfig
private final boolean
private static final org.slf4j.Logger
(package private) static final long
private long
private long
private 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 void
configureFromGUI
(org.languagetool.JLanguageTool langTool, org.languagetool.Language lang) private void
configureFromRulesFile
(org.languagetool.JLanguageTool langTool, org.languagetool.Language lang) (package private) Pipeline
createPipeline
(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) Pipeline
getPipeline
(PipelinePool.PipelineSettings settings) (package private) void
returnPipeline
(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
-