X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fxmlrouter%2Fimpl%2FXMLRouterConfigurationImpl.java;h=7c570ff23baaa723c4e0c105919f24751c19702c;hb=3b2c669b25bfcb5a3c3f06ff9180d85143bebb2a;hp=fe6d50773e7f4d9c5399f5b7abfe9b5d2e38a19e;hpb=13b475f8216ad5d74d64df4122ea6812554f7a14;p=xmlrouter diff --git a/impl/src/main/java/org/wamblee/xmlrouter/impl/XMLRouterConfigurationImpl.java b/impl/src/main/java/org/wamblee/xmlrouter/impl/XMLRouterConfigurationImpl.java index fe6d507..7c570ff 100644 --- a/impl/src/main/java/org/wamblee/xmlrouter/impl/XMLRouterConfigurationImpl.java +++ b/impl/src/main/java/org/wamblee/xmlrouter/impl/XMLRouterConfigurationImpl.java @@ -18,7 +18,8 @@ package org.wamblee.xmlrouter.impl; import java.util.ArrayList; import java.util.concurrent.locks.ReentrantReadWriteLock; -import org.wamblee.xmlrouter.config.RouterConfig; +import org.wamblee.general.Pair; +import org.wamblee.xmlrouter.common.Id; /** * Implements the XML Router configuration interface including the required @@ -39,33 +40,30 @@ public class XMLRouterConfigurationImpl implements XMLRouterConfiguration { public XMLRouterConfigurationImpl(ExtendedRouterConfig aConfig) { config = aConfig; transformations = new TransformationPaths(config.transformationConfig() - .map()); + .values()); } public XMLRouterConfigurationImpl() { - this(new CompositeRouterConfig(new ArrayList())); + this(new CompositeRouterConfig(new Id("routerconfig"), + new ArrayList())); } @Override - public void startPublishEvent() { + public Pair getConfig() { rlock.lock(); - } - - @Override - public void endPublishEvent() { - rlock.unlock(); - } - - @Override - public ExtendedRouterConfig getRouterConfig() { - return config; + try { + return new Pair(config, + transformations); + } finally { + rlock.unlock(); + } } @Override public void setRouterConfig(ExtendedRouterConfig aConfig) { TransformationPaths newTransformations = new TransformationPaths( - aConfig.transformationConfig().map()); + aConfig.transformationConfig().values()); wlock.lock(); try { @@ -75,9 +73,4 @@ public class XMLRouterConfigurationImpl implements XMLRouterConfiguration { wlock.unlock(); } } - - @Override - public TransformationPaths getTransformations() { - return transformations; - } }