X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fconfig%2Fconfig-manager%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fconfig%2Fmanager%2Fimpl%2FAbstractMockedModule.java;h=a6e24e9a495fe0df079952144ee440e02732cea0;hp=87d6e8b698e6d44795e0850380a15f4924bbf72e;hb=d840c921a370f0704ba2d68faf4cfffda08c4440;hpb=0641db636be750bf98e85c702c4948c7c835b9b6 diff --git a/opendaylight/config/config-manager/src/test/java/org/opendaylight/controller/config/manager/impl/AbstractMockedModule.java b/opendaylight/config/config-manager/src/test/java/org/opendaylight/controller/config/manager/impl/AbstractMockedModule.java index 87d6e8b698..a6e24e9a49 100644 --- a/opendaylight/config/config-manager/src/test/java/org/opendaylight/controller/config/manager/impl/AbstractMockedModule.java +++ b/opendaylight/config/config-manager/src/test/java/org/opendaylight/controller/config/manager/impl/AbstractMockedModule.java @@ -14,15 +14,27 @@ import org.opendaylight.controller.config.spi.Module; public abstract class AbstractMockedModule implements Module { protected final AutoCloseable instance; + private final ModuleIdentifier id; - public AbstractMockedModule() throws Exception { - instance = prepareMockedInstance(); + protected abstract AutoCloseable prepareMockedInstance() throws Exception; + + public AbstractMockedModule(DynamicMBeanWithInstance old, ModuleIdentifier id) { + if(old!=null) + instance = old.getInstance(); + else + try { + instance = prepareMockedInstance(); + } catch (Exception e) { + throw new RuntimeException(e); + } + + this.id = id==null ? new ModuleIdentifier(getClass().getCanonicalName(), "mock") : id; } - protected abstract AutoCloseable prepareMockedInstance() throws Exception; - public AbstractMockedModule(DynamicMBeanWithInstance old) { - instance = old.getInstance(); + @Override + public boolean canReuse(Module oldModule) { + return instance!=null; } @Override @@ -34,5 +46,9 @@ public abstract class AbstractMockedModule implements Module { return instance; } + @Override + public ModuleIdentifier getIdentifier() { + return id; + } }