git://wamblee.org
/
xmlrouter
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
checking non-null in compositeconfig.
[xmlrouter]
/
impl
/
src
/
main
/
java
/
org
/
wamblee
/
xmlrouter
/
impl
/
XMLRouterConfigService.java
diff --git
a/impl/src/main/java/org/wamblee/xmlrouter/impl/XMLRouterConfigService.java
b/impl/src/main/java/org/wamblee/xmlrouter/impl/XMLRouterConfigService.java
index 230a6dcf6d8bfc06e77efcca22dff88374833808..203e56fd5d0e1632cf65ba6b5ec40da1853541fb 100644
(file)
--- a/
impl/src/main/java/org/wamblee/xmlrouter/impl/XMLRouterConfigService.java
+++ b/
impl/src/main/java/org/wamblee/xmlrouter/impl/XMLRouterConfigService.java
@@
-22,6
+22,9
@@
import org.wamblee.xmlrouter.config.Config;
import org.wamblee.xmlrouter.config.RouterConfig;
import org.wamblee.xmlrouter.config.RouterConfigService;
import org.wamblee.xmlrouter.config.RouterConfig;
import org.wamblee.xmlrouter.config.RouterConfigService;
+// TODO pass unique id of config service in the constructor to allow multiple instances with
+// unique ids (ServiceFactory)
+
/**
* Router configuration service providing an atomic configuration API for the
* XML router.
/**
* Router configuration service providing an atomic configuration API for the
* XML router.
@@
-37,27
+40,26
@@
public class XMLRouterConfigService implements RouterConfigService {
public XMLRouterConfigService(XMLRouterConfiguration aConfig) {
sequence = new AtomicLong(1L);
config = aConfig;
public XMLRouterConfigService(XMLRouterConfiguration aConfig) {
sequence = new AtomicLong(1L);
config = aConfig;
- routerConfigs = new ConfigImpl<RouterConfig>(
sequence
) {
- public RouterConfig wrap(
Id<RouterConfig> aId
, RouterConfig aT) {
+ routerConfigs = new ConfigImpl<RouterConfig>(
new Id<Config>("config")
) {
+ public RouterConfig wrap(
String aPrefix
, RouterConfig aT) {
return aT;
}
};
}
@Override
return aT;
}
};
}
@Override
- public RouterConfig emptyConfig() {
- return new SingleRouterConfig(sequence);
+ public RouterConfig emptyConfig(String aId) {
+ // TODO check AP{ impacts.
+ return new SingleRouterConfig(new Id<RouterConfig>(aId));
}
@Override
}
@Override
- public Id<RouterConfig> apply(RouterConfig aConfig,
- Id<RouterConfig> aOldConfig) {
+ public void apply(RouterConfig aConfig, Id<RouterConfig> aOldConfig) {
if (aOldConfig != null) {
routerConfigs.remove(aOldConfig);
}
if (aOldConfig != null) {
routerConfigs.remove(aOldConfig);
}
-
Id<RouterConfig> id =
routerConfigs.add(aConfig);
+ routerConfigs.add(aConfig);
update();
update();
- return id;
}
@Override
}
@Override
@@
-68,7
+70,7
@@
public class XMLRouterConfigService implements RouterConfigService {
private void update() {
ExtendedRouterConfig newconfig = new CompositeRouterConfig(
private void update() {
ExtendedRouterConfig newconfig = new CompositeRouterConfig(
-
routerConfigs.map()
.values());
+
new Id<RouterConfig>("routerconfig"), routerConfigs
.values());
config.setRouterConfig(newconfig);
}
config.setRouterConfig(newconfig);
}