in src/main/java/org/apache/sling/installer/factories/configuration/impl/ConfigUtil.java [238:271]
public static Configuration getLegacyFactoryConfig(
final ConfigurationAdmin ca, final String factoryPid, final String aliasPid, final String pid)
throws IOException, InvalidSyntaxException {
final String configPid = (aliasPid != null ? aliasPid.substring(factoryPid.length() + 1) : pid);
Configuration result = null;
Configuration configs[] = null;
if (configPid != null) {
configs = ca.listConfigurations("(&("
+ ConfigurationAdmin.SERVICE_FACTORYPID + "=" + encode(factoryPid)
+ ")(" + Constants.SERVICE_PID + "=" + encode(configPid)
+ "))");
}
if (configs == null || configs.length == 0) {
configs = ca.listConfigurations("(&("
+ ConfigurationAdmin.SERVICE_FACTORYPID + "=" + encode(factoryPid)
+ ")(" + Constants.SERVICE_PID + "=" + encode(factoryPid + "." + configPid)
+ "))");
}
if (configs == null || configs.length == 0) {
// check for old style with alias pid
configs = ca.listConfigurations("(&(" + ConfigurationAdmin.SERVICE_FACTORYPID
+ "=" + factoryPid + ")(" + ALIAS_KEY + "=" + encode(configPid)
+ "))");
if (configs != null && configs.length > 0) {
result = configs[0];
}
} else {
result = configs[0];
}
return result;
}