details: https://code.openbravo.com/erp/devel/pi/rev/788979b3e20e
changeset: 19665:788979b3e20e
user: Augusto Mauch <augusto.mauch <at> openbravo.com>
date: Wed Feb 13 13:02:57 2013 +0100
summary: Fixes issue 23060: Event handlers disabled when data is being
imported
When data is being imported there will be a register in the AD_Session_Status
table with the importing column set to true. In that case all event handlers
will
be disabled by means of making the EntityPersistenceEventObserver.isValidEvent
method return false.
diffstat:
modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/event/EntityPersistenceEventObserver.java
| 5 +++
src/org/openbravo/erpCommon/utility/Utility.java
| 15 ++++++++++
2 files changed, 20 insertions(+), 0 deletions(-)
diffs (59 lines):
diff -r 61bff1717ecf -r 788979b3e20e
modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/event/EntityPersistenceEventObserver.java
---
a/modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/event/EntityPersistenceEventObserver.java
Wed Feb 13 11:50:44 2013 +0100
+++
b/modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/event/EntityPersistenceEventObserver.java
Wed Feb 13 13:02:57 2013 +0100
@@ -19,6 +19,7 @@
package org.openbravo.client.kernel.event;
import org.openbravo.base.model.Entity;
+import org.openbravo.erpCommon.utility.Utility;
/**
* A base listener which can be extended to perform specific actions when
persisting entities.
@@ -45,6 +46,10 @@
* @see #getObservedEntities()
*/
protected boolean isValidEvent(EntityPersistenceEvent event) {
+ // Disable event handlers if data is being imported
+ if (Utility.isImporting()) {
+ return false;
+ }
final Entity targetEntity = event.getTargetInstance().getEntity();
for (Entity entity : getObservedEntities()) {
if (entity == targetEntity) {
diff -r 61bff1717ecf -r 788979b3e20e
src/org/openbravo/erpCommon/utility/Utility.java
--- a/src/org/openbravo/erpCommon/utility/Utility.java Wed Feb 13 11:50:44
2013 +0100
+++ b/src/org/openbravo/erpCommon/utility/Utility.java Wed Feb 13 13:02:57
2013 +0100
@@ -72,6 +72,7 @@
import org.openbravo.base.secureApp.VariablesSecureApp;
import org.openbravo.dal.core.OBContext;
import org.openbravo.dal.service.OBDal;
+import org.openbravo.dal.service.OBQuery;
import org.openbravo.data.FieldProvider;
import org.openbravo.data.Sqlc;
import org.openbravo.database.ConnectionProvider;
@@ -79,6 +80,7 @@
import org.openbravo.erpCommon.obps.ActivationKey;
import org.openbravo.erpCommon.obps.ActivationKey.LicenseClass;
import org.openbravo.erpCommon.reference.PInstanceProcessData;
+import org.openbravo.model.ad.access.SessionStatus;
import org.openbravo.model.ad.system.ClientInformation;
import org.openbravo.model.ad.system.SystemInformation;
import org.openbravo.model.ad.ui.Process;
@@ -2600,4 +2602,17 @@
OBContext.restorePreviousMode();
}
}
+
+ /**
+ * Checks if the database is being imported.
+ *
+ *
+ * @return true if data is being imported, false if not
+ */
+ public static boolean isImporting() {
+ OBQuery<SessionStatus> obq =
OBDal.getInstance().createQuery(SessionStatus.class,
+ " importing='Y'");
+ return (obq.count() > 0);
+ }
+
}
------------------------------------------------------------------------------
Free Next-Gen Firewall Hardware Offer
Buy your Sophos next-gen firewall before the end March 2013
and get the hardware for free! Learn more.
http://p.sf.net/sfu/sophos-d2d-feb
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits