X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=system%2Fgeneral%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fsystem%2FCompositeSystem.java;h=50554d7f19f21b7c9c5210446151bed5704bdaa4;hb=b6364aebdb15bb0648e8db2030d8ad793e209af6;hp=f3b1bf752c08f0cbb8bdf2f3cb6ff2afc811a40f;hpb=35b19fe3a3158e865125153d53cd7d106ab2fae4;p=utils diff --git a/system/general/src/main/java/org/wamblee/system/CompositeSystem.java b/system/general/src/main/java/org/wamblee/system/CompositeSystem.java index f3b1bf75..50554d7f 100644 --- a/system/general/src/main/java/org/wamblee/system/CompositeSystem.java +++ b/system/general/src/main/java/org/wamblee/system/CompositeSystem.java @@ -21,13 +21,14 @@ public class CompositeSystem extends AbstractSubSystem { /** * Construcst the composite system. * @param aName Name of the system. + * @param aRegistry Service registry. * @param aSystems Subsystems. * @param aProvided Provided services of the system. * @param aRequired Required services by the system. */ - public CompositeSystem(String aName, SubSystem[] aSystems, + public CompositeSystem(String aName, ServiceRegistry aRegistry, SubSystem[] aSystems, ServiceDescriptor[] aProvided, ServiceDescriptor[] aRequired) { - super(aName, aProvided, aRequired); + super(aName, aRegistry, aProvided, aRequired); _systems = aSystems; validate(); } @@ -78,14 +79,19 @@ public class CompositeSystem extends AbstractSubSystem { } @Override - protected void doInitialize(String aContext, Service[] aRequiredServices) { - List descriptors = new ArrayList(); + protected void doStart(String aContext, Service[] aRequiredServices) { + List descriptors = new ArrayList(); for (Service service : aRequiredServices) { descriptors.add(service.getDescriptor()); } - SystemAssembler assembler = new SystemAssembler(getName(), _systems, - descriptors.toArray(new ServiceDescriptor[0])); - assembler.start(aRequiredServices); + SystemAssembler assembler = new SystemAssembler(aContext + "." + getName(), _systems, + descriptors.toArray(new ProvidedServiceDescriptor[0])); + assembler.start(getRegistry(), aRequiredServices); + } + + @Override + protected void doStop() { + // Empty. } private void info(String aMsg) {