in src/main/java/org/apache/sling/installer/factory/model/impl/APIRegionsExtensionHandler.java [47:64]
public boolean handle(ExtensionHandlerContext context, Extension extension, Feature feature) throws Exception {
if (!extension.getName().equals(ApiRegions.EXTENSION_NAME) ||
extension.getType() != ExtensionType.JSON) {
return false;
}
final ApiRegions regions = ApiRegions.parse(extension.getJSONStructure().asJsonArray());
final String configPid = REGION_FACTORY_PID.concat(feature.getId().toMvnName().replace('-', '_'));
final Dictionary<String, Object> props = new Hashtable<>();
props.put(PROP_idbsnver, convert(LauncherProperties.getBundleIDtoBSNandVersionMap(feature, context.getArtifactProvider())));
props.put(PROP_bundleFeatures, convert(LauncherProperties.getBundleIDtoFeaturesMap(feature)));
props.put(PROP_featureRegions, convert(LauncherProperties.getFeatureIDtoRegionsMap(regions)));
props.put(PROP_regionPackage, convert(LauncherProperties.getRegionNametoPackagesMap(regions)));
context.addConfiguration(null, configPid, props);
return true;
}