This is an automated email from the ASF dual-hosted git repository.
jbonofre pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/karaf.git
The following commit(s) were added to refs/heads/master by this push:
new b214260 [KARAF-5203] Includes conditional bundles and configuration
files when creating a KAR
b214260 is described below
commit b2142603c5b6f8b8bc97b9c4d62d8396bd167b6a
Author: Jean-Baptiste Onofré <[email protected]>
AuthorDate: Wed Dec 13 14:58:04 2017 +0100
[KARAF-5203] Includes conditional bundles and configuration files when
creating a KAR
---
.../apache/karaf/kar/internal/KarServiceImpl.java | 20 ++++++++++++++------
1 file changed, 14 insertions(+), 6 deletions(-)
diff --git
a/kar/src/main/java/org/apache/karaf/kar/internal/KarServiceImpl.java
b/kar/src/main/java/org/apache/karaf/kar/internal/KarServiceImpl.java
index ec7e21d..f7b6758 100644
--- a/kar/src/main/java/org/apache/karaf/kar/internal/KarServiceImpl.java
+++ b/kar/src/main/java/org/apache/karaf/kar/internal/KarServiceImpl.java
@@ -45,12 +45,7 @@ import java.util.jar.JarEntry;
import java.util.jar.JarOutputStream;
import java.util.jar.Manifest;
-import org.apache.karaf.features.BundleInfo;
-import org.apache.karaf.features.ConfigFileInfo;
-import org.apache.karaf.features.Dependency;
-import org.apache.karaf.features.Feature;
-import org.apache.karaf.features.FeaturesService;
-import org.apache.karaf.features.Repository;
+import org.apache.karaf.features.*;
import org.apache.karaf.kar.KarService;
import org.apache.karaf.util.StreamUtils;
import org.apache.karaf.util.maven.Parser;
@@ -404,14 +399,27 @@ public class KarServiceImpl implements KarService {
private void copyFeatureToJar(JarOutputStream jos, Feature feature,
Map<URI, Integer> locationMap)
throws URISyntaxException {
+ // add bundles
for (BundleInfo bundleInfo : feature.getBundles()) {
URI location = new URI(bundleInfo.getLocation());
copyResourceToJar(jos, location, locationMap);
}
+ // add config files
for (ConfigFileInfo configFileInfo : feature.getConfigurationFiles()) {
URI location = new URI(configFileInfo.getLocation());
copyResourceToJar(jos, location, locationMap);
}
+ // add bundles and config files in conditionals
+ for (Conditional conditional : feature.getConditional()) {
+ for (BundleInfo bundleInfo : conditional.getBundles()) {
+ URI location = new URI(bundleInfo.getLocation());
+ copyResourceToJar(jos, location, locationMap);
+ }
+ for (ConfigFileInfo configFileInfo :
conditional.getConfigurationFiles()) {
+ URI location = new URI(configFileInfo.getLocation());
+ copyResourceToJar(jos, location, locationMap);
+ }
+ }
}
private void copyResourceToJar(JarOutputStream jos, URI location, Map<URI,
Integer> locationMap) {
--
To stop receiving notification emails like this one, please contact
['"[email protected]" <[email protected]>'].