{
String configurationFactoryClazz = e.getAttributeValue("configuration-factory");
ConfigurationFactory cf = configurationFactoryClazz != null ?
(ConfigurationFactory) newInstance(configurationFactoryClazz) : defaultConfigurationFactory;
Configuration cfg = cf.getConfiguration(e);
String merge = e.getAttributeValue("merge-configuration");
if (merge != null) {
StringTokenizer st = new StringTokenizer(merge, ", ");
while (st.hasMoreElements()) {
try {
Configuration c = QConfig.getConfiguration(st.nextToken());
for (String k : c.keySet()) {
if (cfg.get(k, null) == null) {
String[] v = c.getAll(k);
switch (v.length) {
case 0:
break;
case 1:
cfg.put(k, v[0]);