aboutsummaryrefslogtreecommitdiffstats
path: root/config-model/src/main/java
diff options
context:
space:
mode:
Diffstat (limited to 'config-model/src/main/java')
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/ContainerRestartValidator.java2
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/VespaRefeedAction.java16
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/VespaRestartAction.java35
3 files changed, 41 insertions, 12 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/ContainerRestartValidator.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/ContainerRestartValidator.java
index 5cee08ea9af..3176ad9f912 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/ContainerRestartValidator.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/ContainerRestartValidator.java
@@ -31,7 +31,7 @@ public class ContainerRestartValidator implements ChangeValidator {
}
private static ConfigChangeAction createConfigChangeAction(Container container) {
- return new VespaRestartAction(createMessage(container), container.getServiceInfo());
+ return new VespaRestartAction(createMessage(container), container.getServiceInfo(), true);
}
private static String createMessage(Container container) {
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/VespaRefeedAction.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/VespaRefeedAction.java
index 0fd38e5dbdd..be43c6eddfb 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/VespaRefeedAction.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/VespaRefeedAction.java
@@ -6,7 +6,6 @@ import com.yahoo.config.model.api.ServiceInfo;
import com.yahoo.config.application.api.ValidationOverrides;
import java.time.Instant;
-import java.util.Collections;
import java.util.List;
/**
@@ -27,31 +26,29 @@ public class VespaRefeedAction extends VespaConfigChangeAction implements Config
private final String documentType;
private final boolean allowed;
- private final Instant now;
- private VespaRefeedAction(String name, String message, List<ServiceInfo> services, String documentType, boolean allowed, Instant now) {
+ private VespaRefeedAction(String name, String message, List<ServiceInfo> services, String documentType, boolean allowed) {
super(message, services);
this.name = name;
this.documentType = documentType;
this.allowed = allowed;
- this.now = now;
}
/** Creates a refeed action with some missing information */
// TODO: We should require document type or model its absence properly
public static VespaRefeedAction of(String name, ValidationOverrides overrides, String message, Instant now) {
- return new VespaRefeedAction(name, message, Collections.emptyList(), "", overrides.allows(name, now), now);
+ return new VespaRefeedAction(name, message, List.of(), "", overrides.allows(name, now));
}
/** Creates a refeed action */
public static VespaRefeedAction of(String name, ValidationOverrides overrides, String message,
List<ServiceInfo> services, String documentType, Instant now) {
- return new VespaRefeedAction(name, message, services, documentType, overrides.allows(name, now), now);
+ return new VespaRefeedAction(name, message, services, documentType, overrides.allows(name, now));
}
@Override
public VespaConfigChangeAction modifyAction(String newMessage, List<ServiceInfo> newServices, String documentType) {
- return new VespaRefeedAction(name, newMessage, newServices, documentType, allowed, now);
+ return new VespaRefeedAction(name, newMessage, newServices, documentType, allowed);
}
@Override
@@ -64,6 +61,11 @@ public class VespaRefeedAction extends VespaConfigChangeAction implements Config
public boolean allowed() { return allowed; }
@Override
+ public boolean ignoreForInternalRedeploy() {
+ return false;
+ }
+
+ @Override
public String toString() {
return super.toString() + ", documentType='" + documentType + "'";
}
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/VespaRestartAction.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/VespaRestartAction.java
index d42db15d062..3ea18cac1d6 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/VespaRestartAction.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/change/VespaRestartAction.java
@@ -4,8 +4,6 @@ package com.yahoo.vespa.model.application.validation.change;
import com.yahoo.config.model.api.ConfigChangeRestartAction;
import com.yahoo.config.model.api.ServiceInfo;
-import java.util.ArrayList;
-import java.util.Collections;
import java.util.List;
/**
@@ -15,16 +13,24 @@ import java.util.List;
*/
public class VespaRestartAction extends VespaConfigChangeAction implements ConfigChangeRestartAction {
+ private final boolean ignoreForInternalRedeploy;
+
public VespaRestartAction(String message) {
- super(message, new ArrayList<>());
+ this(message, List.of());
}
public VespaRestartAction(String message, ServiceInfo service) {
- super(message, Collections.singletonList(service));
+ this(message, List.of(service));
+ }
+
+ public VespaRestartAction(String message, ServiceInfo services, boolean ignoreForInternalRedeploy) {
+ super(message, List.of(services));
+ this.ignoreForInternalRedeploy = ignoreForInternalRedeploy;
}
public VespaRestartAction(String message, List<ServiceInfo> services) {
super(message, services);
+ this.ignoreForInternalRedeploy = false;
}
@Override
@@ -32,4 +38,25 @@ public class VespaRestartAction extends VespaConfigChangeAction implements Confi
return new VespaRestartAction(newMessage, newServices);
}
+ @Override
+ public boolean ignoreForInternalRedeploy() {
+ return ignoreForInternalRedeploy;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ if (!super.equals(o)) return false;
+
+ VespaRestartAction that = (VespaRestartAction) o;
+ return ignoreForInternalRedeploy == that.ignoreForInternalRedeploy;
+ }
+
+ @Override
+ public int hashCode() {
+ int result = super.hashCode();
+ result = 31 * result + (ignoreForInternalRedeploy ? 1 : 0);
+ return result;
+ }
}