X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=system%2Fspring%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fsystem%2Fspring%2FSpringComponent.java;h=8d50bf280d53b6d09f562519cbecdc20c9526e11;hb=e73828b054b0734ddce0ff9194fca75ed3c98b7a;hp=0e54deaec72ff12b194348704632f9bb8fdf7c4e;hpb=b0e1c060d6207c0fc06e4673764a6980da775210;p=utils diff --git a/system/spring/src/main/java/org/wamblee/system/spring/SpringComponent.java b/system/spring/src/main/java/org/wamblee/system/spring/SpringComponent.java index 0e54deae..8d50bf28 100644 --- a/system/spring/src/main/java/org/wamblee/system/spring/SpringComponent.java +++ b/system/spring/src/main/java/org/wamblee/system/spring/SpringComponent.java @@ -25,10 +25,10 @@ import org.springframework.beans.factory.support.RootBeanDefinition; import org.springframework.context.support.AbstractApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import org.springframework.context.support.GenericApplicationContext; -import org.wamblee.system.AbstractComponent; -import org.wamblee.system.ProvidedInterface; -import org.wamblee.system.RequiredInterface; -import org.wamblee.system.SystemAssemblyException; +import org.wamblee.system.core.AbstractComponent; +import org.wamblee.system.core.ProvidedInterface; +import org.wamblee.system.core.RequiredInterface; +import org.wamblee.system.core.SystemAssemblyException; /** * Represents a system configured based on spring. The spring config files that @@ -135,7 +135,7 @@ public class SpringComponent extends AbstractComponent { throw new IllegalArgumentException(getQualifiedName() + ": service '" + name + "' is null"); } - addService(_provided.get(name), svc); + addInterface(_provided.get(name), svc); } } @@ -148,7 +148,7 @@ public class SpringComponent extends AbstractComponent { private void registerRequiredServices() { // Register required services in a parent context - for (RequiredInterface required: getRequiredServices()) { + for (RequiredInterface required: getRequiredInterfaces()) { String beanName = _required.get(required); ConstructorArgumentValues cargs = new ConstructorArgumentValues(); cargs.addGenericArgumentValue(required.getName()); @@ -162,5 +162,8 @@ public class SpringComponent extends AbstractComponent { @Override protected void doStop() { _context.close(); + for (ProvidedInterface provided: getProvidedInterfaces()) { + removeInterface(provided); + } } }