rename subsystem to component.
[utils] / system / general / src / main / java / org / wamblee / system / CompositeSystem.java
index db94f738c7051b397f30ae380afbf1d22a085e9e..24547a9373078878880130b8463646312e87c682 100644 (file)
@@ -14,11 +14,11 @@ import sun.util.LocaleServiceProviderPool.LocalizedObjectGetter;
  *
  * @author Erik Brakkee
  */
-public class CompositeSystem extends AbstractSubSystem {
+public class CompositeSystem extends AbstractComponent {
 
        private static final Log LOG = LogFactory.getLog(CompositeSystem.class);
 
-       private SubSystem[] _systems;
+       private Component[] _systems;
 
        /**
         * Construcst the composite system. 
@@ -28,8 +28,8 @@ public class CompositeSystem extends AbstractSubSystem {
         * @param aProvided Provided services of the system. 
         * @param aRequired Required services by the system. 
         */
-       public CompositeSystem(String aName, ServiceRegistry aRegistry, SubSystem[] aSystems,
-                       ServiceDescriptor[] aProvided, ServiceDescriptor[] aRequired) {
+       public CompositeSystem(String aName, ServiceRegistry aRegistry, Component[] aSystems,
+                       InterfaceDescriptor[] aProvided, InterfaceDescriptor[] aRequired) {
                super(aName, aRegistry, aProvided, aRequired);
                _systems = aSystems;
                validate();
@@ -42,24 +42,24 @@ public class CompositeSystem extends AbstractSubSystem {
         * Also logs a warning in case of superfluous requirements.  
         */
        private void validate() {
-               List<ServiceDescriptor> provided = new ArrayList<ServiceDescriptor>();
-               for (SubSystem system : _systems) {
+               List<InterfaceDescriptor> provided = new ArrayList<InterfaceDescriptor>();
+               for (Component system : _systems) {
                        provided.addAll(Arrays.asList(system.getProvidedServices()));
                }
 
-               List<ServiceDescriptor> required = new ArrayList<ServiceDescriptor>();
-               for (SubSystem system : _systems) {
+               List<InterfaceDescriptor> required = new ArrayList<InterfaceDescriptor>();
+               for (Component system : _systems) {
                        required.addAll(Arrays.asList(system.getRequiredServices()));
                }
 
-               for (ServiceDescriptor service : getProvidedServices()) {
+               for (InterfaceDescriptor service : getProvidedServices()) {
                        if (!(provided.contains(service))) {
                                throw new SystemAssemblyException(getName() + ": Service '" + service
                                                + "' is not provided by any of the subsystems");
                        }
                }
 
-               for (ServiceDescriptor service : getRequiredServices()) {
+               for (InterfaceDescriptor service : getRequiredServices()) {
                        if (!(required.contains(service))) {
                                info("Service '"
                                                + service
@@ -67,27 +67,27 @@ public class CompositeSystem extends AbstractSubSystem {
                        }
                }
 
-               List<ServiceDescriptor> reallyRequired = new ArrayList<ServiceDescriptor>(
+               List<InterfaceDescriptor> reallyRequired = new ArrayList<InterfaceDescriptor>(
                                required);
-               for (ServiceDescriptor service : provided) {
+               for (InterfaceDescriptor service : provided) {
                        reallyRequired.remove(service); 
                }
-               for (ServiceDescriptor service: getRequiredServices()) { 
+               for (InterfaceDescriptor service: getRequiredServices()) { 
                        reallyRequired.remove(service); 
                }
-               for (ServiceDescriptor service: reallyRequired) { 
+               for (InterfaceDescriptor service: reallyRequired) { 
                        throw new SystemAssemblyException(getName() + ": " + "Service '" + service + "' is not provided internally and is not indicated as required for this sub system");
                }
        }
 
        @Override
        protected void doStart(String aContext, Service[] aRequiredServices) {
-               List<ProvidedServiceDescriptor> descriptors = new ArrayList<ProvidedServiceDescriptor>();
+               List<ProvidedInterfaceDescriptor> descriptors = new ArrayList<ProvidedInterfaceDescriptor>();
                for (Service service : aRequiredServices) {
                        descriptors.add(service.getDescriptor());
                }
                SystemAssembler assembler = new SystemAssembler(aContext + "." + getName(), _systems,
-                               descriptors.toArray(new ProvidedServiceDescriptor[0]));
+                               descriptors.toArray(new ProvidedInterfaceDescriptor[0]));
                assembler.start(getRegistry(), aRequiredServices);
        }