Package org.languagetool.markup
Class AnnotatedTextBuilder
- java.lang.Object
-
- org.languagetool.markup.AnnotatedTextBuilder
-
public class AnnotatedTextBuilder extends java.lang.Object
Use this builder to create input of text with markup for LanguageTool, so that it can check only the plain text parts and ignore the markup, yet still calculate the positions of errors so that they refer to the complete text, including markup.It's up to you to split the input into parts that are plain text and parts that are markup.
For example, text with XML markup like
Here is <b>some text</b>
needs to be prepared like this:
new AnnotatedTextBuilder() .addText("Here is ").addMarkup("<b>").addText("some text").addMarkup("</b>") .build()
- Since:
- 2.3
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Map<java.lang.String,java.lang.String>
customMetaData
private java.util.Map<AnnotatedText.MetaDataKey,java.lang.String>
metaData
private java.util.List<TextPart>
parts
-
Constructor Summary
Constructors Constructor Description AnnotatedTextBuilder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AnnotatedTextBuilder
addGlobalMetaData(java.lang.String key, java.lang.String value)
Add any global meta data about the document to be checked.AnnotatedTextBuilder
addGlobalMetaData(AnnotatedText.MetaDataKey key, java.lang.String value)
Add global meta data like document title or receiver name (when writing an email).AnnotatedTextBuilder
addMarkup(java.lang.String markup)
Add a markup text snippet like<b attr='something'>
or<div>
.AnnotatedTextBuilder
addMarkup(java.lang.String markup, java.lang.String interpretAs)
Add a markup text snippet like<b attr='something'>
or<div>
.AnnotatedTextBuilder
addText(java.lang.String text)
Add a plain text snippet, to be checked by LanguageTool when usingJLanguageTool.check(AnnotatedText)
.AnnotatedText
build()
Create the annotated text to be passed intoJLanguageTool.check(AnnotatedText)
.private boolean
hasFakeContent(int i, java.util.List<TextPart> parts)
-
-
-
Field Detail
-
parts
private final java.util.List<TextPart> parts
-
metaData
private final java.util.Map<AnnotatedText.MetaDataKey,java.lang.String> metaData
-
customMetaData
private final java.util.Map<java.lang.String,java.lang.String> customMetaData
-
-
Method Detail
-
addGlobalMetaData
public AnnotatedTextBuilder addGlobalMetaData(AnnotatedText.MetaDataKey key, java.lang.String value)
Add global meta data like document title or receiver name (when writing an email). Some rules may use this information.- Since:
- 3.9
-
addGlobalMetaData
public AnnotatedTextBuilder addGlobalMetaData(java.lang.String key, java.lang.String value)
Add any global meta data about the document to be checked. Some rules may use this information. Unless you're using your own rules for which you know useful keys, you probably want to useaddGlobalMetaData(AnnotatedText.MetaDataKey, String)
.- Since:
- 3.9
-
addText
public AnnotatedTextBuilder addText(java.lang.String text)
Add a plain text snippet, to be checked by LanguageTool when usingJLanguageTool.check(AnnotatedText)
.
-
addMarkup
public AnnotatedTextBuilder addMarkup(java.lang.String markup)
Add a markup text snippet like<b attr='something'>
or<div>
. These parts will be ignored by LanguageTool when usingJLanguageTool.check(AnnotatedText)
.
-
addMarkup
public AnnotatedTextBuilder addMarkup(java.lang.String markup, java.lang.String interpretAs)
Add a markup text snippet like<b attr='something'>
or<div>
. These parts will be ignored by LanguageTool when usingJLanguageTool.check(AnnotatedText)
.- Parameters:
interpretAs
- A string that will be used by the checker instead of the markup. This is usually whitespace, e.g.\n\n
for<p>
-
build
public AnnotatedText build()
Create the annotated text to be passed intoJLanguageTool.check(AnnotatedText)
.
-
hasFakeContent
private boolean hasFakeContent(int i, java.util.List<TextPart> parts)
-
-