import java.util.Collection;
-import org.wamblee.xmlrouter.config.Config;
+import org.wamblee.xmlrouter.common.Id;
import org.wamblee.xmlrouter.config.DocumentType;
import org.wamblee.xmlrouter.config.Filter;
-import org.wamblee.xmlrouter.config.RouterConfig;
import org.wamblee.xmlrouter.config.Transformation;
public class CompositeRouterConfig implements ExtendedRouterConfig {
+ private static final Id<RouterConfig> ID = new Id<RouterConfig>(
+ "compositerouterconfig");
private CompositeConfig<DocumentType> documentTypes;
private CompositeConfig<Transformation> transformations;
private CompositeConfig<Filter> filters;
- public CompositeRouterConfig(Collection<RouterConfig> aConfigs) {
- documentTypes = new CompositeConfig<DocumentType>();
- transformations = new CompositeConfig<Transformation>();
- filters = new CompositeConfig<Filter>();
+ public CompositeRouterConfig(Id<RouterConfig> aId,
+ Collection<RouterConfig> aConfigs) {
+ documentTypes = new CompositeConfig<DocumentType>(DocumentType.class);
+ transformations = new CompositeConfig<Transformation>(
+ Transformation.class);
+ filters = new CompositeConfig<Filter>(Filter.class);
for (RouterConfig config : aConfigs) {
- documentTypes.add(config.documentTypeConfig());
- transformations.add(config.transformationConfig());
- filters.add(config.filterConfig());
+ documentTypes.addConfig(config.documentTypeConfig());
+ transformations.addConfig(config.transformationConfig());
+ filters.addConfig(config.filterConfig());
}
}
+ @Override
+ public Id<RouterConfig> getId() {
+ return ID;
+ }
+
@Override
public Config<DocumentType> documentTypeConfig() {
return documentTypes;