X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=system%2Fgeneral%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fsystem%2Fadapters%2FClassAdapter.java;h=ace1525dfd9b7c01ba03325b00943cc039b9c607;hb=92e23e5ecf9614f2ab770a8cdedc0b21ddf1e127;hp=0de8322de0c6b952123d9c95e69dac4bfb5f9021;hpb=7273d083a2f03cd3d2061d3c6628a46b679e718b;p=utils diff --git a/system/general/src/main/java/org/wamblee/system/adapters/ClassAdapter.java b/system/general/src/main/java/org/wamblee/system/adapters/ClassAdapter.java index 0de8322d..ace1525d 100644 --- a/system/general/src/main/java/org/wamblee/system/adapters/ClassAdapter.java +++ b/system/general/src/main/java/org/wamblee/system/adapters/ClassAdapter.java @@ -16,19 +16,23 @@ package org.wamblee.system.adapters; import org.wamblee.system.core.AbstractComponent; -import org.wamblee.system.core.Component; import org.wamblee.system.core.ProvidedInterface; import org.wamblee.system.core.RequiredInterface; import org.wamblee.system.core.Scope; +/** + * A Class Adapter adapts a given class to a Component. + * + * @author Erik Brakkee + */ public class ClassAdapter extends AbstractComponent { private ClassConfiguration _classConfig; public ClassAdapter(String aName, ClassConfiguration aClassConfig) { super(aName, - aClassConfig.getProvidedInterfaces(), - aClassConfig.getRequiredInterface()); + aClassConfig.getProvidedInterfaces().toArray(new ProvidedInterface[0]), + aClassConfig.getRequiredInterfaces().toArray(new RequiredInterface[0])); _classConfig = aClassConfig; } @@ -36,6 +40,7 @@ public class ClassAdapter extends AbstractComponent { protected Object doStart(Scope aScope) { Object obj = _classConfig.create(aScope); + _classConfig.inject(aScope, obj); for (ProvidedInterface provided: getProvidedInterfaces()) { addInterface(provided, obj, aScope);