use of cloud.piranha.resource.shrinkwrap.ShrinkWrapResource in project piranha by piranhacloud.
the class MicroInnerDeployer method getWebApplication.
WebApplication getWebApplication(Archive<?> archive, ClassLoader newClassLoader) {
WebApplication webApplication = new DefaultWebApplication();
webApplication.setClassLoader(newClassLoader);
// The main resource representing the (war) archive itself.
webApplication.addResource(new ShrinkWrapResource(archive));
// Get the list of embedded archives containing a "/META-INF/resources" folder.
Node resourceNodes = archive.get("/META-INF/piranha/resource-libs");
if (resourceNodes != null) {
for (Node resourceNode : resourceNodes.getChildren()) {
ArchiveAsset resourceArchiveAsset = (ArchiveAsset) resourceNode.getAsset();
// Add the archive as a resource with the "/META-INF/resources" folder shifted to its root
webApplication.addResource(new ShrinkWrapResource("/META-INF/resources", resourceArchiveAsset.getArchive()));
}
}
return webApplication;
}
Aggregations