You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by jd...@apache.org on 2012/11/20 18:44:34 UTC

svn commit: r1411759 - in /lucene/dev/branches/branch_4x/solr: ./ contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/ contrib/dataimporthandler/src/test/org/apache/solr/handler/dataimport/

Author: jdyer
Date: Tue Nov 20 17:44:33 2012
New Revision: 1411759

URL: http://svn.apache.org/viewvc?rev=1411759&view=rev
Log:
SOLR-4095: NumberFormatTransformer & DateFormatTransformer default to the Root Locale

Modified:
    lucene/dev/branches/branch_4x/solr/   (props changed)
    lucene/dev/branches/branch_4x/solr/CHANGES.txt   (contents, props changed)
    lucene/dev/branches/branch_4x/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/DateFormatTransformer.java
    lucene/dev/branches/branch_4x/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/NumberFormatTransformer.java
    lucene/dev/branches/branch_4x/solr/contrib/dataimporthandler/src/test/org/apache/solr/handler/dataimport/TestDateFormatTransformer.java
    lucene/dev/branches/branch_4x/solr/contrib/dataimporthandler/src/test/org/apache/solr/handler/dataimport/TestNumberFormatTransformer.java

Modified: lucene/dev/branches/branch_4x/solr/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/solr/CHANGES.txt?rev=1411759&r1=1411758&r2=1411759&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/solr/CHANGES.txt (original)
+++ lucene/dev/branches/branch_4x/solr/CHANGES.txt Tue Nov 20 17:44:33 2012
@@ -241,6 +241,10 @@ Other Changes
 
 * SOLR-3602: Update ZooKeeper to 3.4.5 (Mark Miller)
 
+* SOLR-4095 DIH NumberFormatTransformer & DateFormatTransformer default to the
+  ROOT Locale if none is specified.  These previously used the machine's default.
+  (James Dyer)
+
 ==================  4.0.0 ==================
 
 Versions of Major Components

Modified: lucene/dev/branches/branch_4x/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/DateFormatTransformer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/DateFormatTransformer.java?rev=1411759&r1=1411758&r2=1411759&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/DateFormatTransformer.java (original)
+++ lucene/dev/branches/branch_4x/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/DateFormatTransformer.java Tue Nov 20 17:44:33 2012
@@ -49,7 +49,7 @@ public class DateFormatTransformer exten
   public Object transformRow(Map<String, Object> aRow, Context context) {
 
     for (Map<String, String> map : context.getAllEntityFields()) {
-      Locale locale = Locale.getDefault();
+      Locale locale = Locale.ROOT;
       String customLocale = map.get("locale");
       if(customLocale != null){
         locale = new Locale(customLocale);

Modified: lucene/dev/branches/branch_4x/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/NumberFormatTransformer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/NumberFormatTransformer.java?rev=1411759&r1=1411758&r2=1411759&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/NumberFormatTransformer.java (original)
+++ lucene/dev/branches/branch_4x/solr/contrib/dataimporthandler/src/java/org/apache/solr/handler/dataimport/NumberFormatTransformer.java Tue Nov 20 17:44:33 2012
@@ -68,7 +68,7 @@ public class NumberFormatTransformer ext
             throw new DataImportHandlerException(DataImportHandlerException.SEVERE, "Invalid Locale specified for field: " + fld);
           }
         } else {
-          locale = Locale.getDefault();
+          locale = Locale.ROOT;
         }
 
         Object val = row.get(srcCol);

Modified: lucene/dev/branches/branch_4x/solr/contrib/dataimporthandler/src/test/org/apache/solr/handler/dataimport/TestDateFormatTransformer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/solr/contrib/dataimporthandler/src/test/org/apache/solr/handler/dataimport/TestDateFormatTransformer.java?rev=1411759&r1=1411758&r2=1411759&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/solr/contrib/dataimporthandler/src/test/org/apache/solr/handler/dataimport/TestDateFormatTransformer.java (original)
+++ lucene/dev/branches/branch_4x/solr/contrib/dataimporthandler/src/test/org/apache/solr/handler/dataimport/TestDateFormatTransformer.java Tue Nov 20 17:44:33 2012
@@ -34,16 +34,16 @@ public class TestDateFormatTransformer e
   @Test
   @SuppressWarnings("unchecked")
   public void testTransformRow_SingleRow() throws Exception {
-    List fields = new ArrayList();
+    List<Map<String, String>> fields = new ArrayList<Map<String, String>>();
     fields.add(createMap(DataImporter.COLUMN, "lastModified"));
     fields.add(createMap(DataImporter.COLUMN,
             "dateAdded", RegexTransformer.SRC_COL_NAME, "lastModified",
             DateFormatTransformer.DATE_TIME_FMT, "MM/dd/yyyy"));
 
-    SimpleDateFormat format = new SimpleDateFormat("MM/dd/yyyy");
+    SimpleDateFormat format = new SimpleDateFormat("MM/dd/yyyy", Locale.ROOT);
     Date now = format.parse(format.format(new Date()));
 
-    Map row = createMap("lastModified", format.format(now));
+    Map<String,Object> row = createMap("lastModified", format.format(now));
 
     VariableResolver resolver = new VariableResolver();
     resolver.addNamespace("e", row);
@@ -57,18 +57,18 @@ public class TestDateFormatTransformer e
   @Test
   @SuppressWarnings("unchecked")
   public void testTransformRow_MultipleRows() throws Exception {
-    List fields = new ArrayList();
+    List<Map<String, String>> fields = new ArrayList<Map<String, String>>();
     fields.add(createMap(DataImporter.COLUMN, "lastModified"));
     fields.add(createMap(DataImporter.COLUMN,
             "dateAdded", RegexTransformer.SRC_COL_NAME, "lastModified",
             DateFormatTransformer.DATE_TIME_FMT, "MM/dd/yyyy hh:mm:ss.SSS"));
 
-    SimpleDateFormat format = new SimpleDateFormat("MM/dd/yyyy hh:mm:ss.SSS");
+    SimpleDateFormat format = new SimpleDateFormat("MM/dd/yyyy hh:mm:ss.SSS", Locale.ROOT);
     Date now1 = format.parse(format.format(new Date()));
     Date now2 = format.parse(format.format(new Date()));
 
-    Map row = new HashMap();
-    List list = new ArrayList();
+    Map<String,Object> row = new HashMap<String,Object>();
+    List<String> list = new ArrayList<String>();
     list.add(format.format(now1));
     list.add(format.format(now2));
     row.put("lastModified", list);
@@ -79,7 +79,7 @@ public class TestDateFormatTransformer e
     Context context = getContext(null, resolver,
             null, Context.FULL_DUMP, fields, null);
     new DateFormatTransformer().transformRow(row, context);
-    List output = new ArrayList();
+    List<Object> output = new ArrayList<Object>();
     output.add(now1);
     output.add(now2);
     assertEquals(output, row.get("dateAdded"));

Modified: lucene/dev/branches/branch_4x/solr/contrib/dataimporthandler/src/test/org/apache/solr/handler/dataimport/TestNumberFormatTransformer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/solr/contrib/dataimporthandler/src/test/org/apache/solr/handler/dataimport/TestNumberFormatTransformer.java?rev=1411759&r1=1411758&r2=1411759&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/solr/contrib/dataimporthandler/src/test/org/apache/solr/handler/dataimport/TestNumberFormatTransformer.java (original)
+++ lucene/dev/branches/branch_4x/solr/contrib/dataimporthandler/src/test/org/apache/solr/handler/dataimport/TestNumberFormatTransformer.java Tue Nov 20 17:44:33 2012
@@ -33,20 +33,20 @@ import java.util.Map;
  * @since solr 1.3
  */
 public class TestNumberFormatTransformer extends AbstractDataImportHandlerTestCase {
-  private char GROUPING_SEP = new DecimalFormatSymbols().getGroupingSeparator();
-  private char DECIMAL_SEP = new DecimalFormatSymbols().getDecimalSeparator();
+  private char GROUPING_SEP = new DecimalFormatSymbols(Locale.ROOT).getGroupingSeparator();
+  private char DECIMAL_SEP = new DecimalFormatSymbols(Locale.ROOT).getDecimalSeparator();
 
-  @Test
   @SuppressWarnings("unchecked")
+  @Test
   public void testTransformRow_SingleNumber() {
     char GERMAN_GROUPING_SEP = new DecimalFormatSymbols(Locale.GERMANY).getGroupingSeparator();
-    List l = new ArrayList();
+    List<Map<String, String>> l = new ArrayList<Map<String, String>>();
     l.add(createMap("column", "num",
             NumberFormatTransformer.FORMAT_STYLE, NumberFormatTransformer.NUMBER));
     l.add(createMap("column", "localizedNum",
             NumberFormatTransformer.FORMAT_STYLE, NumberFormatTransformer.NUMBER, NumberFormatTransformer.LOCALE, "de-DE"));
     Context c = getContext(null, null, null, Context.FULL_DUMP, l, null);
-    Map m = createMap("num", "123" + GROUPING_SEP + "567", "localizedNum", "123" + GERMAN_GROUPING_SEP + "567");
+    Map<String,Object> m = createMap("num", "123" + GROUPING_SEP + "567", "localizedNum", "123" + GERMAN_GROUPING_SEP + "567");
     new NumberFormatTransformer().transformRow(m, c);
     assertEquals(new Long(123567), m.get("num"));
     assertEquals(new Long(123567), m.get("localizedNum"));
@@ -55,16 +55,16 @@ public class TestNumberFormatTransformer
   @Test
   @SuppressWarnings("unchecked")
   public void testTransformRow_MultipleNumbers() throws Exception {
-    List fields = new ArrayList();
+    List<Map<String, String>> fields = new ArrayList<Map<String, String>>();
     fields.add(createMap(DataImporter.COLUMN, "inputs"));
     fields.add(createMap(DataImporter.COLUMN,
             "outputs", RegexTransformer.SRC_COL_NAME, "inputs",
             NumberFormatTransformer.FORMAT_STYLE, NumberFormatTransformer.NUMBER));
 
-    List inputs = new ArrayList();
+    List<String> inputs = new ArrayList<String>();
     inputs.add("123" + GROUPING_SEP + "567");
     inputs.add("245" + GROUPING_SEP + "678");
-    Map row = createMap("inputs", inputs);
+    Map<String, Object> row = createMap("inputs", inputs);
 
     VariableResolver resolver = new VariableResolver();
     resolver.addNamespace("e", row);
@@ -72,10 +72,10 @@ public class TestNumberFormatTransformer
     Context context = getContext(null, resolver, null, Context.FULL_DUMP, fields, null);
     new NumberFormatTransformer().transformRow(row, context);
 
-    List output = new ArrayList();
+    List<Long> output = new ArrayList<Long>();
     output.add(new Long(123567));
     output.add(new Long(245678));
-    Map outputRow = createMap("inputs", inputs, "outputs", output);
+    Map<String, Object> outputRow = createMap("inputs", inputs, "outputs", output);
 
     assertEquals(outputRow, row);
   }
@@ -83,77 +83,77 @@ public class TestNumberFormatTransformer
   @Test(expected = DataImportHandlerException.class)
   @SuppressWarnings("unchecked")
   public void testTransformRow_InvalidInput1_Number() {
-    List l = new ArrayList();
+    List<Map<String, String>> l = new ArrayList<Map<String, String>>();
     l.add(createMap("column", "num",
             NumberFormatTransformer.FORMAT_STYLE, NumberFormatTransformer.NUMBER));
     Context c = getContext(null, null, null, Context.FULL_DUMP, l, null);
-    Map m = createMap("num", "123" + GROUPING_SEP + "5a67");
+    Map<String, Object> m = createMap("num", "123" + GROUPING_SEP + "5a67");
     new NumberFormatTransformer().transformRow(m, c);
   }
 
   @Test(expected = DataImportHandlerException.class)
   @SuppressWarnings("unchecked")
   public void testTransformRow_InvalidInput2_Number() {
-    List l = new ArrayList();
+    List<Map<String, String>> l = new ArrayList<Map<String, String>>();
     l.add(createMap("column", "num",
             NumberFormatTransformer.FORMAT_STYLE, NumberFormatTransformer.NUMBER));
     Context c = getContext(null, null, null, Context.FULL_DUMP, l, null);
-    Map m = createMap("num", "123" + GROUPING_SEP + "567b");
+    Map<String, Object> m = createMap("num", "123" + GROUPING_SEP + "567b");
     new NumberFormatTransformer().transformRow(m, c);
   }
 
   @Test(expected = DataImportHandlerException.class)
   @SuppressWarnings("unchecked")
   public void testTransformRow_InvalidInput2_Currency() {
-    List l = new ArrayList();
+    List<Map<String, String>> l = new ArrayList<Map<String, String>>();
     l.add(createMap("column", "num",
             NumberFormatTransformer.FORMAT_STYLE, NumberFormatTransformer.CURRENCY));
     Context c = getContext(null, null, null, Context.FULL_DUMP, l, null);
-    Map m = createMap("num", "123" + GROUPING_SEP + "567b");
+    Map<String, Object> m = createMap("num", "123" + GROUPING_SEP + "567b");
     new NumberFormatTransformer().transformRow(m, c);
   }
 
   @Test(expected = DataImportHandlerException.class)
   @SuppressWarnings("unchecked")
   public void testTransformRow_InvalidInput1_Percent() {
-    List l = new ArrayList();
+    List<Map<String, String>> l = new ArrayList<Map<String, String>>();
     l.add(createMap("column", "num",
             NumberFormatTransformer.FORMAT_STYLE, NumberFormatTransformer.PERCENT));
     Context c = getContext(null, null, null, Context.FULL_DUMP, l, null);
-    Map m = createMap("num", "123" + GROUPING_SEP + "5a67");
+    Map<String, Object> m = createMap("num", "123" + GROUPING_SEP + "5a67");
     new NumberFormatTransformer().transformRow(m, c);
   }
 
   @Test(expected = DataImportHandlerException.class)
   @SuppressWarnings("unchecked")
   public void testTransformRow_InvalidInput3_Currency() {
-    List l = new ArrayList();
+    List<Map<String, String>> l = new ArrayList<Map<String, String>>();
     l.add(createMap("column", "num",
             NumberFormatTransformer.FORMAT_STYLE, NumberFormatTransformer.CURRENCY));
     Context c = getContext(null, null, null, Context.FULL_DUMP, l, null);
-    Map m = createMap("num", "123" + DECIMAL_SEP + "456" + DECIMAL_SEP + "789");
+    Map<String, Object> m = createMap("num", "123" + DECIMAL_SEP + "456" + DECIMAL_SEP + "789");
     new NumberFormatTransformer().transformRow(m, c);
   }
 
   @Test(expected = DataImportHandlerException.class)
   @SuppressWarnings("unchecked")
   public void testTransformRow_InvalidInput3_Number() {
-    List l = new ArrayList();
+    List<Map<String, String>> l = new ArrayList<Map<String, String>>();
     l.add(createMap("column", "num",
             NumberFormatTransformer.FORMAT_STYLE, NumberFormatTransformer.NUMBER));
     Context c = getContext(null, null, null, Context.FULL_DUMP, l, null);
-    Map m = createMap("num", "123" + DECIMAL_SEP + "456" + DECIMAL_SEP + "789");
+    Map<String, Object> m = createMap("num", "123" + DECIMAL_SEP + "456" + DECIMAL_SEP + "789");
     new NumberFormatTransformer().transformRow(m, c);
   }
 
   @Test
   @SuppressWarnings("unchecked")
   public void testTransformRow_MalformedInput_Number() {
-    List l = new ArrayList();
+    List<Map<String, String>> l = new ArrayList<Map<String, String>>();
     l.add(createMap("column", "num",
             NumberFormatTransformer.FORMAT_STYLE, NumberFormatTransformer.NUMBER));
     Context c = getContext(null, null, null, Context.FULL_DUMP, l, null);
-    Map m = createMap("num", "123" + GROUPING_SEP + GROUPING_SEP + "789");
+    Map<String, Object> m = createMap("num", "123" + GROUPING_SEP + GROUPING_SEP + "789");
     new NumberFormatTransformer().transformRow(m, c);
     assertEquals(new Long(123789), m.get("num"));
   }