details:   http://code.openbravo.com/erp/devel/pi/rev/46d873465c65
changeset: 3844:46d873465c65
user:      Asier Lostalé <asier.lostale <at> openbravo.com>
date:      Fri May 08 15:18:32 2009 +0200
summary:   fixed bug 0008968: Cannot package industry template
            check for core dependency instead of for its inclusion when 
validating templates

details:   http://code.openbravo.com/erp/devel/pi/rev/20d4702b0489
changeset: 3845:20d4702b0489
user:      Asier Lostalé <asier.lostale <at> openbravo.com>
date:      Fri May 08 15:23:22 2009 +0200
summary:   fixed bug 0008939: Null Pointer Exception at packaging a Industry 
template

diffstat:

 src/org/openbravo/erpCommon/modules/ExtractModule.java |  37 ++++++++++--------
 src/org/openbravo/service/system/ModuleValidator.java  |   5 +-
 2 files changed, 23 insertions(+), 19 deletions(-)

diffs (69 lines):

diff --git a/src/org/openbravo/erpCommon/modules/ExtractModule.java 
b/src/org/openbravo/erpCommon/modules/ExtractModule.java
--- a/src/org/openbravo/erpCommon/modules/ExtractModule.java
+++ b/src/org/openbravo/erpCommon/modules/ExtractModule.java
@@ -174,23 +174,28 @@
   private void extractPackage(String moduleID, ZipOutputStream obx) throws 
Exception {
     final ExtractModuleData modules[] = 
ExtractModuleData.selectContainedModules(pool, moduleID);
     for (int i = 0; i < modules.length; i++) {
-      obx.putNextEntry(new ZipEntry(modules[i].javapackage + "-" + 
modules[i].version + ".obx"));
-      final ByteArrayOutputStream ba = new ByteArrayOutputStream();
-      final ZipOutputStream moduleObx = new ZipOutputStream(ba);
-      final String moduleDirectory = modulesBaseDir + "/modules/" + 
modules[i].javapackage;
-      relativeDir = modulesBaseDir + File.separator + "modules" + 
File.separator;
-      log4j.info("Extracting module: " + modules[i].javapackage);
-      extractModule(modules[i].adModuleId, moduleDirectory, moduleObx);
-      if (modules[i].type.equals("P") || modules[i].type.equals("T")) {
-        // If it is Package or Template it can contain other modules
-        log4j.info(modules[i].javapackage + " is a package/template looking 
for inner modules...");
-        extractPackage(modules[i].adModuleId, moduleObx);
+      if (modules[i].adModuleId.equals("0")) {
+        log4j.warn("Core is included! It is not going to be packaged...");
+      } else {
+        obx.putNextEntry(new ZipEntry(modules[i].javapackage + "-" + 
modules[i].version + ".obx"));
+        final ByteArrayOutputStream ba = new ByteArrayOutputStream();
+        final ZipOutputStream moduleObx = new ZipOutputStream(ba);
+        final String moduleDirectory = modulesBaseDir + "/modules/" + 
modules[i].javapackage;
+        relativeDir = modulesBaseDir + File.separator + "modules" + 
File.separator;
+        log4j.info("Extracting module: " + modules[i].javapackage);
+        extractModule(modules[i].adModuleId, moduleDirectory, moduleObx);
+        if (modules[i].type.equals("P") || modules[i].type.equals("T")) {
+          // If it is Package or Template it can contain other modules
+          log4j
+              .info(modules[i].javapackage + " is a package/template looking 
for inner modules...");
+          extractPackage(modules[i].adModuleId, moduleObx);
+        }
+        moduleObx.close();
+        ba.flush();
+        obx.write(ba.toByteArray());
+
+        obx.closeEntry();
       }
-      moduleObx.close();
-      ba.flush();
-      obx.write(ba.toByteArray());
-
-      obx.closeEntry();
     }
   }
 
diff --git a/src/org/openbravo/service/system/ModuleValidator.java 
b/src/org/openbravo/service/system/ModuleValidator.java
--- a/src/org/openbravo/service/system/ModuleValidator.java
+++ b/src/org/openbravo/service/system/ModuleValidator.java
@@ -103,15 +103,14 @@
     if (module.getType().equals("T")) {
       boolean found = false;
       for (ModuleDependency md : module.getModuleDependencyList()) {
-        if (md.getDependentModule().getId().equals("0") && md.isIncluded()) {
+        if (md.getDependentModule().getId().equals("0") && !md.isIncluded()) {
           found = true;
           break;
         }
       }
       if (!found) {
         result.addError(SystemValidationType.MODULE_ERROR, "Module " + 
module.getName()
-            + " is an Industry Template must depend " + "on Core and the 
dependency relation "
-            + "must have isIncluded set to true");
+            + " is an Industry Template must depend on Core");
       }
     }
   }

------------------------------------------------------------------------------
The NEW KODAK i700 Series Scanners deliver under ANY circumstances! Your
production scanning environment may not be a perfect world - but thanks to
Kodak, there's a perfect scanner to get the job done! With the NEW KODAK i700
Series Scanner you'll get full speed at 300 dpi even with all image 
processing features enabled. http://p.sf.net/sfu/kodak-com
_______________________________________________
Openbravo-commits mailing list
Openbravo-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to