public boolean handle()

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;
    }