summaryrefslogtreecommitdiffstats
path: root/node-admin
diff options
context:
space:
mode:
authorHåkon Hallingstad <hakon@verizonmedia.com>2019-02-20 14:35:27 +0100
committerHåkon Hallingstad <hakon@verizonmedia.com>2019-02-20 14:35:27 +0100
commit4e71a62a0ae695d411663576e62f7b37a6841082 (patch)
tree71b8f8514213f78d9e6e182136af3f1b3d8f3686 /node-admin
parent4a72acb369b8dce91db24a64dfd36a139c1325a9 (diff)
Make BaseReport mutable
Diffstat (limited to 'node-admin')
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/reports/BaseReport.java10
-rw-r--r--node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/reports/BaseReportTest.java13
2 files changed, 7 insertions, 16 deletions
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/reports/BaseReport.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/reports/BaseReport.java
index 5c0e69dadb3..f40294455d5 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/reports/BaseReport.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/reports/BaseReport.java
@@ -29,10 +29,9 @@ import static com.yahoo.yolean.Exceptions.uncheck;
* {@code !super.updates(current)}.</li>
* </ol>
*
- * <p>NOT immutable to allow e.g. type to be overridden before serialization.</p>
- *
* @author hakonhall
*/
+// @Immutable
@JsonIgnoreProperties(ignoreUnknown = true)
@JsonInclude(JsonInclude.Include.NON_NULL)
public class BaseReport {
@@ -47,8 +46,7 @@ public class BaseReport {
private final OptionalLong createdMillis;
private final Optional<String> description;
-
- private Type type;
+ private final Type type;
public enum Type {
/** The default type if none given, or not recognized. */
@@ -92,10 +90,6 @@ public class BaseReport {
return type;
}
- public void setType(Type typeOrNull) {
- this.type = typeOrNull;
- }
-
/**
* Assume {@code this} is a freshly made report, and {@code current} is the report in the node repository:
* Return true iff the node repository should be updated.
diff --git a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/reports/BaseReportTest.java b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/reports/BaseReportTest.java
index 4d37f40a2e9..9e4a807f19b 100644
--- a/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/reports/BaseReportTest.java
+++ b/node-admin/src/test/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/reports/BaseReportTest.java
@@ -4,8 +4,8 @@ package com.yahoo.vespa.hosted.node.admin.configserver.noderepository.reports;
import com.yahoo.test.json.JsonTestHelper;
import org.junit.Test;
-import static com.yahoo.vespa.hosted.node.admin.configserver.noderepository.reports.BaseReport.Type.UNSPECIFIED;
import static com.yahoo.vespa.hosted.node.admin.configserver.noderepository.reports.BaseReport.Type.SOFT_FAIL;
+import static com.yahoo.vespa.hosted.node.admin.configserver.noderepository.reports.BaseReport.Type.UNSPECIFIED;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
@@ -67,12 +67,9 @@ public class BaseReportTest {
}
@Test
- public void settingInformationalIgnoresType() {
- BaseReport report = BaseReport.fromJson(JSON_2);
- assertEquals(BaseReport.Type.SOFT_FAIL, report.getTypeOrNull());
- report.setType(UNSPECIFIED);
- JsonTestHelper.assertJsonEquals(JSON_1, report.toJson());
- report.setType(null);
- JsonTestHelper.assertJsonEquals(JSON_1, report.toJson());
+ public void testUnspecifiedType() {
+ BaseReport report = new BaseReport(1L, "desc", null);
+ assertEquals(null, report.getTypeOrNull());
+ assertEquals(UNSPECIFIED, report.getType());
}
} \ No newline at end of file