diff options
| author | Andrew Branson <andrew.branson@cern.ch> | 2013-11-18 09:48:03 +0100 |
|---|---|---|
| committer | Andrew Branson <andrew.branson@cern.ch> | 2013-11-18 17:25:00 +0100 |
| commit | d43164830403245353080f5d6f838ed9f56d9a35 (patch) | |
| tree | d880c9103fb61f5ef39f1723c4dbd634d5d83b67 /src/main/java/com/c2kernel/lifecycle/instance/predefined/Erase.java | |
| parent | 37a3c3867cb4c7705065ed1d079bdac4f3f52f50 (diff) | |
3.0-SNAPSHOT (Will be first open source version)
New StateMachine desc
IssueID #28
Diffstat (limited to 'src/main/java/com/c2kernel/lifecycle/instance/predefined/Erase.java')
| -rw-r--r-- | src/main/java/com/c2kernel/lifecycle/instance/predefined/Erase.java | 23 |
1 files changed, 9 insertions, 14 deletions
diff --git a/src/main/java/com/c2kernel/lifecycle/instance/predefined/Erase.java b/src/main/java/com/c2kernel/lifecycle/instance/predefined/Erase.java index 84b1b78..20c9fb7 100644 --- a/src/main/java/com/c2kernel/lifecycle/instance/predefined/Erase.java +++ b/src/main/java/com/c2kernel/lifecycle/instance/predefined/Erase.java @@ -15,9 +15,7 @@ package com.c2kernel.lifecycle.instance.predefined; import java.util.Enumeration;
-import com.c2kernel.common.AccessRightsException;
import com.c2kernel.common.InvalidDataException;
-import com.c2kernel.common.InvalidTransitionException;
import com.c2kernel.lookup.AgentPath;
import com.c2kernel.lookup.DomainPath;
import com.c2kernel.lookup.EntityPath;
@@ -42,35 +40,31 @@ public class Erase extends PredefinedStep //requestdata is xmlstring
@Override
- public void request(AgentPath agent, int transitionID, String requestData)
- throws AccessRightsException,
- InvalidTransitionException,
- InvalidDataException
- {
+ protected String runActivityLogic(AgentPath agent, int itemSysKey,
+ int transitionID, String requestData) throws InvalidDataException {
+
Logger.msg(1, "Erase::request() - Starting.");
- checkAccessRights(agent);
try
{
- EntityPath entityPath = getItemEntityPath();
// FIXME: This should search for the entity key. Name shouldn't be unique.
// find entity name
- Property name = (Property)Gateway.getStorage().get(entityPath.getSysKey(), ClusterStorage.PROPERTY+"/Name", null);
+ Property name = (Property)Gateway.getStorage().get(itemSysKey, ClusterStorage.PROPERTY+"/Name", null);
// get all domain paths
Enumeration<Path> domPaths = Gateway.getLDAPLookup().search(new DomainPath(), name.getValue());
while (domPaths.hasMoreElements()) {
DomainPath path = (DomainPath)domPaths.nextElement();
// delete them
- if (path.getSysKey() == entityPath.getSysKey())
+ if (path.getSysKey() == itemSysKey)
Gateway.getLDAPLookup().delete(path);
}
//clear out all storages
- Gateway.getStorage().removeCluster(entityPath.getSysKey(), "", null);
+ Gateway.getStorage().removeCluster(itemSysKey, "", null);
- //remove domain path
- Gateway.getLDAPLookup().delete(entityPath);
+ //remove entity path
+ Gateway.getLDAPLookup().delete(new EntityPath(itemSysKey));
}
catch( Exception ex )
{
@@ -80,6 +74,7 @@ public class Erase extends PredefinedStep }
Logger.msg(1, "Erase::request() - DONE.");
+ return requestData;
}
}
|
