diff options
Diffstat (limited to 'node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/component/AdminComponent.java')
-rw-r--r-- | node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/component/AdminComponent.java | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/component/AdminComponent.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/component/AdminComponent.java new file mode 100644 index 00000000000..9bed492bd76 --- /dev/null +++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/component/AdminComponent.java @@ -0,0 +1,21 @@ +// Copyright 2018 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.vespa.hosted.node.admin.component; + +/** + * An AdminComponent cannot assume anything about the environment until enable() + * is called: Required YUM packages may not have been installed, services + * not started, etc. An enabled AdminComponent can be disabled to disengage from + * the environment. + */ +public interface AdminComponent { + /** + * Enable component. May be called more than once. + */ + void enable(); + + /** + * Disable component. May be called more than once. + * Must be compatible with component deconstruct(). + */ + void disable(); +} |