From b2bf95d68d0dd71c6765c3653af8bc7428e80487 Mon Sep 17 00:00:00 2001
From: tpylak <tpylak>
Date: Sat, 9 Apr 2011 17:15:54 +0000
Subject: [PATCH] LMS-2166 hcs material summary: fix dto-s for GWT

SVN: 20743
---
 .../dto/ExperimentFeatureVectorSummary.java   |  6 ++
 .../MaterialAllReplicasFeatureVectors.java    |  6 +-
 .../MaterialReplicaSubgroupFeatureVector.java | 13 +++-
 .../MaterialSingleReplicaFeatureVector.java   |  7 +-
 .../basic/dto/MaterialSummarySettings.java    | 78 +++++++++++++++++++
 .../dto/ReplicaSummaryAggregationType.java    |  4 +-
 6 files changed, 110 insertions(+), 4 deletions(-)
 create mode 100644 screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/MaterialSummarySettings.java

diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/ExperimentFeatureVectorSummary.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/ExperimentFeatureVectorSummary.java
index 957f0423612..2a5d8311f6c 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/ExperimentFeatureVectorSummary.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/ExperimentFeatureVectorSummary.java
@@ -38,6 +38,12 @@ public class ExperimentFeatureVectorSummary implements ISerializable
     // has the same length as feature vectors in all material summaries
     private List<CodeAndLabel> featureDescriptions;
 
+    // GWT only
+    @SuppressWarnings("unused")
+    private ExperimentFeatureVectorSummary()
+    {
+    }
+
     public ExperimentFeatureVectorSummary(ExperimentReference experiment,
             List<MaterialFeatureVectorSummary> materialsSummary,
             List<CodeAndLabel> featureDescriptions)
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/MaterialAllReplicasFeatureVectors.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/MaterialAllReplicasFeatureVectors.java
index 61d5413f9c2..35dc3e7e738 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/MaterialAllReplicasFeatureVectors.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/MaterialAllReplicasFeatureVectors.java
@@ -2,13 +2,17 @@ package ch.systemsx.cisd.openbis.plugin.screening.shared.basic.dto;
 
 import java.util.List;
 
+import ch.systemsx.cisd.openbis.generic.shared.basic.ISerializable;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.CodeAndLabel;
+import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ServiceVersionHolder;
 
 /**
  * @author Tomasz Pylak
  */
-public class MaterialAllReplicasFeatureVectors
+public class MaterialAllReplicasFeatureVectors implements ISerializable
 {
+    private static final long serialVersionUID = ServiceVersionHolder.VERSION;
+
     // NOTE: has the same length as feature vectors in all summaries
     private List<CodeAndLabel> featureDescriptions;
 
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/MaterialReplicaSubgroupFeatureVector.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/MaterialReplicaSubgroupFeatureVector.java
index 88491789e39..6dbf004ff5b 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/MaterialReplicaSubgroupFeatureVector.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/MaterialReplicaSubgroupFeatureVector.java
@@ -2,11 +2,16 @@ package ch.systemsx.cisd.openbis.plugin.screening.shared.basic.dto;
 
 import java.util.List;
 
+import ch.systemsx.cisd.openbis.generic.shared.basic.ISerializable;
+import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ServiceVersionHolder;
+
 /**
  * @author Tomasz Pylak
  */
-public class MaterialReplicaSubgroupFeatureVector
+public class MaterialReplicaSubgroupFeatureVector implements ISerializable
 {
+    private static final long serialVersionUID = ServiceVersionHolder.VERSION;
+
     // DISPLAY NOTE: The header of each column should be:
     // <subgroupName> repl. <replicaSequenceNumber>
     // e.g. SIRNA XYZ repl. 2
@@ -23,6 +28,12 @@ public class MaterialReplicaSubgroupFeatureVector
 
     private String subgroupLabel;
 
+    // GWT only
+    @SuppressWarnings("unused")
+    private MaterialReplicaSubgroupFeatureVector()
+    {
+    }
+
     public MaterialReplicaSubgroupFeatureVector(
             List<MaterialSingleReplicaFeatureVector> singleReplicaValues,
             float[] aggregatedSummary, ReplicaSummaryAggregationType summaryAggregationType,
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/MaterialSingleReplicaFeatureVector.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/MaterialSingleReplicaFeatureVector.java
index 3341b194fc0..de5e9a2bde5 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/MaterialSingleReplicaFeatureVector.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/MaterialSingleReplicaFeatureVector.java
@@ -16,11 +16,16 @@
 
 package ch.systemsx.cisd.openbis.plugin.screening.shared.basic.dto;
 
+import ch.systemsx.cisd.openbis.generic.shared.basic.ISerializable;
+import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ServiceVersionHolder;
+
 /**
  * @author Tomasz Pylak
  */
-public class MaterialSingleReplicaFeatureVector
+public class MaterialSingleReplicaFeatureVector implements ISerializable
 {
+    private static final long serialVersionUID = ServiceVersionHolder.VERSION;
+
     private int replicaSequenceNumber;
 
     private float[] featueVectorSummary;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/MaterialSummarySettings.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/MaterialSummarySettings.java
new file mode 100644
index 00000000000..df660fa18d8
--- /dev/null
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/MaterialSummarySettings.java
@@ -0,0 +1,78 @@
+/*
+ * Copyright 2011 ETH Zuerich, CISD
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package ch.systemsx.cisd.openbis.plugin.screening.shared.basic.dto;
+
+import java.util.List;
+
+import ch.systemsx.cisd.openbis.generic.shared.basic.ISerializable;
+import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ServiceVersionHolder;
+
+/**
+ * @author Tomasz Pylak
+ */
+public class MaterialSummarySettings implements ISerializable
+{
+    private static final long serialVersionUID = ServiceVersionHolder.VERSION;
+
+    private List<String> featureCodes;
+
+    private String replicaMatrialTypePattern;
+
+    private String subgroupPropertyTypeCode;
+
+    private ReplicaSummaryAggregationType aggregationType;
+
+    public List<String> getFeatureCodes()
+    {
+        return featureCodes;
+    }
+
+    public void setFeatureCodes(List<String> featureCodes)
+    {
+        this.featureCodes = featureCodes;
+    }
+
+    public String getReplicaMatrialTypePattern()
+    {
+        return replicaMatrialTypePattern;
+    }
+
+    public void setReplicaMatrialTypePatterns(String replicaMatrialTypePattern)
+    {
+        this.replicaMatrialTypePattern = replicaMatrialTypePattern;
+    }
+
+    public String getSubgroupPropertyTypeCode()
+    {
+        return subgroupPropertyTypeCode;
+    }
+
+    public void setSubgroupPropertyTypeCode(String subgroupPropertyTypeCode)
+    {
+        this.subgroupPropertyTypeCode = subgroupPropertyTypeCode;
+    }
+
+    public ReplicaSummaryAggregationType getAggregationType()
+    {
+        return aggregationType;
+    }
+
+    public void setAggregationType(ReplicaSummaryAggregationType aggregationType)
+    {
+        this.aggregationType = aggregationType;
+    }
+}
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/ReplicaSummaryAggregationType.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/ReplicaSummaryAggregationType.java
index 07e8926ca00..75e46d97f2e 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/ReplicaSummaryAggregationType.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/ReplicaSummaryAggregationType.java
@@ -16,12 +16,14 @@
 
 package ch.systemsx.cisd.openbis.plugin.screening.shared.basic.dto;
 
+import ch.systemsx.cisd.openbis.generic.shared.basic.ISerializable;
+
 /**
  * Type of the aggregation method for material replicas.
  * 
  * @author Tomasz Pylak
  */
-public enum ReplicaSummaryAggregationType
+public enum ReplicaSummaryAggregationType implements ISerializable
 {
     MEDIAN,
 
-- 
GitLab