From 10e5b129327a85963aadcd51e763915ba5ae7e96 Mon Sep 17 00:00:00 2001
From: felmer <felmer>
Date: Thu, 19 Aug 2010 13:25:15 +0000
Subject: [PATCH] LMS-1707 ITabularData modified by introducing a method for
 retrieving header codes and renaming tokens to labels.

SVN: 17535
---
 .../standard/AbstractDataMergingReportingPlugin.java       | 2 +-
 .../plugins/standard/AbstractFileTableReportingPlugin.java | 6 +++---
 .../plugins/standard/MergedRowDataReportingPlugin.java     | 4 ++--
 .../dss/generic/server/plugins/tasks/DatasetFileLines.java | 7 ++++++-
 .../dss/generic/server/plugins/tasks/ITabularData.java     | 4 +++-
 .../server/plugins/tasks/IterativeTableModelBuilder.java   | 4 ++--
 6 files changed, 17 insertions(+), 10 deletions(-)

diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/standard/AbstractDataMergingReportingPlugin.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/standard/AbstractDataMergingReportingPlugin.java
index 79c16ef27bc..3f4b182789a 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/standard/AbstractDataMergingReportingPlugin.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/standard/AbstractDataMergingReportingPlugin.java
@@ -78,7 +78,7 @@ public abstract class AbstractDataMergingReportingPlugin extends AbstractFileTab
     {
         File dir = getDataSubDir(dataset);
         final DatasetFileLines lines = loadFromDirectory(dataset, dir);
-        return lines.getHeaderTokens();
+        return lines.getHeaderLabels();
     }
 
     /**
diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/standard/AbstractFileTableReportingPlugin.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/standard/AbstractFileTableReportingPlugin.java
index b10f5eb4e48..e3b45ff46ed 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/standard/AbstractFileTableReportingPlugin.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/standard/AbstractFileTableReportingPlugin.java
@@ -154,7 +154,7 @@ abstract public class AbstractFileTableReportingPlugin extends AbstractDatastore
     protected TableModel createTableModel(DatasetFileLines lines)
     {
         SimpleTableModelBuilder tableBuilder = new SimpleTableModelBuilder();
-        for (String title : lines.getHeaderTokens())
+        for (String title : lines.getHeaderLabels())
         {
             CodeAndTitle codeAndTitle = new CodeAndTitle(title);
             tableBuilder.addHeader(codeAndTitle.getTitle(), codeAndTitle.getCode());
@@ -173,7 +173,7 @@ abstract public class AbstractFileTableReportingPlugin extends AbstractDatastore
     
     protected static TableModel createTransposedTableModel(DatasetFileLines lines)
     {
-        int columns = lines.getHeaderTokens().length;
+        int columns = lines.getHeaderLabels().length;
         int rows = lines.getDataLines().size() + 1;
         String[][] all = new String[columns][rows];
         for (int r = 0; r < rows; r++)
@@ -181,7 +181,7 @@ abstract public class AbstractFileTableReportingPlugin extends AbstractDatastore
             for (int c = 0; c < columns; c++)
             {
                 all[c][r] =
-                        (r == 0) ? lines.getHeaderTokens()[c] : lines.getDataLines().get(r - 1)[c];
+                        (r == 0) ? lines.getHeaderLabels()[c] : lines.getDataLines().get(r - 1)[c];
             }
         }
         SimpleTableModelBuilder tableBuilder = new SimpleTableModelBuilder();
diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/standard/MergedRowDataReportingPlugin.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/standard/MergedRowDataReportingPlugin.java
index 9d8c463f15e..9747154a3e8 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/standard/MergedRowDataReportingPlugin.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/standard/MergedRowDataReportingPlugin.java
@@ -62,14 +62,14 @@ public class MergedRowDataReportingPlugin extends AbstractDataMergingReportingPl
             {
                 final File dir = getDataSubDir(dataset);
                 final DatasetFileLines lines = loadFromDirectory(dataset, dir);
-                if (Arrays.equals(titles, lines.getHeaderTokens()) == false)
+                if (Arrays.equals(titles, lines.getHeaderLabels()) == false)
                 {
                     throw UserFailureException.fromTemplate(
                             "All Data Set files should have the same headers, "
                                     + "but file header of '%s': \n\t '%s' "
                                     + "is different than file header of '%s': \n\t '%s'.",
                             firstDataset.getDatasetCode(), StringUtils.join(titles, "\t"), dataset
-                                    .getDatasetCode(), StringUtils.join(lines.getHeaderTokens(),
+                                    .getDatasetCode(), StringUtils.join(lines.getHeaderLabels(),
                                     "\t"));
                 }
                 addDataRows(builder, dataset, lines, false);
diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/DatasetFileLines.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/DatasetFileLines.java
index f4bc033b27f..d12803a35ec 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/DatasetFileLines.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/DatasetFileLines.java
@@ -95,7 +95,12 @@ public class DatasetFileLines implements ITabularData
         return file;
     }
 
-    public String[] getHeaderTokens()
+    public String[] getHeaderLabels()
+    {
+        return headerTokens;
+    }
+
+    public String[] getHeaderCodes()
     {
         return headerTokens;
     }
diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/ITabularData.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/ITabularData.java
index f24f0e806fe..36b80425626 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/ITabularData.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/ITabularData.java
@@ -26,7 +26,9 @@ import java.util.List;
 public interface ITabularData
 {
 
-    public abstract String[] getHeaderTokens();
+    public abstract String[] getHeaderLabels();
+    
+    public String[] getHeaderCodes();
 
     public abstract List<String[]> getDataLines();
 
diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/IterativeTableModelBuilder.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/IterativeTableModelBuilder.java
index ec2fbc2d549..78aa9d5e839 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/IterativeTableModelBuilder.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/IterativeTableModelBuilder.java
@@ -60,7 +60,7 @@ public class IterativeTableModelBuilder
     private int findIndexOfIdentifierColumn(DatasetFileLines lines)
     {
         int idx = 0;
-        for (String columnHeader : lines.getHeaderTokens())
+        for (String columnHeader : lines.getHeaderLabels())
         {
             if (isIdentifierColumn(columnHeader))
             {
@@ -85,7 +85,7 @@ public class IterativeTableModelBuilder
                     + rowIdentifierColumnHeader + "'.");
             return;
         }
-        final String[] columnHeaders = lines.getHeaderTokens();
+        final String[] columnHeaders = lines.getHeaderLabels();
         int colIdx = 0;
         for (String columnHeader : columnHeaders)
         {
-- 
GitLab