org.jiim.translation
Class TranslationEngineAltavistaImpl
java.lang.Object
org.jiim.translation.TranslationEngineAltavistaImpl
- All Implemented Interfaces:
- java.io.Serializable, ITranslationEngine
public class TranslationEngineAltavistaImpl
- extends java.lang.Object
- implements ITranslationEngine, java.io.Serializable
Implementation of the translation engine interface that scrapes Altavista's Babelfish
- Author:
- Jorge De Castro
- See Also:
ITranslationEngine,
Serialized Form
|
Field Summary |
protected org.apache.commons.logging.Log |
logger
|
|
Method Summary |
java.lang.String |
extractTranslatedText(java.lang.String text)
|
java.util.Map<java.lang.String,java.lang.String> |
getProperties()
|
java.lang.String |
getResponseFromTranslationService(java.net.URLConnection conn)
|
java.net.URL |
getUrl()
|
void |
init()
|
void |
sendRequestToTranslationService(java.net.URLConnection conn,
java.lang.String fromLanguage,
java.lang.String toLanguage,
java.lang.String text)
|
void |
setProperties(java.util.Map<java.lang.String,java.lang.String> params)
Set the optional key/value pairs of parameters needed to access the translation service API |
void |
setUrl(java.net.URL url)
The URL of the translation service, e.g.: 'http://babelfish.altavista.com/tr' |
java.lang.String |
translate(java.lang.String fromLanguage,
java.lang.String toLanguage,
java.lang.String text)
NOTE: I had to set URIEncoding="UTF-8" on Tomcat's server.xml to get Chinese-English
translation working; see http://java.sun.com/developer/technicalArticles/Intl/HTTPCharset/ |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
logger
protected final org.apache.commons.logging.Log logger
TranslationEngineAltavistaImpl
public TranslationEngineAltavistaImpl()
throws java.net.MalformedURLException
- Throws:
java.net.MalformedURLException
init
public void init()
getUrl
public java.net.URL getUrl()
- Specified by:
getUrl in interface ITranslationEngine
- Returns:
- URL of translation engine
setUrl
public void setUrl(java.net.URL url)
- Description copied from interface:
ITranslationEngine
- The URL of the translation service, e.g.: 'http://babelfish.altavista.com/tr'
- Specified by:
setUrl in interface ITranslationEngine
setProperties
public void setProperties(java.util.Map<java.lang.String,java.lang.String> params)
- Description copied from interface:
ITranslationEngine
- Set the optional key/value pairs of parameters needed to access the translation service API
- Specified by:
setProperties in interface ITranslationEngine
getProperties
public java.util.Map<java.lang.String,java.lang.String> getProperties()
- Specified by:
getProperties in interface ITranslationEngine
- Returns:
- Map containing key/value pairs of parameters needed to access the translation service API
translate
public java.lang.String translate(java.lang.String fromLanguage,
java.lang.String toLanguage,
java.lang.String text)
throws TranslationException
- NOTE: I had to set URIEncoding="UTF-8" on Tomcat's server.xml to get Chinese-English
translation working; see http://java.sun.com/developer/technicalArticles/Intl/HTTPCharset/
- Specified by:
translate in interface ITranslationEngine
- Parameters:
fromLanguage - toLanguage - text -
- Returns:
-
- Throws:
java.io.IOException
TranslationException
sendRequestToTranslationService
public void sendRequestToTranslationService(java.net.URLConnection conn,
java.lang.String fromLanguage,
java.lang.String toLanguage,
java.lang.String text)
throws TranslationException
- Throws:
TranslationException
getResponseFromTranslationService
public java.lang.String getResponseFromTranslationService(java.net.URLConnection conn)
throws TranslationException
- Throws:
TranslationException
extractTranslatedText
public java.lang.String extractTranslatedText(java.lang.String text)
© 2005 jorge de castro