]>
git.argeo.org Git - gpl/argeo-slc.git/blob - core/structure/StructureRegistry.java
1 package org
.argeo
.slc
.core
.structure
;
5 import org
.argeo
.slc
.core
.deploy
.DeployedSystem
;
7 /** Registry where the whole structure is stored. */
8 public interface StructureRegistry
<P
extends StructurePath
> {
9 /** Read mode: the structure is only read. */
10 public static String READ
= "READ";
11 /** All mode: everything is executed regardless of the active paths. */
12 public static String ALL
= "ALL";
13 /** Active mode: only the active paths are executed. */
14 public static String ACTIVE
= "STATUS_ACTIVE";
16 /** Adds an element to the registry. */
17 public void register(P path
, StructureElement element
);
19 /** Lists <b>all</b> registered elements. */
20 public List
<StructureElement
> listElements();
22 /** Lists <b>all</b> registered elements. */
23 public List
<P
> listPaths();
25 /** Gets a element based on its path. */
26 public <T
extends StructureElement
> T
getElement(P path
);
29 * Set the interpreter mode: read, all or active.
35 public void setMode(String mode
);
38 * Gets the current interpreter mode.
44 public String
getMode();
47 * Gets the list of active paths, which will be run if executed in
48 * <code>STATUS_ACTIVE</code> mode.
50 public List
<P
> getActivePaths();
53 * Sets the list of active path, which will be run if executed in
54 * <code>STATUS_ACTIVE</code> mode.
56 public void setActivePaths(List
<P
> activePaths
);