Scarab commit: svn commit: r11097 - branches/release/1.0.22/src/java/org/tigris/scarab: actions om
[email protected] Thu, 12 Apr 2012 09:03:02 -0700 (PDT)
| Newsgroups | gmane.comp.java.scarab.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: mcoss
Date: 2012-04-12 09:03:01-0700
New Revision: 11097
Modified:
branches/release/1.0.22/src/java/org/tigris/scarab/actions/ModifyModule.java
branches/release/1.0.22/src/java/org/tigris/scarab/om/ScarabModule.java
Log:
FIX - Runtime exception on creation of a duplicated module (for same parent) is caught and localized error message from nested ScarabException is shown to user.
Modified: branches/release/1.0.22/src/java/org/tigris/scarab/actions/ModifyModule.java
Url: http://scarab.tigris.org/source/browse/scarab/branches/release/1.0.22/src/java/org/tigris/scarab/actions/ModifyModule.java?view=diff&pathrev=11097&r1=11096&r2=11097
==============================================================================
--- branches/release/1.0.22/src/java/org/tigris/scarab/actions/ModifyModule.java (original)
+++ branches/release/1.0.22/src/java/org/tigris/scarab/actions/ModifyModule.java 2012-04-12 09:03:01-0700
@@ -70,6 +70,7 @@
import org.tigris.scarab.tools.ScarabRequestTool;
import org.tigris.scarab.tools.localization.L10NKeySet;
import org.tigris.scarab.util.Log;
+import org.tigris.scarab.util.ScarabRuntimeException;
/**
* This class is responsible for creating / updating Scarab Modules
@@ -252,6 +253,7 @@
IntakeTool intake = getIntakeTool(context);
ScarabRequestTool scarabR = getScarabRequestTool(context);
+ ScarabLocalizationTool l10n = getLocalizationTool(context);
if (intake.isAllValid())
{
@@ -274,16 +276,28 @@
}
else
{
- me.setOwnerId(user.getUserId());
- me.save();
-
- updateModuleParameters(data, me);
-
- data.setACL(((ScarabUser)data.getUser()).getACL());
- data.save();
-
- scarabR.setConfirmMessage(L10NKeySet.NewModuleCreated);
- intake.remove(moduleGroup);
+ try{
+ me.setOwnerId(user.getUserId());
+ me.save();
+
+ updateModuleParameters(data, me);
+
+ data.setACL(((ScarabUser)data.getUser()).getACL());
+ data.save();
+
+ scarabR.setConfirmMessage(L10NKeySet.NewModuleCreated);
+ intake.remove(moduleGroup);
+ }
+ catch(Exception e){
+ if(e instanceof ScarabRuntimeException){
+ scarabR.setAlertMessage(((ScarabRuntimeException)e).getMessage(l10n));
+ setTarget(data, template);
+ return;
+ }
+ else{
+ throw e; // TODO: don't knwo what to do here.
+ }
+ }
}
}
else
Modified: branches/release/1.0.22/src/java/org/tigris/scarab/om/ScarabModule.java
Url: http://scarab.tigris.org/source/browse/scarab/branches/release/1.0.22/src/java/org/tigris/scarab/om/ScarabModule.java?view=diff&pathrev=11097&r1=11096&r2=11097
==============================================================================
--- branches/release/1.0.22/src/java/org/tigris/scarab/om/ScarabModule.java (original)
+++ branches/release/1.0.22/src/java/org/tigris/scarab/om/ScarabModule.java 2012-04-12 09:03:01-0700
@@ -79,6 +79,7 @@
import org.tigris.scarab.om.ScarabUserManager;
import org.tigris.scarab.tools.localization.L10NKey;
import org.tigris.scarab.tools.localization.L10NKeySet;
+import org.tigris.scarab.tools.localization.Localizable;
import org.tigris.scarab.util.ScarabConstants;
import org.tigris.scarab.util.ScarabException;
import org.tigris.scarab.util.ScarabPaginatedList;
@@ -735,7 +736,7 @@
// a way to satisfy method signature regarding "throws" for Torque class and Group class.
// that is hide it all by throwing a RuntimeException.
// usuages of this method must be careful of this!
- throw new ScarabRuntimeException(new L10NKey("ScarabModule.save TorqueException <localize me>"),e); //EXCEPTION
+ throw new ScarabRuntimeException((Localizable)null,e); //EXCEPTION
}
}
@@ -776,7 +777,7 @@
new ScarabException(
L10NKeySet.ExceptionModuleAllreadyExists,
getRealName(),
- getParentId()));
+ getParent().getName()));
}
final String code = getCode();
------------------------------------------------------
http://scarab.tigris.org/ds/viewMessage.do?dsForumId=3577&dsMessageId=2947779