Package org.languagetool.server
Class PipelinePool
- java.lang.Object
-
- org.languagetool.server.PipelinePool
-
class PipelinePool extends java.lang.ObjectCaches pre-configured JLanguageTool instances to avoid costly setup time of rules, etc. TODO: reimplement using apache commons KeyedObjectPool
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classPipelinePool.PipelineSettings
-
Field Summary
Fields Modifier and Type Field Description private org.languagetool.ResultCachecacheprivate HTTPServerConfigconfigprivate booleaninternalServerprivate static org.slf4j.Loggerlogger(package private) static longPIPELINE_EXPIRE_TIMEprivate longpipelineExpireCheckTimestampprivate longpipelinesUsedprivate com.google.common.cache.LoadingCache<PipelinePool.PipelineSettings,java.util.concurrent.ConcurrentLinkedQueue<Pipeline>>poolprivate longrequests
-
Constructor Summary
Constructors Constructor Description PipelinePool(HTTPServerConfig config, org.languagetool.ResultCache cache, boolean internalServer)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private 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, java.util.List<java.lang.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 Detail
-
logger
private static final org.slf4j.Logger logger
-
PIPELINE_EXPIRE_TIME
static final long PIPELINE_EXPIRE_TIME
- See Also:
- Constant Field Values
-
config
private final HTTPServerConfig config
-
cache
private final org.languagetool.ResultCache cache
-
pool
private final com.google.common.cache.LoadingCache<PipelinePool.PipelineSettings,java.util.concurrent.ConcurrentLinkedQueue<Pipeline>> pool
-
internalServer
private final boolean internalServer
-
pipelineExpireCheckTimestamp
private long pipelineExpireCheckTimestamp
-
pipelinesUsed
private long pipelinesUsed
-
requests
private long requests
-
-
Constructor Detail
-
PipelinePool
PipelinePool(HTTPServerConfig config, org.languagetool.ResultCache cache, boolean internalServer)
-
-
Method Detail
-
getPipeline
Pipeline getPipeline(PipelinePool.PipelineSettings settings) throws java.lang.Exception
- Throws:
java.lang.Exception
-
returnPipeline
void returnPipeline(PipelinePool.PipelineSettings settings, Pipeline pipeline) throws java.util.concurrent.ExecutionException
- Throws:
java.util.concurrent.ExecutionException
-
createPipeline
Pipeline createPipeline(org.languagetool.Language lang, org.languagetool.Language motherTongue, TextChecker.QueryParams params, org.languagetool.GlobalConfig globalConfig, org.languagetool.UserConfig userConfig, java.util.List<java.lang.String> disabledRuleIds) throws java.lang.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:
java.lang.Exception
-
configureFromRulesFile
private void configureFromRulesFile(org.languagetool.JLanguageTool langTool, org.languagetool.Language lang) throws java.io.IOException- Throws:
java.io.IOException
-
configureFromGUI
private void configureFromGUI(org.languagetool.JLanguageTool langTool, org.languagetool.Language lang) throws java.io.IOException- Throws:
java.io.IOException
-
-