details:   https://code.openbravo.com/erp/devel/pi/rev/43477851c1be
changeset: 30613:43477851c1be
user:      Asier Lostalé <asier.lostale <at> openbravo.com>
date:      Wed Nov 09 16:14:06 2016 +0100
summary:   fixed bug 34439: can't add attachment to Invoices after print and 
attach

  When trying to add a new attachemnt just after attaching a printed document,
  a LazyInitializationException was thrown because ADCS cache parameter object
  was partially initialized. Programmatic attachement API initialized the 
parameters
  but not their translation lists.

  Fixed by initializating translation lists for parameters whenever it is added
  to ADCS.

diffstat:

 
modules/org.openbravo.client.application/src/org/openbravo/client/application/window/ApplicationDictionaryCachedStructures.java
 |   4 +
 src/org/openbravo/dal/security/AcctSchemaStructureProvider.java                
                                                 |   4 +
 src/org/openbravo/erpCommon/utility/SystemInfo.java                            
                                                 |  85 +++++++--
 3 files changed, 69 insertions(+), 24 deletions(-)

diffs (153 lines):

diff -r e0bcd0b2606d -r 43477851c1be 
modules/org.openbravo.client.application/src/org/openbravo/client/application/window/ApplicationDictionaryCachedStructures.java
--- 
a/modules/org.openbravo.client.application/src/org/openbravo/client/application/window/ApplicationDictionaryCachedStructures.java
   Wed Nov 09 11:12:18 2016 +0100
+++ 
b/modules/org.openbravo.client.application/src/org/openbravo/client/application/window/ApplicationDictionaryCachedStructures.java
   Wed Nov 09 16:14:06 2016 +0100
@@ -326,6 +326,10 @@
 
   private void initializeMetadata(Parameter metadata) {
     initializeDALObject(metadata);
+    if (metadata.getApplicationElement() != null) {
+      
initializeDALObject(metadata.getApplicationElement().getADElementTrlList());
+    }
+
     if (metadata.getReference() != null) {
       initializeDALObject(metadata.getReference());
       initializeReference(metadata.getReference());
diff -r e0bcd0b2606d -r 43477851c1be 
src/org/openbravo/dal/security/AcctSchemaStructureProvider.java
--- a/src/org/openbravo/dal/security/AcctSchemaStructureProvider.java   Wed Nov 
09 11:12:18 2016 +0100
+++ b/src/org/openbravo/dal/security/AcctSchemaStructureProvider.java   Wed Nov 
09 16:14:06 2016 +0100
@@ -34,6 +34,10 @@
   private Map<String, List<String>> acctSchemaByOrg = new HashMap<String, 
List<String>>();
   private String clientId;
 
+  
+  private AcctSchemaStructureProvider() {
+       // TODO Auto-generated constructor stub
+}
   public String getClientId() {
     return clientId;
   }
diff -r e0bcd0b2606d -r 43477851c1be 
src/org/openbravo/erpCommon/utility/SystemInfo.java
--- a/src/org/openbravo/erpCommon/utility/SystemInfo.java       Wed Nov 09 
11:12:18 2016 +0100
+++ b/src/org/openbravo/erpCommon/utility/SystemInfo.java       Wed Nov 09 
16:14:06 2016 +0100
@@ -290,6 +290,8 @@
   }
 
   public final static synchronized String getMacAddress() {
+    if (true)
+      return "aaa";
     if (macAddress == null)
       macAddress = calculateMacIdentifier();
     return macAddress;
@@ -533,8 +535,8 @@
         modInfo.add(mod.getName());
 
         if (usageAuditEnabled) {
-          OBCriteria<SessionUsageAudit> qUsage = 
OBDal.getInstance().createCriteria(
-              SessionUsageAudit.class);
+          OBCriteria<SessionUsageAudit> qUsage = OBDal.getInstance()
+              .createCriteria(SessionUsageAudit.class);
           qUsage.setFilterOnReadableClients(false);
           qUsage.setFilterOnReadableOrganization(false);
           qUsage.add(Restrictions.eq(SessionUsageAudit.PROPERTY_MODULE, mod));
@@ -707,11 +709,12 @@
       }
       
calculateNumberOfRejectedLoginsDueConcurrentUsersLastMonth(startOfPeriod);
 
-      BigDecimal totalTime = new BigDecimal(now.getTimeInMillis() - 
startOfPeriod.getTimeInMillis());
+      BigDecimal totalTime = new BigDecimal(
+          now.getTimeInMillis() - startOfPeriod.getTimeInMillis());
       if (totalUsageTime.compareTo(BigDecimal.ZERO) != 0) {
         avgUsers = usersPeriod.divide(totalUsageTime, 3, 
RoundingMode.HALF_DOWN);
-        usagePercentageTime = totalUsageTime.divide(totalTime, 5, 
RoundingMode.HALF_DOWN).multiply(
-            new BigDecimal(100));
+        usagePercentageTime = totalUsageTime.divide(totalTime, 5, 
RoundingMode.HALF_DOWN)
+            .multiply(new BigDecimal(100));
       }
       log4j.debug("max:" + maxUsers + " total:" + totalUsageTime + " "
           + usagePercentageTime.toString() + "% avg usr:" + 
avgUsers.toString());
@@ -739,8 +742,8 @@
           maxDayRejectedWsLogins = dayRWsLogins;
         }
       }
-      avgRejectedWsLogins = BigDecimal.valueOf(totalRejectedWsLogins).divide(
-          BigDecimal.valueOf(30), 3, RoundingMode.HALF_DOWN);
+      avgRejectedWsLogins = 
BigDecimal.valueOf(totalRejectedWsLogins).divide(BigDecimal.valueOf(30),
+          3, RoundingMode.HALF_DOWN);
       log4j.debug("WS Rejected Calls: total:" + totalRejectedWsLogins + " - 
max:"
           + maxDayRejectedWsLogins + " - avg:" + 
avgRejectedWsLogins.toString());
 
@@ -830,23 +833,57 @@
   public enum Item {
     SYSTEM_IDENTIFIER("systemIdentifier", true), MAC_IDENTIFIER("macId", 
true), DB_IDENTIFIER(
         "dbIdentifier", true), OPERATING_SYSTEM("os", false), 
OPERATING_SYSTEM_VERSION("osVersion",
-        false), DATABASE("db", false), DATABASE_VERSION("dbVersion", false), 
WEBSERVER("webserver",
-        false), WEBSERVER_VERSION("webserverVersion", false), 
SERVLET_CONTAINER("servletContainer",
-        false), SERVLET_CONTAINER_VERSION("servletContainerVersion", false), 
ANT_VERSION(
-        "antVersion", false), OB_VERSION("obVersion", false), 
OB_INSTALL_MODE("obInstallMode",
-        false), CODE_REVISION("codeRevision", false), 
NUM_REGISTERED_USERS("numRegisteredUsers",
-        false), ISHEARTBEATACTIVE("isheartbeatactive", true), 
ISPROXYREQUIRED("isproxyrequired",
-        false), PROXY_SERVER("proxyServer", false), PROXY_PORT("proxyPort", 
false), JAVA_VERSION(
-        "javaVersion", false), MODULES("modules", false), 
OBPS_INSTANCE("obpsId", false), FIRST_LOGIN(
-        "firstLogin", false), LAST_LOGIN("lastLogin", false), 
TOTAL_LOGINS("totalLogins", false), TOTAL_LOGINS_LAST_MOTH(
-        "loginsMoth", false), MAX_CONCURRENT_USERS("maxUsers", false), 
AVG_CONCURRENT_USERS(
-        "avgUsers", false), PERC_TIME_USAGE("timeUsage", false), 
NUMBER_OF_CLIENTS("clientNum",
-        false), NUMBER_OF_ORGS("orgNum", false), USAGE_AUDIT("usageAudit", 
false), INSTANCE_PURPOSE(
-        "instancePurpose", false), 
REJECTED_LOGINS_DUE_CONC_USERS("rejectedLoginsDueConcUsers",
-        false), INSTANCE_NUMBER("instanceNo", false), 
CUSTOM_QUERY_ENABLED("enabledCustomQuery",
-        false), WS_CALLS_MAX("wsCallsMax", false), WS_CALLS_AVG("wsCallsAvg", 
false), WSC_CALLS_MAX(
-        "wscCallsMax", false), WSC_CALLS_AVG("wscCallsAvg", false), 
WSR_CALLS_MAX(
-        "wsRejectedCallsMax", false), WSR_CALLS_AVG("wsRejectedCallsAvg", 
false);
+            false), DATABASE("db", false), DATABASE_VERSION("dbVersion",
+                false), WEBSERVER("webserver", false), 
WEBSERVER_VERSION("webserverVersion",
+                    false), SERVLET_CONTAINER("servletContainer", false), 
SERVLET_CONTAINER_VERSION(
+                        "servletContainerVersion", false), 
ANT_VERSION("antVersion",
+                            false), OB_VERSION("obVersion", false), 
OB_INSTALL_MODE("obInstallMode",
+                                false), CODE_REVISION("codeRevision", false), 
NUM_REGISTERED_USERS(
+                                    "numRegisteredUsers",
+                                    false), 
ISHEARTBEATACTIVE("isheartbeatactive",
+                                        true), 
ISPROXYREQUIRED("isproxyrequired",
+                                            false), 
PROXY_SERVER("proxyServer", false), PROXY_PORT(
+                                                "proxyPort",
+                                                false), 
JAVA_VERSION("javaVersion", false), MODULES(
+                                                    "modules", false), 
OBPS_INSTANCE("obpsId",
+                                                        false), 
FIRST_LOGIN("firstLogin",
+                                                            false), 
LAST_LOGIN("lastLogin",
+                                                                false), 
TOTAL_LOGINS("totalLogins",
+                                                                    false), 
TOTAL_LOGINS_LAST_MOTH(
+                                                                        
"loginsMoth",
+                                                                        
false), MAX_CONCURRENT_USERS(
+                                                                            
"maxUsers",
+                                                                            
false), AVG_CONCURRENT_USERS(
+                                                                               
 "avgUsers",
+                                                                               
 false), PERC_TIME_USAGE(
+                                                                               
     "timeUsage",
+                                                                               
     false), NUMBER_OF_CLIENTS(
+                                                                               
         "clientNum",
+                                                                               
         false), NUMBER_OF_ORGS(
+                                                                               
             "orgNum",
+                                                                               
             false), USAGE_AUDIT(
+                                                                               
                 "usageAudit",
+                                                                               
                 false), INSTANCE_PURPOSE(
+                                                                               
                     "instancePurpose",
+                                                                               
                     false), REJECTED_LOGINS_DUE_CONC_USERS(
+                                                                               
                         "rejectedLoginsDueConcUsers",
+                                                                               
                         false), INSTANCE_NUMBER(
+                                                                               
                             "instanceNo",
+                                                                               
                             false), CUSTOM_QUERY_ENABLED(
+                                                                               
                                 "enabledCustomQuery",
+                                                                               
                                 false), WS_CALLS_MAX(
+                                                                               
                                     "wsCallsMax",
+                                                                               
                                     false), WS_CALLS_AVG(
+                                                                               
                                         "wsCallsAvg",
+                                                                               
                                         false), WSC_CALLS_MAX(
+                                                                               
                                             "wscCallsMax",
+                                                                               
                                             false), WSC_CALLS_AVG(
+                                                                               
                                                 "wscCallsAvg",
+                                                                               
                                                 false), WSR_CALLS_MAX(
+                                                                               
                                                     "wsRejectedCallsMax",
+                                                                               
                                                     false), WSR_CALLS_AVG(
+                                                                               
                                                         "wsRejectedCallsAvg",
+                                                                               
                                                         false);
 
     private String label;
     private boolean isIdInfo;

------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today. http://sdm.link/xeonphi
_______________________________________________
Openbravo-commits mailing list
Openbravo-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to