summaryrefslogtreecommitdiffstats
path: root/config-provisioning
diff options
context:
space:
mode:
authorMartin Polden <mpolden@mpolden.no>2022-06-01 13:38:08 +0200
committerMartin Polden <mpolden@mpolden.no>2022-06-01 15:01:43 +0200
commit8bf4fe891fa15414d441a29b02db98141847259e (patch)
tree3765ff04832218d07d3c20aed135bf909dc266a5 /config-provisioning
parent6e65f1d8e061964a0db4a967e5069442fe0e1b74 (diff)
Implement HostRetirer
Diffstat (limited to 'config-provisioning')
-rw-r--r--config-provisioning/src/main/java/com/yahoo/config/provision/HostEvent.java43
1 files changed, 43 insertions, 0 deletions
diff --git a/config-provisioning/src/main/java/com/yahoo/config/provision/HostEvent.java b/config-provisioning/src/main/java/com/yahoo/config/provision/HostEvent.java
new file mode 100644
index 00000000000..e7108bd6182
--- /dev/null
+++ b/config-provisioning/src/main/java/com/yahoo/config/provision/HostEvent.java
@@ -0,0 +1,43 @@
+// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
+package com.yahoo.config.provision;
+
+import java.util.Objects;
+
+/**
+ * A maintenance event for a host.
+ *
+ * @author mpolden
+ */
+public class HostEvent {
+
+ private final String id;
+ private final String hostId;
+ private final String description;
+
+ public HostEvent(String id, String hostId, String description) {
+ this.id = Objects.requireNonNull(id);
+ this.hostId = Objects.requireNonNull(hostId);
+ this.description = Objects.requireNonNull(description);
+ }
+
+ /** ID of the event */
+ public String id() {
+ return id;
+ }
+
+ /** ID of the host affected by this event, i.e. instance ID */
+ public String hostId() {
+ return hostId;
+ }
+
+ /** Human-readable description of the event */
+ public String description() {
+ return description;
+ }
+
+ @Override
+ public String toString() {
+ return "event " + id + " affecting host " + hostId + ": '" + description + "'";
+ }
+
+}