# Deprecated API

## Contents

- Terminally Deprecated
- Classes
- Methods
- Constructors

- Terminally Deprecated Elements
  Element
  Description
  opennlp.tools.namefind.NameFinderEventStream.generateOutcomes(Span[], String, int)
  use the `BioCodec` implementation of the SequenceValidator instead!
  opennlp.tools.sentdetect.SentenceDetectorME.getSentenceProbabilities()
  Use `SentenceDetectorME.probs()` instead.
  opennlp.tools.tokenize.ThreadSafeTokenizerME.getProbabilities()
  Use `ThreadSafeTokenizerME.probs()` instead.
  opennlp.tools.tokenize.TokenizerME.getTokenProbabilities()
  Use `TokenizerME.probs()` instead.
  opennlp.tools.util.normalizer.EmojiCharSequenceNormalizer
  Replaces every supplementary-plane code point with a space, not only emoji. Use `EmojiToEmoticonCharSequenceNormalizer` instead.

- Deprecated Classes
  Class
  Description
  opennlp.tools.chunker.ThreadSafeChunkerME
  As of OPENNLP-1816, `ChunkerME` is itself thread-safe. Use it directly instead.
  opennlp.tools.langdetect.ThreadSafeLanguageDetectorME
  As of OPENNLP-1816, `LanguageDetectorME` is itself thread-safe. Use it directly instead.
  opennlp.tools.lemmatizer.ThreadSafeLemmatizerME
  As of OPENNLP-1816, `LemmatizerME` is itself thread-safe. Use it directly instead.
  opennlp.tools.namefind.ThreadSafeNameFinderME
  As of OPENNLP-1816, `NameFinderME` is itself thread-safe. Use it directly instead.
  opennlp.tools.postag.ThreadSafePOSTaggerME
  As of OPENNLP-1816, `POSTaggerME` is itself thread-safe. Use it directly instead.
  opennlp.tools.sentdetect.ThreadSafeSentenceDetectorME
  As of OPENNLP-1816, `SentenceDetectorME` is itself thread-safe. Use it directly instead.
  opennlp.tools.tokenize.ThreadSafeTokenizerME
  As of OPENNLP-1816, `TokenizerME` is itself thread-safe. Use it directly instead.
  opennlp.tools.util.normalizer.EmojiCharSequenceNormalizer
  Replaces every supplementary-plane code point with a space, not only emoji. Use `EmojiToEmoticonCharSequenceNormalizer` instead.

- Deprecated Methods
  Method
  Description
  opennlp.tools.namefind.NameFinderEventStream.generateOutcomes(Span[], String, int)
  use the `BioCodec` implementation of the SequenceValidator instead!
  opennlp.tools.sentdetect.SentenceDetectorME.getSentenceProbabilities()
  Use `SentenceDetectorME.probs()` instead.
  opennlp.tools.sentdetect.ThreadSafeSentenceDetectorME.getSentenceProbabilities()
  Use `ThreadSafeSentenceDetectorME.probs()` instead.
  opennlp.tools.tokenize.ThreadSafeTokenizerME.getProbabilities()
  Use `ThreadSafeTokenizerME.probs()` instead.
  opennlp.tools.tokenize.TokenizerME.getTokenProbabilities()
  Use `TokenizerME.probs()` instead.
  opennlp.tools.util.featuregen.CachedFeatureGenerator.getNumberOfCacheHits()
  Cache statistics are no longer tracked.
  opennlp.tools.util.featuregen.CachedFeatureGenerator.getNumberOfCacheMisses()
  Cache statistics are no longer tracked.

- Deprecated Constructors
  Constructor
  Description
  opennlp.tools.postag.DefaultPOSContextGenerator(int, Dictionary)
  Use `DefaultPOSContextGenerator(Dictionary)` instead.
  opennlp.tools.sentdetect.SentenceDetectorME(SentenceModel, Factory)
  Use a `SentenceDetectorFactory` to extend SentenceDetector functionality.
  opennlp.tools.util.featuregen.CachedFeatureGenerator(AdaptiveFeatureGenerator...)
  Use `CachedFeatureGenerator(AdaptiveFeatureGenerator)` instead.