Interface ITranslationEngine

    • Field Summary

      Fields 
      Modifier and TypeFieldDescription
      static intREQTYPE_POST
      Type of request: normal POST.
      static intREQTYPE_POST_OVERRIDES_GET
      Type of request: POST with "X-HTTP-Method-Override" to GET.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and TypeMethodDescription
      voidcancel()
      Cancels pending or running translation job.
      booleancanTranslate​(java.lang.String sourceLanguageCode, java.lang.String targetLanguageCode)
      Checks if a translation is handled between two language codes.
      voidconfigureProxy​(java.net.HttpURLConnection urlConnection)
      Configures a Http(s)URLConnection for proxy information.
      java.net.ProxygetProxy​(java.net.URL url)
      Gets a proxy to use for an URL.
      TranslationQueue[]getQueues()
      Gets the translation queues.
      java.lang.StringgetReadyState()
      Gets the ready state of this translation engine.
      ITranslatorgetTranslator​(java.lang.String sourceLanguageCode, java.lang.String targetLanguageCode)
      Gets the translator to use for a particular language combination.
      booleanisLanguageHandled​(java.lang.String languageCode)
      Verifies if a Language Code is handled by this translator.
      java.lang.StringpostRequestJSON​(java.lang.String httpRequest, java.util.Map<java.lang.String,​java.lang.String> headers, java.lang.String data)
      Requests a function using HTTPS POST, configured for proxy as specified in Eclipse or the Server.
      JSONObjectrequestJSON​(java.lang.String httpRequest, java.lang.String params, java.util.Map<java.lang.String,​java.lang.String> headers, int type, int sizeLimit)
      Requests a function using HTTPS GET or POST with "X-HTTP-Method-Override: GET", configured for proxy as specified in Eclipse or the Server.
      JSONObjectrequestJSON​(java.lang.String httpRequest, java.util.Map<java.lang.String,​java.lang.String> params, java.util.Map<java.lang.String,​java.lang.String> headers, int type, int sizeLimit)
      Requests a function using HTTPS GET or POST with "X-HTTP-Method-Override: GET", configured for proxy as specified in Eclipse or the Server.
      java.lang.StringrequestString​(java.lang.String httpRequest, java.lang.String params, java.util.Map<java.lang.String,​java.lang.String> headers, int type, int sizeLimit)
      Requests a function using HTTPS GET or POST with "X-HTTP-Method-Override: GET", configured for proxy as specified in Eclipse or the Server.
      java.lang.StringrequestString​(java.lang.String httpRequest, java.util.Map<java.lang.String,​java.lang.String> params, java.util.Map<java.lang.String,​java.lang.String> headers, int type, int sizeLimit)
      Requests a function using HTTPS GET or POST with "X-HTTP-Method-Override: GET", configured for proxy as specified in Eclipse or the Server.
      booleantranslate​(KString sourceText, java.lang.String sourceLanguageCode, java.lang.String targetLanguageCode, ITranslationReply replyCallback)
      Translates a text in plain text or HTML.
    • Field Detail

      • REQTYPE_POST_OVERRIDES_GET

        static final int REQTYPE_POST_OVERRIDES_GET
        Type of request: POST with "X-HTTP-Method-Override" to GET.
        See Also:
        Constant Field Values
    • Method Detail

      • getTranslator

        ITranslator getTranslator​(java.lang.String sourceLanguageCode,
                                  java.lang.String targetLanguageCode)
        Gets the translator to use for a particular language combination.
        Parameters:
        sourceLanguageCode - The source language code, null for automatic detection.
        targetLanguageCode - The target language code.
        Returns:
        The translator, null for not found or not configured.
      • getQueues

        TranslationQueue[] getQueues()
        Gets the translation queues.
        Returns:
        The array of translation queues.
      • getReadyState

        java.lang.String getReadyState()
        Gets the ready state of this translation engine.
        Returns:
        An error message describing the state (e.g. "Not configured"), or null for OK.
      • isLanguageHandled

        boolean isLanguageHandled​(java.lang.String languageCode)
        Verifies if a Language Code is handled by this translator.
        Parameters:
        languageCode - The language code.
        Returns:
        true if supported, false if not.
      • canTranslate

        boolean canTranslate​(java.lang.String sourceLanguageCode,
                             java.lang.String targetLanguageCode)
        Checks if a translation is handled between two language codes.
        Parameters:
        sourceLanguageCode - The source language code, null for automatic detection.
        targetLanguageCode - The target language code.
        Returns:
        true if supported, false if not.
      • translate

        boolean translate​(KString sourceText,
                          java.lang.String sourceLanguageCode,
                          java.lang.String targetLanguageCode,
                          ITranslationReply replyCallback)
        Translates a text in plain text or HTML.
        Parameters:
        sourceText - The source text to translate.
        sourceLanguageCode - The source language code, null for automatic detection.
        targetLanguageCode - The target language code.
        replyCallback - Callback when translation completes.
        Returns:
        true for success, false for failure (error is logged).
      • cancel

        void cancel()
        Cancels pending or running translation job.
      • getProxy

        java.net.Proxy getProxy​(java.net.URL url)
        Gets a proxy to use for an URL.
        Parameters:
        url - The URL.
        Returns:
        The Proxy to use.
      • configureProxy

        void configureProxy​(java.net.HttpURLConnection urlConnection)
        Configures a Http(s)URLConnection for proxy information.
        Parameters:
        urlConnection - The HttpURLConnection or HttpsURLConnection.
      • requestJSON

        JSONObject requestJSON​(java.lang.String httpRequest,
                               java.util.Map<java.lang.String,​java.lang.String> params,
                               java.util.Map<java.lang.String,​java.lang.String> headers,
                               int type,
                               int sizeLimit)
                        throws java.io.IOException,
                               JSONException
        Requests a function using HTTPS GET or POST with "X-HTTP-Method-Override: GET", configured for proxy as specified in Eclipse or the Server.
        Parameters:
        httpRequest - The request string.
        params - The parameters, null for none.
        headers - The HTTP headers, null for none.
        type - Type of request: REQTYPE_* value.
        sizeLimit - The size limit imposed, 5120 for Google, 10K for Microsoft.
        Returns:
        The parsed JSON object.
        Throws:
        java.io.IOException - For I/O errors.
        JSONException - For JSON exceptions.
      • requestJSON

        JSONObject requestJSON​(java.lang.String httpRequest,
                               java.lang.String params,
                               java.util.Map<java.lang.String,​java.lang.String> headers,
                               int type,
                               int sizeLimit)
                        throws java.io.IOException,
                               JSONException
        Requests a function using HTTPS GET or POST with "X-HTTP-Method-Override: GET", configured for proxy as specified in Eclipse or the Server.
        Parameters:
        httpRequest - The request string.
        params - The parameters, null for none.
        headers - The HTTP headers, null for none.
        type - Type of request: REQTYPE_* value.
        sizeLimit - The size limit imposed, 5120 for Google, 10K for Microsoft.
        Returns:
        The parsed JSON object.
        Throws:
        java.io.IOException - For I/O errors.
        JSONException - For JSON exceptions.
      • requestString

        java.lang.String requestString​(java.lang.String httpRequest,
                                       java.util.Map<java.lang.String,​java.lang.String> params,
                                       java.util.Map<java.lang.String,​java.lang.String> headers,
                                       int type,
                                       int sizeLimit)
                                throws java.io.IOException
        Requests a function using HTTPS GET or POST with "X-HTTP-Method-Override: GET", configured for proxy as specified in Eclipse or the Server.
        Parameters:
        httpRequest - The request string.
        params - The parameters, null for none.
        headers - The HTTP headers, null for none.
        type - Type of request: REQTYPE_* value.
        sizeLimit - The size limit imposed, 5120 for Google, 10K for Microsoft.
        Returns:
        The reply string.
        Throws:
        java.io.IOException - For I/O errors.
      • requestString

        java.lang.String requestString​(java.lang.String httpRequest,
                                       java.lang.String params,
                                       java.util.Map<java.lang.String,​java.lang.String> headers,
                                       int type,
                                       int sizeLimit)
                                throws java.io.IOException
        Requests a function using HTTPS GET or POST with "X-HTTP-Method-Override: GET", configured for proxy as specified in Eclipse or the Server.
        Parameters:
        httpRequest - The request string.
        params - The parameters, null for none.
        headers - The HTTP headers, null for none.
        type - Type of request: REQTYPE_* value.
        sizeLimit - The size limit imposed, 5120 for Google, 10K for Microsoft.
        Returns:
        The reply string.
        Throws:
        java.io.IOException - For I/O errors.
      • postRequestJSON

        java.lang.String postRequestJSON​(java.lang.String httpRequest,
                                         java.util.Map<java.lang.String,​java.lang.String> headers,
                                         java.lang.String data)
                                  throws java.io.IOException
        Requests a function using HTTPS POST, configured for proxy as specified in Eclipse or the Server.
        Parameters:
        httpRequest - The request string.
        headers - The HTTP headers, never null.
        data - The data string.
        Returns:
        The reply string.
        Throws:
        java.io.IOException - For I/O errors.