diff options
author | Jon Bratseth <bratseth@gmail.com> | 2020-12-02 07:53:44 +0100 |
---|---|---|
committer | Jon Bratseth <bratseth@gmail.com> | 2020-12-02 07:53:44 +0100 |
commit | d5982ee7479179b6754b1b9cd4cdbc8140c5e961 (patch) | |
tree | 721db18f73b48066dfe9ad4e18066ac2b7955b65 /config-lib | |
parent | 4cf13bc7db215e77f7688e429f700880c115fe76 (diff) |
Revert "Merge pull request #15581 from vespa-engine/revert-15578-bratseth/apply-on-restart-take-10"
This reverts commit 4cf13bc7db215e77f7688e429f700880c115fe76, reversing
changes made to e21f385bd4f21326608f3a69325df4e96d4a65e5.
Diffstat (limited to 'config-lib')
-rw-r--r-- | config-lib/abi-spec.json | 4 | ||||
-rw-r--r-- | config-lib/pom.xml | 6 | ||||
-rw-r--r-- | config-lib/src/main/java/com/yahoo/config/ConfigBuilder.java | 1 | ||||
-rw-r--r-- | config-lib/src/main/java/com/yahoo/config/ConfigInstance.java | 6 | ||||
-rw-r--r-- | config-lib/src/main/java/com/yahoo/config/Node.java | 4 |
5 files changed, 17 insertions, 4 deletions
diff --git a/config-lib/abi-spec.json b/config-lib/abi-spec.json index fa352d8f6bd..8a1cfa9834e 100644 --- a/config-lib/abi-spec.json +++ b/config-lib/abi-spec.json @@ -73,7 +73,9 @@ "public abstract boolean dispatchGetConfig(com.yahoo.config.ConfigInstance$Producer)", "public abstract java.lang.String getDefName()", "public abstract java.lang.String getDefNamespace()", - "public abstract java.lang.String getDefMd5()" + "public abstract java.lang.String getDefMd5()", + "public boolean getApplyOnRestart()", + "public void setApplyOnRestart(boolean)" ], "fields": [] }, diff --git a/config-lib/pom.xml b/config-lib/pom.xml index 1002d43bc37..90c61725466 100644 --- a/config-lib/pom.xml +++ b/config-lib/pom.xml @@ -26,6 +26,12 @@ <artifactId>annotations</artifactId> <version>${project.version}</version> </dependency> + <dependency> + <groupId>com.yahoo.vespa</groupId> + <artifactId>configgen</artifactId> + <version>${project.version}</version> + <scope>provided</scope> + </dependency> </dependencies> <build> <plugins> diff --git a/config-lib/src/main/java/com/yahoo/config/ConfigBuilder.java b/config-lib/src/main/java/com/yahoo/config/ConfigBuilder.java index e35e6916849..30bef223045 100644 --- a/config-lib/src/main/java/com/yahoo/config/ConfigBuilder.java +++ b/config-lib/src/main/java/com/yahoo/config/ConfigBuilder.java @@ -5,7 +5,6 @@ package com.yahoo.config; * Root interface for all config builders. * * @author gjoranv - * @since 5.1.6 */ public interface ConfigBuilder { } diff --git a/config-lib/src/main/java/com/yahoo/config/ConfigInstance.java b/config-lib/src/main/java/com/yahoo/config/ConfigInstance.java index 04405839a9b..113e622a503 100644 --- a/config-lib/src/main/java/com/yahoo/config/ConfigInstance.java +++ b/config-lib/src/main/java/com/yahoo/config/ConfigInstance.java @@ -17,6 +17,7 @@ public abstract class ConfigInstance extends InnerNode { /** * Dispatches a getConfig() call if this instance's producer is of the right type + * * @param producer a config producer * @return true if this instance's producer was the correct type, and hence a getConfig call was dispatched */ @@ -26,6 +27,11 @@ public abstract class ConfigInstance extends InnerNode { String getDefNamespace(); String getDefMd5(); + /** Returns true if this instance should be applied on restart, false if it should be applied immediately */ + default boolean getApplyOnRestart() { return false; } + + default void setApplyOnRestart(boolean applyOnRestart) { throw new java.lang.UnsupportedOperationException(); } + } public interface Producer {} diff --git a/config-lib/src/main/java/com/yahoo/config/Node.java b/config-lib/src/main/java/com/yahoo/config/Node.java index 8d16b9727c1..ed11bdc9891 100644 --- a/config-lib/src/main/java/com/yahoo/config/Node.java +++ b/config-lib/src/main/java/com/yahoo/config/Node.java @@ -5,7 +5,6 @@ package com.yahoo.config; * The Node class is superclass for all nodes in a {@link * ConfigInstance}. Important subclasses of this node are {@link * InnerNode} and {@link LeafNode}. - * */ public abstract class Node { @@ -13,7 +12,7 @@ public abstract class Node { * Postinitialize this node. Any node needing to process its values depending on the config * id should override this method. * - * @param configId the configId of the ConfigInstance that owns (or is) this node + * @param configId the configId of the ConfigInstance that owns (or is) this node */ public void postInitialize(String configId) { return; } @@ -26,4 +25,5 @@ public abstract class Node { protected Object clone() throws CloneNotSupportedException { return super.clone(); } + } |