X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fxmlrouter%2Fimpl%2FSingleRouterConfig.java;h=195f72da66295517bce3aec611c3fe05f3fd0cc8;hb=3b2c669b25bfcb5a3c3f06ff9180d85143bebb2a;hp=deb38f6656fcd39ea9f3bf37e4768b23a94431cb;hpb=d7938dd34e22ba8d34b4a89840c6efbb5d866380;p=xmlrouter diff --git a/impl/src/main/java/org/wamblee/xmlrouter/impl/SingleRouterConfig.java b/impl/src/main/java/org/wamblee/xmlrouter/impl/SingleRouterConfig.java index deb38f6..195f72d 100644 --- a/impl/src/main/java/org/wamblee/xmlrouter/impl/SingleRouterConfig.java +++ b/impl/src/main/java/org/wamblee/xmlrouter/impl/SingleRouterConfig.java @@ -16,14 +16,10 @@ package org.wamblee.xmlrouter.impl; import org.wamblee.xmlrouter.common.Id; -import org.wamblee.xmlrouter.config.Config; import org.wamblee.xmlrouter.config.DocumentType; import org.wamblee.xmlrouter.config.Filter; -import org.wamblee.xmlrouter.config.RouterConfig; import org.wamblee.xmlrouter.config.Transformation; -// TODO implement copying of routerconfig. - /** * Represents a single configuration set of a single configuration client of the * XML router. @@ -33,8 +29,8 @@ import org.wamblee.xmlrouter.config.Transformation; public class SingleRouterConfig implements ExtendedRouterConfig { public static final class DocumentConfig extends ConfigImpl { - public DocumentConfig(Id aId) { - super(aId); + public DocumentConfig(String aId) { + super(DocumentType.class, aId); } public DocumentConfig(DocumentConfig aConfig) { @@ -42,15 +38,15 @@ public class SingleRouterConfig implements ExtendedRouterConfig { } @Override - public DocumentType wrap(String aPrefix, DocumentType aT) { - return new RobustDocumentType(aPrefix, aT); + public DocumentType wrap(DocumentType aT) { + return new RobustDocumentType(aT); } } public static final class TransformationConfig extends ConfigImpl { - public TransformationConfig(Id aId) { - super(aId); + public TransformationConfig(String aId) { + super(Transformation.class, aId); } public TransformationConfig(TransformationConfig aConfig) { @@ -58,15 +54,14 @@ public class SingleRouterConfig implements ExtendedRouterConfig { } @Override - public Transformation wrap(String aPrefix, - Transformation aTransformation) { - return new RobustTransformation(aPrefix, aTransformation); + public Transformation wrap(Transformation aTransformation) { + return new RobustTransformation(aTransformation); } } public static final class FilterConfig extends ConfigImpl { - public FilterConfig(Id aId) { - super(aId); + public FilterConfig(String aId) { + super(Filter.class, aId); } public FilterConfig(FilterConfig aConfig) { @@ -74,12 +69,12 @@ public class SingleRouterConfig implements ExtendedRouterConfig { } @Override - public Filter wrap(String aPrefix, Filter aFilter) { - return new RobustFilter(aPrefix, aFilter); + public Filter wrap(Filter aFilter) { + return new RobustFilter("", aFilter); } } - private Id id; + private String prefix; private DocumentConfig documentTypes; private TransformationConfig transformations; @@ -88,20 +83,18 @@ public class SingleRouterConfig implements ExtendedRouterConfig { /** * Constructs a router configuration. * - * @param aId + * @param aPrefix * Unique id for this configuration. */ - public SingleRouterConfig(Id aId) { - id = aId; - documentTypes = new DocumentConfig(new Id(aId.getId() + - ".documenttypes")); - transformations = new TransformationConfig(new Id(aId.getId() + - ".transformations")); - filters = new FilterConfig(new Id(aId.getId() + ".filters")); + public SingleRouterConfig(String aPrefix) { + prefix = aPrefix; + documentTypes = new DocumentConfig(aPrefix + ".documenttypes"); + transformations = new TransformationConfig(aPrefix + ".transformations"); + filters = new FilterConfig(aPrefix + ".filters"); } public SingleRouterConfig(SingleRouterConfig aConfig) { - id = aConfig.id; + prefix = aConfig.prefix; documentTypes = new DocumentConfig(aConfig.documentTypes); transformations = new TransformationConfig(aConfig.transformations); filters = new FilterConfig(aConfig.filters); @@ -109,7 +102,11 @@ public class SingleRouterConfig implements ExtendedRouterConfig { @Override public Id getId() { - return id; + return new Id(prefix); + } + + public String getPrefix() { + return prefix; } @Override