in src/main/java/org/apache/sling/installer/factory/model/impl/FeatureModelInstallerPlugin.java [268:289]
private String getFeatureJSON(Feature feature) {
// assemble feature now
if (!feature.isAssembled()) {
final BuilderContext ctx = new BuilderContext(this.artifactManager.toFeatureProvider());
ctx.setArtifactProvider(this.artifactManager);
// Set all merge extensions here from the service registry?
feature = FeatureBuilder.assemble(feature, ctx);
}
FeatureBuilder.resolveVariables(feature, null);
String featureJson = null;
try (final StringWriter sw = new StringWriter()) {
FeatureJSONWriter.write(sw, feature);
featureJson = sw.toString();
} catch (final IOException ioe) {
logger.info("Unable to process feature model " + feature.getId().toMvnId(), ioe);
}
return featureJson;
}