[jboss-svn-commits] JBL Code SVN: r26808 - in labs/jbossrules/trunk: drools-repository/src/main/java/org/drools/repository and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Jun 3 05:20:33 EDT 2009
Author: jervisliu
Date: 2009-06-03 05:20:32 -0400 (Wed, 03 Jun 2009)
New Revision: 26808
Modified:
labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/files/FileManagerUtils.java
labs/jbossrules/trunk/drools-repository/src/main/java/org/drools/repository/RulesRepository.java
labs/jbossrules/trunk/drools-repository/src/main/java/org/drools/repository/VersionableItem.java
Log:
Better handling of InvalidItemStateException for concurrent modification. https://jira.jboss.org/jira/browse/GUVNOR-324, https://jira.jboss.org/jira/browse/GUVNOR-325
Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/files/FileManagerUtils.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/files/FileManagerUtils.java 2009-06-02 17:25:28 UTC (rev 26807)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/files/FileManagerUtils.java 2009-06-03 09:20:32 UTC (rev 26808)
@@ -272,7 +272,7 @@
@Restrict("#{identity.loggedIn}")
public void importPackageToRepository(byte[] data,
boolean importAsNew) {
-
+ try {
repository.importPackageToRepository( data,
importAsNew );
@@ -281,7 +281,7 @@
//This section checks if the repository contains drools v4
//ruleflows that need to be migrated to drools v5
//
- try {
+
if ( MigrateRepository.needsRuleflowMigration( repository ) ) {
MigrateRepository.migrateRuleflows( repository );
}
Modified: labs/jbossrules/trunk/drools-repository/src/main/java/org/drools/repository/RulesRepository.java
===================================================================
--- labs/jbossrules/trunk/drools-repository/src/main/java/org/drools/repository/RulesRepository.java 2009-06-02 17:25:28 UTC (rev 26807)
+++ labs/jbossrules/trunk/drools-repository/src/main/java/org/drools/repository/RulesRepository.java 2009-06-03 09:20:32 UTC (rev 26808)
@@ -1061,6 +1061,10 @@
public void save() {
try {
this.session.save();
+ } catch ( InvalidItemStateException e ) {
+ String message = "Your operation was failed because it conflicts with a change made through another user. Please try again.";
+ log.error( "Caught Exception", e );
+ throw new RulesRepositoryException( message, e );
} catch ( Exception e ) {
if ( e instanceof RuntimeException ) {
throw (RuntimeException) e;
Modified: labs/jbossrules/trunk/drools-repository/src/main/java/org/drools/repository/VersionableItem.java
===================================================================
--- labs/jbossrules/trunk/drools-repository/src/main/java/org/drools/repository/VersionableItem.java 2009-06-02 17:25:28 UTC (rev 26807)
+++ labs/jbossrules/trunk/drools-repository/src/main/java/org/drools/repository/VersionableItem.java 2009-06-03 09:20:32 UTC (rev 26808)
@@ -8,6 +8,7 @@
import java.util.List;
import java.util.Map;
+import javax.jcr.InvalidItemStateException;
import javax.jcr.Node;
import javax.jcr.PathNotFoundException;
import javax.jcr.Property;
@@ -504,6 +505,10 @@
}
throw new RulesRepositoryException( message,
e );
+ } catch ( InvalidItemStateException e ) {
+ String message = "Your operation was failed because it conflicts with a change made through another user. Please try again.";
+ log.error( "Caught Exception", e );
+ throw new RulesRepositoryException( message, e );
} catch ( Exception e ) {
log.error( "Caught Exception",
e );
More information about the jboss-svn-commits
mailing list