From c19631d02674037030bfb05f40e392b75641aafd Mon Sep 17 00:00:00 2001
From: felmer <felmer>
Date: Wed, 21 Oct 2009 12:15:14 +0000
Subject: [PATCH] LMS-1231 Introducing DateTableCell

SVN: 13027
---
 .../server/plugins/demo/DemoReportingPlugin.java      |  9 +++++++--
 .../plugins/tasks/IterativeTableModelBuilder.java     |  2 +-
 .../server/plugins/tasks/SimpleTableModelBuilder.java | 11 ++++++++---
 .../plugins/tasks/IterativeTableModelBuilderTest.java |  2 +-
 4 files changed, 17 insertions(+), 7 deletions(-)

diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/demo/DemoReportingPlugin.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/demo/DemoReportingPlugin.java
index 9ac8a167473..a1b676e532c 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/demo/DemoReportingPlugin.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/demo/DemoReportingPlugin.java
@@ -18,6 +18,7 @@ package ch.systemsx.cisd.openbis.dss.generic.server.plugins.demo;
 
 import java.io.File;
 import java.util.Arrays;
+import java.util.Date;
 import java.util.List;
 import java.util.Properties;
 
@@ -28,6 +29,7 @@ import ch.systemsx.cisd.openbis.dss.generic.server.plugins.standard.AbstractData
 import ch.systemsx.cisd.openbis.dss.generic.server.plugins.tasks.IReportingPluginTask;
 import ch.systemsx.cisd.openbis.dss.generic.server.plugins.tasks.SimpleTableModelBuilder;
 import ch.systemsx.cisd.openbis.dss.generic.shared.utils.ImageUtil;
+import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DateTableCell;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ISerializableComparable;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ImageTableCell;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NumberTableCell;
@@ -55,7 +57,8 @@ public class DemoReportingPlugin extends AbstractDatastorePlugin implements IRep
         builder.addHeader("Dataset Code");
         builder.addHeader("Thumbnail");
         builder.addHeader("Name");
-        builder.addHeader("Size");
+        builder.addHeader("Last Modified");
+        builder.addHeader("Size", true);
         for (DatasetDescription dataset : datasets)
         {
             File file = getDataSubDir(dataset);
@@ -92,7 +95,8 @@ public class DemoReportingPlugin extends AbstractDatastorePlugin implements IRep
         List<ISerializableComparable> row =
                 Arrays.<ISerializableComparable> asList(new StringTableCell(datasetCode), image,
                         new StringTableCell(file.getName()),
-                        new StringTableCell("[does not exist]"));
+                        new DateTableCell(new Date(file.lastModified())),
+                        new NumberTableCell(0));
         builder.addRow(row);
     }
 
@@ -114,6 +118,7 @@ public class DemoReportingPlugin extends AbstractDatastorePlugin implements IRep
         List<ISerializableComparable> row =
                 Arrays.<ISerializableComparable> asList(new StringTableCell(dataset
                         .getDatasetCode()), image, new StringTableCell(file.getName()),
+                        new DateTableCell(new Date(file.lastModified())),
                         new NumberTableCell(getSize(file)));
         builder.addRow(row);
     }
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 9bdb135645f..f4ac89fdf36 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
@@ -32,8 +32,8 @@ import ch.systemsx.cisd.common.logging.LogFactory;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ISerializableComparable;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.StringTableCell;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.TableModel;
+import ch.systemsx.cisd.openbis.generic.shared.basic.dto.TableModelColumnHeader;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.TableModelRow;
-import ch.systemsx.cisd.openbis.generic.shared.basic.dto.TableModel.TableModelColumnHeader;
 
 /**
  * A table model builder that can take new columns and rows iteratively.
diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/SimpleTableModelBuilder.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/SimpleTableModelBuilder.java
index 057df4f6479..0610c5d3671 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/SimpleTableModelBuilder.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/SimpleTableModelBuilder.java
@@ -21,8 +21,8 @@ import java.util.List;
 
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ISerializableComparable;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.TableModel;
+import ch.systemsx.cisd.openbis.generic.shared.basic.dto.TableModelColumnHeader;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.TableModelRow;
-import ch.systemsx.cisd.openbis.generic.shared.basic.dto.TableModel.TableModelColumnHeader;
 
 /**
  * Helps in building a {@link TableModel}
@@ -41,11 +41,16 @@ public class SimpleTableModelBuilder
         this.header = new ArrayList<TableModelColumnHeader>();
     }
 
-    public void addHeader(String title)
+    public void addHeader(String title, boolean numeric)
     {
-        header.add(new TableModelColumnHeader(title, header.size()));
+        header.add(new TableModelColumnHeader(title, header.size(), numeric));
     }
 
+    public void addHeader(String title)
+    {
+        addHeader(title, false);
+    }
+    
     public void addRow(List<ISerializableComparable> values)
     {
         assert values.size() == header.size() : "header has different number of columns than a row";
diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/IterativeTableModelBuilderTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/IterativeTableModelBuilderTest.java
index 5100c4ff9a0..d69425e28ec 100644
--- a/datastore_server/sourceTest/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/IterativeTableModelBuilderTest.java
+++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/tasks/IterativeTableModelBuilderTest.java
@@ -28,8 +28,8 @@ import org.testng.annotations.Test;
 import ch.systemsx.cisd.common.logging.LogInitializer;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ISerializableComparable;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.TableModel;
+import ch.systemsx.cisd.openbis.generic.shared.basic.dto.TableModelColumnHeader;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.TableModelRow;
-import ch.systemsx.cisd.openbis.generic.shared.basic.dto.TableModel.TableModelColumnHeader;
 import ch.systemsx.cisd.openbis.generic.shared.dto.DatasetDescription;
 
 /**
-- 
GitLab