Author: tpalsulich
Date: Wed Aug 13 16:36:36 2014
New Revision: 1617754
URL: http://svn.apache.org/r1617754
Log:
Re-enabling forbidden-apis and working around identified errors in External and
Moses Translators.
Modified:
tika/trunk/tika-parent/pom.xml
tika/trunk/tika-translate/src/main/java/org/apache/tika/language/translate/ExternalTranslator.java
tika/trunk/tika-translate/src/main/java/org/apache/tika/language/translate/MosesTranslator.java
Modified: tika/trunk/tika-parent/pom.xml
URL:
http://svn.apache.org/viewvc/tika/trunk/tika-parent/pom.xml?rev=1617754&r1=1617753&r2=1617754&view=diff
==============================================================================
--- tika/trunk/tika-parent/pom.xml (original)
+++ tika/trunk/tika-parent/pom.xml Wed Aug 13 16:36:36 2014
@@ -264,7 +264,7 @@
<target>${maven.compiler.target}</target>
</configuration>
</plugin>
- <!--<plugin>
+ <plugin>
<groupId>de.thetaphi</groupId>
<artifactId>forbiddenapis</artifactId>
<version>1.6.1</version>
@@ -285,7 +285,7 @@
</goals>
</execution>
</executions>
- </plugin>-->
+ </plugin>
</plugins>
<pluginManagement>
<plugins>
Modified:
tika/trunk/tika-translate/src/main/java/org/apache/tika/language/translate/ExternalTranslator.java
URL:
http://svn.apache.org/viewvc/tika/trunk/tika-translate/src/main/java/org/apache/tika/language/translate/ExternalTranslator.java?rev=1617754&r1=1617753&r2=1617754&view=diff
==============================================================================
---
tika/trunk/tika-translate/src/main/java/org/apache/tika/language/translate/ExternalTranslator.java
(original)
+++
tika/trunk/tika-translate/src/main/java/org/apache/tika/language/translate/ExternalTranslator.java
Wed Aug 13 16:36:36 2014
@@ -25,6 +25,8 @@ import java.io.File;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.Reader;
+import java.nio.charset.Charset;
+import java.util.Locale;
/**
* Abstract class used to interact with command line/external Translators.
@@ -47,7 +49,7 @@ public abstract class ExternalTranslator
*/
public Reader runAndGetOutput(String command, String[] env, File
workingDirectory) throws IOException, InterruptedException {
Process process = Runtime.getRuntime().exec(command, env,
workingDirectory);
- InputStreamReader reader = new
InputStreamReader(process.getInputStream());
+ InputStreamReader reader = new
InputStreamReader(process.getInputStream(), Charset.defaultCharset());
BufferedReader bufferedReader = new BufferedReader(reader);
process.waitFor();
return bufferedReader;
Modified:
tika/trunk/tika-translate/src/main/java/org/apache/tika/language/translate/MosesTranslator.java
URL:
http://svn.apache.org/viewvc/tika/trunk/tika-translate/src/main/java/org/apache/tika/language/translate/MosesTranslator.java?rev=1617754&r1=1617753&r2=1617754&view=diff
==============================================================================
---
tika/trunk/tika-translate/src/main/java/org/apache/tika/language/translate/MosesTranslator.java
(original)
+++
tika/trunk/tika-translate/src/main/java/org/apache/tika/language/translate/MosesTranslator.java
Wed Aug 13 16:36:36 2014
@@ -20,9 +20,14 @@ package org.apache.tika.language.transla
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.OutputStreamWriter;
+import java.nio.charset.Charset;
import java.util.Properties;
/**
@@ -73,7 +78,7 @@ public class MosesTranslator extends Ext
public String translate(String text, String sourceLanguage, String
targetLanguage) throws Exception {
if (!isAvailable() || !checkCommand(buildCheckCommand(smtPath), 1))
return text;
File tmpFile = new File(TMP_FILE_NAME);
- BufferedWriter out = new BufferedWriter(new FileWriter(tmpFile));
+ OutputStreamWriter out = new OutputStreamWriter(new
FileOutputStream(tmpFile), Charset.defaultCharset());
out.append(text).append('\n').close();
Runtime.getRuntime().exec(buildCommand(smtPath, scriptPath), new
String[]{}, buildWorkingDirectory(scriptPath));
@@ -81,9 +86,12 @@ public class MosesTranslator extends Ext
File tmpTranslatedFile = new File(TMP_FILE_NAME + ".translated");
StringBuilder stringBuilder = new StringBuilder();
- BufferedReader bufferedReader = new BufferedReader(new
FileReader(TMP_FILE_NAME + ".translated"));
+ BufferedReader reader = new BufferedReader(new InputStreamReader(
+ new FileInputStream(tmpTranslatedFile),
+ Charset.defaultCharset()
+ ));
String line;
- while ((line = bufferedReader.readLine()) != null)
stringBuilder.append(line);
+ while ((line = reader.readLine()) != null) stringBuilder.append(line);
if (!tmpFile.delete() || !tmpTranslatedFile.delete()){
throw new IOException("Failed to delete temporary files.");