From 495dcd7bd574e9adf9908a0727f56ecd1d58c940 Mon Sep 17 00:00:00 2001 From: QI CUI Date: Fri, 30 Jan 2015 14:02:49 -0500 Subject: [PATCH] use the LinkedHashMap instead of HashMap to make sure the retrive order --- .../com/google/refine/importers/RdfTripleImporter.java | 4 ++-- .../google/refine/importers/tree/ImportColumnGroup.java | 6 +++--- .../refine/tests/importers/XmlImportUtilitiesTests.java | 8 ++++---- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/main/src/com/google/refine/importers/RdfTripleImporter.java b/main/src/com/google/refine/importers/RdfTripleImporter.java index ed9d7dbae..739476c47 100644 --- a/main/src/com/google/refine/importers/RdfTripleImporter.java +++ b/main/src/com/google/refine/importers/RdfTripleImporter.java @@ -39,7 +39,7 @@ import static org.jrdf.graph.AnySubjectNode.ANY_SUBJECT_NODE; import java.io.InputStream; import java.util.ArrayList; -import java.util.HashMap; +import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.Map.Entry; @@ -107,7 +107,7 @@ public class RdfTripleImporter extends ImportingParserBase { ClosableIterable triples = graph.find(ANY_SUBJECT_NODE, ANY_PREDICATE_NODE, ANY_OBJECT_NODE); try { - Map> subjectToRows = new HashMap>(); + Map> subjectToRows = new LinkedHashMap>(); Column subjectColumn = new Column(project.columnModel.allocateNewCellIndex(), "subject"); project.columnModel.addColumn(0, subjectColumn, false); project.columnModel.setKeyColumnIndex(0); diff --git a/main/src/com/google/refine/importers/tree/ImportColumnGroup.java b/main/src/com/google/refine/importers/tree/ImportColumnGroup.java index 233ac0da2..9b004b1b8 100644 --- a/main/src/com/google/refine/importers/tree/ImportColumnGroup.java +++ b/main/src/com/google/refine/importers/tree/ImportColumnGroup.java @@ -1,6 +1,6 @@ package com.google.refine.importers.tree; -import java.util.HashMap; +import java.util.LinkedHashMap; import java.util.Map; import org.apache.commons.lang.StringUtils; @@ -9,8 +9,8 @@ import org.apache.commons.lang.StringUtils; * A column group describes a branch in tree structured data */ public class ImportColumnGroup extends ImportVertical { - public Map subgroups = new HashMap(); - public Map columns = new HashMap(); + public Map subgroups = new LinkedHashMap(); + public Map columns = new LinkedHashMap(); public int nextRowIndex; // TODO: this can be hoisted into superclass @Override diff --git a/main/tests/server/src/com/google/refine/tests/importers/XmlImportUtilitiesTests.java b/main/tests/server/src/com/google/refine/tests/importers/XmlImportUtilitiesTests.java index ccc0227e5..1270b96c0 100644 --- a/main/tests/server/src/com/google/refine/tests/importers/XmlImportUtilitiesTests.java +++ b/main/tests/server/src/com/google/refine/tests/importers/XmlImportUtilitiesTests.java @@ -264,10 +264,10 @@ public class XmlImportUtilitiesTests extends RefineTest { XmlImportUtilitiesStub.createColumnsFromImport(project, columnGroup); log(project); assertProjectCreated(project, 4, 0); - Assert.assertEquals(project.columnModel.columns.get(0).getName(), "world"); - Assert.assertEquals(project.columnModel.columns.get(1).getName(), "hello"); - Assert.assertEquals(project.columnModel.columns.get(2).getName(), "bar"); - Assert.assertEquals(project.columnModel.columns.get(3).getName(), "foo"); + Assert.assertEquals(project.columnModel.columns.get(0).getName(), "hello"); + Assert.assertEquals(project.columnModel.columns.get(1).getName(), "world"); + Assert.assertEquals(project.columnModel.columns.get(2).getName(), "foo"); + Assert.assertEquals(project.columnModel.columns.get(3).getName(), "bar"); Assert.assertEquals(project.columnModel.columnGroups.get(0).keyColumnIndex, 2); Assert.assertEquals(project.columnModel.columnGroups.get(0).startColumnIndex, 2); Assert.assertEquals(project.columnModel.columnGroups.get(0).columnSpan, 2);