in atomos.substrate.config/src/main/java/org/apache/felix/atomos/substrate/config/ResourceConfig.java [61:117]
public void resourceConfig()
{
StringBuilder resourceConfig = new StringBuilder();
resourceConfig.append(START);
Set<String> allResourceBundles = new TreeSet<>();
Set<String> allResourcePatterns = new TreeSet<>();
Set<String> allResourcePackages = new TreeSet<>();
discoverResources(allResourceBundles, allResourcePatterns, allResourcePackages);
AtomicBoolean first = new AtomicBoolean();
if (!allResourceBundles.isEmpty())
{
resourceConfig.append(ind(1)).append(BUNDLES_START);
allResourceBundles.forEach(b -> {
if (!first.compareAndSet(false, true))
{
resourceConfig.append(COMMA);
}
resourceConfig.append(ind(2)).append(String.format(BUNDLE_NAME, b));
});
resourceConfig.append(NL).append(ind(1)).append(BUNDLES_END);
}
first.set(false);
if (!allResourcePatterns.isEmpty())
{
if (!allResourceBundles.isEmpty())
{
resourceConfig.append(COMMA);
}
resourceConfig.append(ind(1)).append(RESOURCES_START);
allResourcePatterns.forEach(p -> {
if (!first.compareAndSet(false, true))
{
resourceConfig.append(COMMA);
}
resourceConfig.append(ind(2)).append(String.format(RESOURCE_PATTERN, p));
});
resourceConfig.append(NL).append(ind(1)).append(RESOURCES_END);
}
resourceConfig.append(END);
System.out.println(resourceConfig);
if (!allResourcePackages.isEmpty())
{
StringBuilder initAtBuildTime = new StringBuilder(
"Args = --initialize-at-build-time=\\\n");
first.set(false);
allResourcePackages.forEach((p) -> {
if (!first.compareAndSet(false, true))
{
initAtBuildTime.append(COMMA_ESCAPE);
}
initAtBuildTime.append(p);
});
System.out.println();
System.out.println(initAtBuildTime);
}
}