You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by rm...@apache.org on 2012/07/09 16:06:17 UTC
svn commit: r1359181 - in /lucene/dev/branches/lucene4199/solr:
core/src/java/org/apache/solr/cloud/ core/src/java/org/apache/solr/highlight/
core/src/test/org/apache/solr/cloud/ core/src/test/org/apache/solr/core/
core/src/test/org/apache/solr/handler...
Author: rmuir
Date: Mon Jul 9 14:06:17 2012
New Revision: 1359181
URL: http://svn.apache.org/viewvc?rev=1359181&view=rev
Log:
LUCENE-4199: fix more default locale/charset violations
Modified:
lucene/dev/branches/lucene4199/solr/core/src/java/org/apache/solr/cloud/SolrZkServer.java
lucene/dev/branches/lucene4199/solr/core/src/java/org/apache/solr/highlight/BreakIteratorBoundaryScanner.java
lucene/dev/branches/lucene4199/solr/core/src/test/org/apache/solr/cloud/ZkTestServer.java
lucene/dev/branches/lucene4199/solr/core/src/test/org/apache/solr/core/TestCoreContainer.java
lucene/dev/branches/lucene4199/solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java
lucene/dev/branches/lucene4199/solr/core/src/test/org/apache/solr/request/TestRemoteStreaming.java
lucene/dev/branches/lucene4199/solr/solrj/src/java/org/apache/solr/client/solrj/SolrQuery.java
lucene/dev/branches/lucene4199/solr/solrj/src/java/org/apache/solr/client/solrj/impl/ConcurrentUpdateSolrServer.java
lucene/dev/branches/lucene4199/solr/solrj/src/java/org/apache/solr/common/util/ContentStreamBase.java
Modified: lucene/dev/branches/lucene4199/solr/core/src/java/org/apache/solr/cloud/SolrZkServer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene4199/solr/core/src/java/org/apache/solr/cloud/SolrZkServer.java?rev=1359181&r1=1359180&r2=1359181&view=diff
==============================================================================
--- lucene/dev/branches/lucene4199/solr/core/src/java/org/apache/solr/cloud/SolrZkServer.java (original)
+++ lucene/dev/branches/lucene4199/solr/core/src/java/org/apache/solr/cloud/SolrZkServer.java Mon Jul 9 14:06:17 2012
@@ -20,8 +20,8 @@ package org.apache.solr.cloud;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
-import java.io.FileReader;
import java.io.IOException;
+import java.io.InputStreamReader;
import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.net.UnknownHostException;
@@ -29,6 +29,7 @@ import java.util.Map;
import java.util.Properties;
import java.util.Map.Entry;
+import org.apache.lucene.util.IOUtils;
import org.apache.solr.common.SolrException;
import org.apache.zookeeper.server.ServerConfig;
import org.apache.zookeeper.server.ZooKeeperServerMain;
@@ -462,7 +463,7 @@ class SolrZkServerProps extends QuorumPe
+ " file is missing");
}
- BufferedReader br = new BufferedReader(new FileReader(myIdFile));
+ BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(myIdFile), IOUtils.CHARSET_UTF_8));
String myIdString;
try {
myIdString = br.readLine();
Modified: lucene/dev/branches/lucene4199/solr/core/src/java/org/apache/solr/highlight/BreakIteratorBoundaryScanner.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene4199/solr/core/src/java/org/apache/solr/highlight/BreakIteratorBoundaryScanner.java?rev=1359181&r1=1359180&r2=1359181&view=diff
==============================================================================
--- lucene/dev/branches/lucene4199/solr/core/src/java/org/apache/solr/highlight/BreakIteratorBoundaryScanner.java (original)
+++ lucene/dev/branches/lucene4199/solr/core/src/java/org/apache/solr/highlight/BreakIteratorBoundaryScanner.java Mon Jul 9 14:06:17 2012
@@ -40,22 +40,24 @@ public class BreakIteratorBoundaryScanne
Locale locale = null;
if(language != null){
locale = country == null ? new Locale(language) : new Locale(language, country);
+ } else {
+ locale = Locale.ROOT;
}
// construct BreakIterator
String type = params.getFieldParam(fieldName, HighlightParams.BS_TYPE, "WORD").toLowerCase(Locale.ROOT);
BreakIterator bi = null;
if(type.equals("character")){
- bi = locale == null ? BreakIterator.getCharacterInstance() : BreakIterator.getCharacterInstance(locale);
+ bi = BreakIterator.getCharacterInstance(locale);
}
else if(type.equals("word")){
- bi = locale == null ? BreakIterator.getWordInstance() : BreakIterator.getWordInstance(locale);
+ bi = BreakIterator.getWordInstance(locale);
}
else if(type.equals("line")){
- bi = locale == null ? BreakIterator.getLineInstance() : BreakIterator.getLineInstance(locale);
+ bi = BreakIterator.getLineInstance(locale);
}
else if(type.equals("sentence")){
- bi = locale == null ? BreakIterator.getSentenceInstance() : BreakIterator.getSentenceInstance(locale);
+ bi = BreakIterator.getSentenceInstance(locale);
}
else
throw new SolrException(ErrorCode.BAD_REQUEST, type + " is invalid for parameter " + HighlightParams.BS_TYPE);
Modified: lucene/dev/branches/lucene4199/solr/core/src/test/org/apache/solr/cloud/ZkTestServer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene4199/solr/core/src/test/org/apache/solr/cloud/ZkTestServer.java?rev=1359181&r1=1359180&r2=1359181&view=diff
==============================================================================
--- lucene/dev/branches/lucene4199/solr/core/src/test/org/apache/solr/cloud/ZkTestServer.java (original)
+++ lucene/dev/branches/lucene4199/solr/core/src/test/org/apache/solr/cloud/ZkTestServer.java Mon Jul 9 14:06:17 2012
@@ -304,7 +304,7 @@ public class ZkTestServer {
reader =
new BufferedReader(
- new InputStreamReader(sock.getInputStream()));
+ new InputStreamReader(sock.getInputStream(), "US-ASCII"));
StringBuilder sb = new StringBuilder();
String line;
while((line = reader.readLine()) != null) {
Modified: lucene/dev/branches/lucene4199/solr/core/src/test/org/apache/solr/core/TestCoreContainer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene4199/solr/core/src/test/org/apache/solr/core/TestCoreContainer.java?rev=1359181&r1=1359180&r2=1359181&view=diff
==============================================================================
--- lucene/dev/branches/lucene4199/solr/core/src/test/org/apache/solr/core/TestCoreContainer.java (original)
+++ lucene/dev/branches/lucene4199/solr/core/src/test/org/apache/solr/core/TestCoreContainer.java Mon Jul 9 14:06:17 2012
@@ -19,14 +19,16 @@ package org.apache.solr.core;
import java.io.BufferedWriter;
import java.io.File;
-import java.io.FileWriter;
+import java.io.FileOutputStream;
import java.io.IOException;
+import java.io.OutputStreamWriter;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.xpath.XPathExpressionException;
import org.apache.commons.io.FileUtils;
import org.apache.lucene.search.MatchAllDocsQuery;
+import org.apache.lucene.util.IOUtils;
import org.apache.solr.SolrTestCaseJ4;
import org.junit.BeforeClass;
import org.junit.Test;
@@ -172,7 +174,7 @@ public class TestCoreContainer extends S
assertTrue("Failed to mkdirs workDir", solrHomeDirectory.mkdirs());
try {
File solrXmlFile = new File(solrHomeDirectory, "solr.xml");
- BufferedWriter out = new BufferedWriter(new FileWriter(solrXmlFile));
+ BufferedWriter out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(solrXmlFile), IOUtils.CHARSET_UTF_8));
out.write(EMPTY_SOLR_XML);
out.close();
} catch (IOException e) {
Modified: lucene/dev/branches/lucene4199/solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene4199/solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java?rev=1359181&r1=1359180&r2=1359181&view=diff
==============================================================================
--- lucene/dev/branches/lucene4199/solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java (original)
+++ lucene/dev/branches/lucene4199/solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java Mon Jul 9 14:06:17 2012
@@ -18,11 +18,13 @@ package org.apache.solr.handler;
import java.io.BufferedReader;
import java.io.File;
-import java.io.FileReader;
-import java.io.FileWriter;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
import java.io.FilenameFilter;
import java.io.IOException;
import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.OutputStreamWriter;
import java.io.Writer;
import java.net.URL;
import java.util.regex.Matcher;
@@ -929,8 +931,8 @@ public class TestReplicationHandler exte
* character copy of file using UTF-8. If port is non-null, will be substituted any time "TEST_PORT" is found.
*/
private static void copyFile(File src, File dst, Integer port) throws IOException {
- BufferedReader in = new BufferedReader(new FileReader(src));
- Writer out = new FileWriter(dst);
+ BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(src), "UTF-8"));
+ Writer out = new OutputStreamWriter(new FileOutputStream(dst), "UTF-8");
for (String line = in.readLine(); null != line; line = in.readLine()) {
Modified: lucene/dev/branches/lucene4199/solr/core/src/test/org/apache/solr/request/TestRemoteStreaming.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene4199/solr/core/src/test/org/apache/solr/request/TestRemoteStreaming.java?rev=1359181&r1=1359180&r2=1359181&view=diff
==============================================================================
--- lucene/dev/branches/lucene4199/solr/core/src/test/org/apache/solr/request/TestRemoteStreaming.java (original)
+++ lucene/dev/branches/lucene4199/solr/core/src/test/org/apache/solr/request/TestRemoteStreaming.java Mon Jul 9 14:06:17 2012
@@ -33,6 +33,7 @@ import org.junit.Test;
import java.io.IOException;
import java.io.InputStream;
+import java.io.InputStreamReader;
import java.io.StringWriter;
import java.io.UnsupportedEncodingException;
import java.net.URL;
@@ -83,7 +84,7 @@ public class TestRemoteStreaming extends
InputStream inputStream = (InputStream) obj;
try {
StringWriter strWriter = new StringWriter();
- IOUtils.copy(inputStream,strWriter);
+ IOUtils.copy(new InputStreamReader(inputStream, "UTF-8"),strWriter);
return strWriter.toString();
} finally {
IOUtils.closeQuietly(inputStream);
Modified: lucene/dev/branches/lucene4199/solr/solrj/src/java/org/apache/solr/client/solrj/SolrQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene4199/solr/solrj/src/java/org/apache/solr/client/solrj/SolrQuery.java?rev=1359181&r1=1359180&r2=1359181&view=diff
==============================================================================
--- lucene/dev/branches/lucene4199/solr/solrj/src/java/org/apache/solr/client/solrj/SolrQuery.java (original)
+++ lucene/dev/branches/lucene4199/solr/solrj/src/java/org/apache/solr/client/solrj/SolrQuery.java Mon Jul 9 14:06:17 2012
@@ -26,6 +26,7 @@ import org.apache.solr.common.params.Ter
import org.apache.solr.common.util.DateUtil;
import java.util.Date;
+import java.util.Locale;
import java.util.regex.Pattern;
@@ -240,9 +241,9 @@ public class SolrQuery extends Modifiabl
*/
public SolrQuery addNumericRangeFacet(String field, Number start, Number end, Number gap) {
add(FacetParams.FACET_RANGE, field);
- add(String.format("f.%s.%s", field, FacetParams.FACET_RANGE_START), start.toString());
- add(String.format("f.%s.%s", field, FacetParams.FACET_RANGE_END), end.toString());
- add(String.format("f.%s.%s", field, FacetParams.FACET_RANGE_GAP), gap.toString());
+ add(String.format(Locale.ROOT, "f.%s.%s", field, FacetParams.FACET_RANGE_START), start.toString());
+ add(String.format(Locale.ROOT, "f.%s.%s", field, FacetParams.FACET_RANGE_END), end.toString());
+ add(String.format(Locale.ROOT, "f.%s.%s", field, FacetParams.FACET_RANGE_GAP), gap.toString());
this.set(FacetParams.FACET, true);
return this;
}
@@ -258,9 +259,9 @@ public class SolrQuery extends Modifiabl
*/
public SolrQuery addDateRangeFacet(String field, Date start, Date end, String gap) {
add(FacetParams.FACET_RANGE, field);
- add(String.format("f.%s.%s", field, FacetParams.FACET_RANGE_START), DateUtil.getThreadLocalDateFormat().format(start));
- add(String.format("f.%s.%s", field, FacetParams.FACET_RANGE_END), DateUtil.getThreadLocalDateFormat().format(end));
- add(String.format("f.%s.%s", field, FacetParams.FACET_RANGE_GAP), gap);
+ add(String.format(Locale.ROOT, "f.%s.%s", field, FacetParams.FACET_RANGE_START), DateUtil.getThreadLocalDateFormat().format(start));
+ add(String.format(Locale.ROOT, "f.%s.%s", field, FacetParams.FACET_RANGE_END), DateUtil.getThreadLocalDateFormat().format(end));
+ add(String.format(Locale.ROOT, "f.%s.%s", field, FacetParams.FACET_RANGE_GAP), gap);
this.set(FacetParams.FACET, true);
return this;
}
Modified: lucene/dev/branches/lucene4199/solr/solrj/src/java/org/apache/solr/client/solrj/impl/ConcurrentUpdateSolrServer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene4199/solr/solrj/src/java/org/apache/solr/client/solrj/impl/ConcurrentUpdateSolrServer.java?rev=1359181&r1=1359180&r2=1359181&view=diff
==============================================================================
--- lucene/dev/branches/lucene4199/solr/solrj/src/java/org/apache/solr/client/solrj/impl/ConcurrentUpdateSolrServer.java (original)
+++ lucene/dev/branches/lucene4199/solr/solrj/src/java/org/apache/solr/client/solrj/impl/ConcurrentUpdateSolrServer.java Mon Jul 9 14:06:17 2012
@@ -20,6 +20,7 @@ package org.apache.solr.client.solrj.imp
import java.io.IOException;
import java.io.OutputStream;
import java.util.LinkedList;
+import java.util.Locale;
import java.util.Queue;
import java.util.concurrent.BlockingQueue;
import java.util.concurrent.CountDownLatch;
@@ -158,7 +159,7 @@ public class ConcurrentUpdateSolrServer
fmt = "<commit waitSearcher=\"%s\" waitFlush=\"%s\" />";
}
if (fmt != null) {
- byte[] content = String.format(
+ byte[] content = String.format(Locale.ROOT,
fmt,
params.getBool(UpdateParams.WAIT_SEARCHER, false)
+ "").getBytes("UTF-8");
Modified: lucene/dev/branches/lucene4199/solr/solrj/src/java/org/apache/solr/common/util/ContentStreamBase.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene4199/solr/solrj/src/java/org/apache/solr/common/util/ContentStreamBase.java?rev=1359181&r1=1359180&r2=1359181&view=diff
==============================================================================
--- lucene/dev/branches/lucene4199/solr/solrj/src/java/org/apache/solr/common/util/ContentStreamBase.java (original)
+++ lucene/dev/branches/lucene4199/solr/solrj/src/java/org/apache/solr/common/util/ContentStreamBase.java Mon Jul 9 14:06:17 2012
@@ -20,7 +20,6 @@ package org.apache.solr.common.util;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.FileInputStream;
-import java.io.FileReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
@@ -30,6 +29,8 @@ import java.net.URL;
import java.net.URLConnection;
import java.util.Locale;
+import org.apache.lucene.util.IOUtils;
+
/**
* Three concrete implementations for ContentStream - one for File/URL/String
@@ -126,13 +127,13 @@ public abstract class ContentStreamBase
/**
* If an charset is defined (by the contentType) use that, otherwise
- * use a file reader
+ * use a UTF-8 reader
*/
@Override
public Reader getReader() throws IOException {
String charset = getCharsetFromContentType( contentType );
return charset == null
- ? new FileReader( file )
+ ? new InputStreamReader(getStream(), IOUtils.CHARSET_UTF_8)
: new InputStreamReader( getStream(), charset );
}
}