summaryrefslogtreecommitdiff
path: root/src/main/java/com/c2kernel/lifecycle/instance/predefined/WriteViewpoint.java
diff options
context:
space:
mode:
authorAndrew Branson <andrew.branson@cern.ch>2014-10-03 17:30:41 +0200
committerAndrew Branson <andrew.branson@cern.ch>2014-10-03 17:30:41 +0200
commit275d0bbf555c8917be82ce4cc21eb4cabb00f4c5 (patch)
treeddcc6b14077d90d1b970b67829f07120547dbb62 /src/main/java/com/c2kernel/lifecycle/instance/predefined/WriteViewpoint.java
parenta139f95bfeca603333b8c0310ae09c6805e58584 (diff)
Huge exception overhaul: Merged ClusterStorageException with
PersistencyException. Replaced MembershipException with InvalidCollectionModification CORBA Exception. Made all predef steps throw more accurate exceptions when they go wrong, and let more exceptions bubble through from underneath.
Diffstat (limited to 'src/main/java/com/c2kernel/lifecycle/instance/predefined/WriteViewpoint.java')
-rw-r--r--src/main/java/com/c2kernel/lifecycle/instance/predefined/WriteViewpoint.java23
1 files changed, 10 insertions, 13 deletions
diff --git a/src/main/java/com/c2kernel/lifecycle/instance/predefined/WriteViewpoint.java b/src/main/java/com/c2kernel/lifecycle/instance/predefined/WriteViewpoint.java
index 349e34c..efe6a5f 100644
--- a/src/main/java/com/c2kernel/lifecycle/instance/predefined/WriteViewpoint.java
+++ b/src/main/java/com/c2kernel/lifecycle/instance/predefined/WriteViewpoint.java
@@ -22,13 +22,13 @@ package com.c2kernel.lifecycle.instance.predefined;
import java.util.Arrays;
-import com.c2kernel.common.InvalidDataException;
-import com.c2kernel.common.ObjectNotFoundException;
+import com.c2kernel.common.InvalidData;
+import com.c2kernel.common.ObjectNotFound;
+import com.c2kernel.common.PersistencyException;
import com.c2kernel.events.Event;
import com.c2kernel.lookup.AgentPath;
import com.c2kernel.lookup.ItemPath;
import com.c2kernel.persistency.ClusterStorage;
-import com.c2kernel.persistency.ClusterStorageException;
import com.c2kernel.persistency.outcome.Viewpoint;
import com.c2kernel.process.Gateway;
import com.c2kernel.utils.Logger;
@@ -41,7 +41,7 @@ public class WriteViewpoint extends PredefinedStep {
@Override
protected String runActivityLogic(AgentPath agent, ItemPath item,
- int transitionID, String requestData) throws InvalidDataException {
+ int transitionID, String requestData) throws InvalidData, ObjectNotFound, PersistencyException {
String schemaName;
String viewName;
@@ -52,7 +52,7 @@ public class WriteViewpoint extends PredefinedStep {
// outcometype, name and evId. Event and Outcome should be checked so schema version should be discovered.
if (params.length != 3)
- throw new InvalidDataException("WriteViewpoint: Invalid parameters "+Arrays.toString(params), "");
+ throw new InvalidData("WriteViewpoint: Invalid parameters "+Arrays.toString(params));
schemaName = params[0];
viewName = params[1];
@@ -60,7 +60,7 @@ public class WriteViewpoint extends PredefinedStep {
try {
evId = Integer.parseInt(params[2]);
} catch (NumberFormatException ex) {
- throw new InvalidDataException("WriteViewpoint: Parameter 3 (EventId) must be an integer", "");
+ throw new InvalidData("WriteViewpoint: Parameter 3 (EventId) must be an integer");
}
// Find event
@@ -68,21 +68,18 @@ public class WriteViewpoint extends PredefinedStep {
Event ev;
try {
ev = (Event)Gateway.getStorage().get(item, ClusterStorage.HISTORY+"/"+evId, null);
- } catch (ObjectNotFoundException e) {
+ } catch (PersistencyException e) {
Logger.error(e);
- throw new InvalidDataException("WriteViewpoint: Event "+evId+" not found", "");
- } catch (ClusterStorageException e) {
- Logger.error(e);
- throw new InvalidDataException("WriteViewpoint: Exception loading event", "");
+ throw new PersistencyException("WriteViewpoint: Could not load event "+evId);
}
// Write new viewpoint
Viewpoint newView = new Viewpoint(item, schemaName, viewName, ev.getSchemaVersion(), evId);
try {
Gateway.getStorage().put(item, newView, null);
- } catch (ClusterStorageException e) {
+ } catch (PersistencyException e) {
Logger.error(e);
- throw new InvalidDataException("WriteViewpoint: Could not store new viewpoint", "");
+ throw new PersistencyException("WriteViewpoint: Could not store new viewpoint");
}
return requestData;
}