diff options
author | Håkon Hallingstad <hakon@verizonmedia.com> | 2019-02-20 14:35:27 +0100 |
---|---|---|
committer | Håkon Hallingstad <hakon@verizonmedia.com> | 2019-02-20 14:35:27 +0100 |
commit | 4e71a62a0ae695d411663576e62f7b37a6841082 (patch) | |
tree | 71b8f8514213f78d9e6e182136af3f1b3d8f3686 /node-admin | |
parent | 4a72acb369b8dce91db24a64dfd36a139c1325a9 (diff) |
Make BaseReport mutable
Diffstat (limited to 'node-admin')
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 |