]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - runtime/org.argeo.slc.repo/src/main/java/org/argeo/slc/repo/osgi/BndWrapper.java
Improve distribution
[gpl/argeo-slc.git] / runtime / org.argeo.slc.repo / src / main / java / org / argeo / slc / repo / osgi / BndWrapper.java
index 55ad84dfdcfc2cfc7de1d367b8c075b245722a7e..f1acf49e4d8c54fb2e10c3d953ab73db1455beba 100644 (file)
@@ -29,6 +29,8 @@ public class BndWrapper implements Constants, CategorizedNameVersion,
        private String version;
        private Properties bndProperties = new Properties();
 
+       private Boolean doNotModify = false;
+
        public void wrapJar(InputStream in, OutputStream out) {
                Builder b = new Builder();
                try {
@@ -72,19 +74,25 @@ public class BndWrapper implements Constants, CategorizedNameVersion,
                                versionToUse = new Version(version);
                        }
 
-                       Properties properties = new Properties();
-                       properties.putAll(bndProperties);
-                       properties.setProperty(BUNDLE_SYMBOLICNAME, name);
-                       properties.setProperty(BUNDLE_VERSION, versionToUse.toString());
+                       if (doNotModify) {
+                               jar.write(out);
+                       } else {
+
+                               Properties properties = new Properties();
+                               properties.putAll(bndProperties);
+                               properties.setProperty(BUNDLE_SYMBOLICNAME, name);
+                               properties.setProperty(BUNDLE_VERSION, versionToUse.toString());
 
-                       // b.addIncluded(jarFile);
-                       b.addClasspath(jar);
+                               // b.addIncluded(jarFile);
+                               b.addClasspath(jar);
 
-                       log.debug(properties);
-                       b.setProperties(properties);
+                               if (log.isDebugEnabled())
+                                       log.debug(properties);
+                               b.setProperties(properties);
 
-                       Jar newJar = b.build();
-                       newJar.write(out);
+                               Jar newJar = b.build();
+                               newJar.write(out);
+                       }
                } catch (Exception e) {
                        throw new SlcException("Cannot wrap jar", e);
                } finally {
@@ -162,4 +170,8 @@ public class BndWrapper implements Constants, CategorizedNameVersion,
                        return false;
        }
 
+       public void setDoNotModify(Boolean doNotModify) {
+               this.doNotModify = doNotModify;
+       }
+
 }