Class RemoteLanguageTool


  • public class RemoteLanguageTool
    extends java.lang.Object
    Check a text using a remote LanguageTool server via HTTP or HTTPS. Our public HTTPS API and its restrictions are documented in our wiki.
    Since:
    3.4
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private com.fasterxml.jackson.databind.ObjectMapper mapper  
      private java.net.URL serverBaseUrl  
      private static java.lang.String V2_CHECK  
      private static java.lang.String V2_CONFIGINFO  
      private static java.lang.String V2_MAXTEXTLENGTH  
    • Constructor Summary

      Constructors 
      Constructor Description
      RemoteLanguageTool​(java.net.URL serverBaseUrl)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      private void append​(java.lang.StringBuilder params, java.lang.String paramName, java.lang.String paramValue)  
      private RemoteResult check​(java.lang.String urlParameters)  
      RemoteResult check​(java.lang.String text, java.lang.String langCode)  
      RemoteResult check​(java.lang.String text, CheckConfiguration config)  
      private java.lang.String encode​(java.lang.String text)  
      RemoteConfigurationInfo getConfigurationInfo​(java.lang.String urlParameters)  
      (package private) java.net.HttpURLConnection getConnection​(byte[] postData, java.net.URL url)  
      private RemoteRuleMatch getMatch​(java.util.Map<java.lang.String,​java.lang.Object> match)  
      int getMaxTextLength()  
      private java.lang.String getOrNull​(java.util.Map<java.lang.String,​java.lang.Object> elem, java.lang.String propertyName)  
      private java.lang.Object getRequired​(java.util.Map<java.lang.String,​java.lang.Object> elem, java.lang.String propertyName)  
      private java.lang.String getRequiredString​(java.util.Map<java.lang.String,​java.lang.Object> elem, java.lang.String propertyName)  
      private java.lang.String getUrlParams​(java.lang.String text, CheckConfiguration config)  
      private java.util.List<java.lang.String> getValueList​(java.util.Map<java.lang.String,​java.lang.Object> match, java.lang.String propertyName)  
      private RemoteResult parseJson​(java.io.InputStream inputStream)  
      private java.lang.String readStream​(java.io.InputStream stream, java.lang.String encoding)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • V2_MAXTEXTLENGTH

        private static final java.lang.String V2_MAXTEXTLENGTH
        See Also:
        Constant Field Values
      • mapper

        private final com.fasterxml.jackson.databind.ObjectMapper mapper
      • serverBaseUrl

        private final java.net.URL serverBaseUrl
    • Constructor Detail

      • RemoteLanguageTool

        public RemoteLanguageTool​(java.net.URL serverBaseUrl)
        Parameters:
        serverBaseUrl - for example https://languagetool.org/api (not ending in slash)
    • Method Detail

      • check

        public RemoteResult check​(java.lang.String text,
                                  java.lang.String langCode)
        Parameters:
        text - the text to be checked
        langCode - the language code like en or en-US - note that for some languages (like English) you need to specify the country code (like US or GB) to get spell checking
      • getUrlParams

        private java.lang.String getUrlParams​(java.lang.String text,
                                              CheckConfiguration config)
      • append

        private void append​(java.lang.StringBuilder params,
                            java.lang.String paramName,
                            java.lang.String paramValue)
      • encode

        private java.lang.String encode​(java.lang.String text)
      • check

        private RemoteResult check​(java.lang.String urlParameters)
      • getMaxTextLength

        public int getMaxTextLength()
      • getConnection

        java.net.HttpURLConnection getConnection​(byte[] postData,
                                                 java.net.URL url)
      • readStream

        private java.lang.String readStream​(java.io.InputStream stream,
                                            java.lang.String encoding)
                                     throws java.io.IOException
        Throws:
        java.io.IOException
      • parseJson

        private RemoteResult parseJson​(java.io.InputStream inputStream)
                                throws javax.xml.stream.XMLStreamException,
                                       java.io.IOException
        Throws:
        javax.xml.stream.XMLStreamException
        java.io.IOException
      • getMatch

        private RemoteRuleMatch getMatch​(java.util.Map<java.lang.String,​java.lang.Object> match)
      • getRequired

        private java.lang.Object getRequired​(java.util.Map<java.lang.String,​java.lang.Object> elem,
                                             java.lang.String propertyName)
      • getRequiredString

        private java.lang.String getRequiredString​(java.util.Map<java.lang.String,​java.lang.Object> elem,
                                                   java.lang.String propertyName)
      • getOrNull

        private java.lang.String getOrNull​(java.util.Map<java.lang.String,​java.lang.Object> elem,
                                           java.lang.String propertyName)
      • getValueList

        private java.util.List<java.lang.String> getValueList​(java.util.Map<java.lang.String,​java.lang.Object> match,
                                                              java.lang.String propertyName)