diff options
| author | Andrew Branson <andrew.branson@cern.ch> | 2014-09-22 16:01:18 +0200 |
|---|---|---|
| committer | Andrew Branson <andrew.branson@cern.ch> | 2014-09-22 16:02:11 +0200 |
| commit | a7cefce58cdb0f7f2d0868a1d5ee2f24f3890646 (patch) | |
| tree | 89c30cdb92d7edae5d735c2d6ef45f890cc7be82 /src/main | |
| parent | cfa70de9ec7745356ed00c1502d5bd55eee14181 (diff) | |
ItemPath.fromUUIDString unnecessary as ItemPath(String) supports both
plain UUIDs and an /entity prefix. Tightened that up and removed the
fromUUIDString method for a simpler API. Also switched AgentPath(String)
to a path argument for consistency. New AgentPaths should be created
with AgentPath(new ItemPath(), String) instead.
Diffstat (limited to 'src/main')
21 files changed, 41 insertions, 49 deletions
diff --git a/src/main/java/com/c2kernel/collection/AggregationMember.java b/src/main/java/com/c2kernel/collection/AggregationMember.java index ba2524c..79d0405 100644 --- a/src/main/java/com/c2kernel/collection/AggregationMember.java +++ b/src/main/java/com/c2kernel/collection/AggregationMember.java @@ -144,7 +144,7 @@ public class AggregationMember extends GraphableVertex implements CollectionMemb @Override
public void setChildUUID(String uuid) throws MembershipException, InvalidItemPathException {
- setItemPath(ItemPath.fromUUIDString(uuid));
+ setItemPath(new ItemPath(uuid));
}
diff --git a/src/main/java/com/c2kernel/collection/DependencyMember.java b/src/main/java/com/c2kernel/collection/DependencyMember.java index 4dbb8f1..3cacf2f 100644 --- a/src/main/java/com/c2kernel/collection/DependencyMember.java +++ b/src/main/java/com/c2kernel/collection/DependencyMember.java @@ -143,7 +143,7 @@ public class DependencyMember implements CollectionMember @Override
public void setChildUUID(String uuid) throws MembershipException, InvalidItemPathException {
- mItemPath = ItemPath.fromUUIDString(uuid);
+ mItemPath = new ItemPath(uuid);
}
diff --git a/src/main/java/com/c2kernel/entity/agent/Job.java b/src/main/java/com/c2kernel/entity/agent/Job.java index 97f8eef..0c62bb1 100644 --- a/src/main/java/com/c2kernel/entity/agent/Job.java +++ b/src/main/java/com/c2kernel/entity/agent/Job.java @@ -133,7 +133,7 @@ public class Job implements C2KLocalObject public void setItemUUID( String uuid ) throws InvalidItemPathException
{
- setItemPath(ItemPath.fromUUIDString(uuid));
+ setItemPath(new ItemPath(uuid));
}
public String getItemUUID() {
diff --git a/src/main/java/com/c2kernel/entity/imports/ImportAgent.java b/src/main/java/com/c2kernel/entity/imports/ImportAgent.java index 2bbd307..52546a6 100644 --- a/src/main/java/com/c2kernel/entity/imports/ImportAgent.java +++ b/src/main/java/com/c2kernel/entity/imports/ImportAgent.java @@ -64,7 +64,7 @@ public class ImportAgent extends ModuleImport implements java.io.Serializable { AgentPath existAgent = Gateway.getLookup().getAgentPath(name);
itemPath = existAgent;
} catch (ObjectNotFoundException ex) {
- itemPath = new AgentPath(name);
+ itemPath = new AgentPath(new ItemPath(), name);
}
}
return itemPath;
diff --git a/src/main/java/com/c2kernel/entity/imports/ImportAggregation.java b/src/main/java/com/c2kernel/entity/imports/ImportAggregation.java index 2d8f0a2..46cb0b6 100644 --- a/src/main/java/com/c2kernel/entity/imports/ImportAggregation.java +++ b/src/main/java/com/c2kernel/entity/imports/ImportAggregation.java @@ -36,7 +36,7 @@ public class ImportAggregation implements java.io.Serializable { if (thisMem.itemDescriptionPath != null && thisMem.itemDescriptionPath.length()>0) {
ItemPath itemPath;
try {
- itemPath = ItemPath.fromUUIDString(thisMem.itemDescriptionPath);
+ itemPath = new ItemPath(thisMem.itemDescriptionPath);
} catch (InvalidItemPathException ex) {
itemPath = new DomainPath(thisMem.itemDescriptionPath).getItemPath();
}
@@ -50,12 +50,10 @@ public class ImportAggregation implements java.io.Serializable { if (thisMem.itemPath != null && thisMem.itemPath.length()>0) {
ItemPath itemPath;
try {
- itemPath = ItemPath.fromUUIDString(thisMem.itemPath);
+ itemPath = new ItemPath(thisMem.itemPath);
} catch (InvalidItemPathException ex) {
itemPath = new DomainPath(thisMem.itemPath).getItemPath();
}
- if (itemPath == null)
- throw new MembershipException("Cannot find "+thisMem.itemPath+" specified for collection.");
newAgg.addMember(itemPath, thisMem.props, classProps.toString(), new GraphPoint(thisMem.geometry.x, thisMem.geometry.y), thisMem.geometry.width, thisMem.geometry.height);
}
}
diff --git a/src/main/java/com/c2kernel/entity/imports/ImportDependency.java b/src/main/java/com/c2kernel/entity/imports/ImportDependency.java index 87e6b11..3fafd6f 100644 --- a/src/main/java/com/c2kernel/entity/imports/ImportDependency.java +++ b/src/main/java/com/c2kernel/entity/imports/ImportDependency.java @@ -58,13 +58,11 @@ public class ImportDependency implements java.io.Serializable { for (ImportDependencyMember thisMem : dependencyMemberList) {
ItemPath itemPath;
try {
- itemPath = ItemPath.fromUUIDString(thisMem.itemPath);
+ itemPath = new ItemPath(thisMem.itemPath);
} catch (InvalidItemPathException ex) {
itemPath = new DomainPath(thisMem.itemPath).getItemPath();
}
- if (itemPath == null)
- throw new MembershipException("Cannot find "+thisMem.itemPath+" specified for collection.");
com.c2kernel.collection.DependencyMember newDepMem = newDep.addMember(itemPath);
newDepMem.getProperties().putAll(thisMem.props);
}
diff --git a/src/main/java/com/c2kernel/entity/transfer/TransferItem.java b/src/main/java/com/c2kernel/entity/transfer/TransferItem.java index 4ec8953..d1379cf 100644 --- a/src/main/java/com/c2kernel/entity/transfer/TransferItem.java +++ b/src/main/java/com/c2kernel/entity/transfer/TransferItem.java @@ -57,7 +57,7 @@ public class TransferItem { public void setUUID( String uuid ) throws InvalidItemPathException
{
- itemPath = ItemPath.fromUUIDString(uuid);
+ itemPath = new ItemPath(uuid);
}
public String getUUID() {
diff --git a/src/main/java/com/c2kernel/events/Event.java b/src/main/java/com/c2kernel/events/Event.java index bf9be68..0bab4bc 100644 --- a/src/main/java/com/c2kernel/events/Event.java +++ b/src/main/java/com/c2kernel/events/Event.java @@ -82,7 +82,7 @@ public class Event implements C2KLocalObject public void setItemUUID( String uuid ) throws InvalidItemPathException
{
- setItemPath(ItemPath.fromUUIDString(uuid));
+ setItemPath(new ItemPath(uuid));
}
public String getItemUUID() {
diff --git a/src/main/java/com/c2kernel/lifecycle/instance/Workflow.java b/src/main/java/com/c2kernel/lifecycle/instance/Workflow.java index 304c604..e3ae682 100644 --- a/src/main/java/com/c2kernel/lifecycle/instance/Workflow.java +++ b/src/main/java/com/c2kernel/lifecycle/instance/Workflow.java @@ -201,7 +201,7 @@ public class Workflow extends CompositeActivity implements C2KLocalObject public void setItemUUID( String uuid ) throws InvalidItemPathException
{
- setItemPath(ItemPath.fromUUIDString(uuid));
+ setItemPath(new ItemPath(uuid));
}
public String getItemUUID() {
diff --git a/src/main/java/com/c2kernel/lifecycle/instance/predefined/AddMemberToCollection.java b/src/main/java/com/c2kernel/lifecycle/instance/predefined/AddMemberToCollection.java index 76b6adf..f421b09 100644 --- a/src/main/java/com/c2kernel/lifecycle/instance/predefined/AddMemberToCollection.java +++ b/src/main/java/com/c2kernel/lifecycle/instance/predefined/AddMemberToCollection.java @@ -64,7 +64,7 @@ public class AddMemberToCollection extends PredefinedStep if (Logger.doLog(3)) Logger.msg(3, "AddMemberToCollection: called by "+agent+" on "+item+" with parameters "+Arrays.toString(params));
try {
collName = params[0];
- newChild = ItemPath.fromUUIDString(params[1]);
+ newChild = new ItemPath(params[1]);
if (params.length > 2)
props = (CastorHashMap)Gateway.getMarshaller().unmarshall(params[2]);
diff --git a/src/main/java/com/c2kernel/lifecycle/instance/predefined/AddNewSlot.java b/src/main/java/com/c2kernel/lifecycle/instance/predefined/AddNewSlot.java index 58b1263..a482a43 100644 --- a/src/main/java/com/c2kernel/lifecycle/instance/predefined/AddNewSlot.java +++ b/src/main/java/com/c2kernel/lifecycle/instance/predefined/AddNewSlot.java @@ -66,7 +66,7 @@ public class AddNewSlot extends PredefinedStep try {
collName = params[0];
- if (params.length > 1 && params[1].length() > 0) descKey = ItemPath.fromUUIDString(params[1]);
+ if (params.length > 1 && params[1].length() > 0) descKey = new ItemPath(params[1]);
} catch (Exception e) {
throw new InvalidDataException("AddNewSlot: Invalid parameters "+Arrays.toString(params), "");
}
diff --git a/src/main/java/com/c2kernel/lifecycle/instance/predefined/AssignItemToSlot.java b/src/main/java/com/c2kernel/lifecycle/instance/predefined/AssignItemToSlot.java index 20ad473..71ab287 100644 --- a/src/main/java/com/c2kernel/lifecycle/instance/predefined/AssignItemToSlot.java +++ b/src/main/java/com/c2kernel/lifecycle/instance/predefined/AssignItemToSlot.java @@ -65,7 +65,7 @@ public class AssignItemToSlot extends PredefinedStep try {
collName = params[0];
slotNo = Integer.parseInt(params[1]);
- childItem = ItemPath.fromUUIDString(params[2]);
+ childItem = new ItemPath(params[2]);
} catch (Exception e) {
throw new InvalidDataException("AssignItemToSlot: Invalid parameters "+Arrays.toString(params), "");
}
diff --git a/src/main/java/com/c2kernel/lifecycle/instance/predefined/RemoveSlotFromCollection.java b/src/main/java/com/c2kernel/lifecycle/instance/predefined/RemoveSlotFromCollection.java index 26bf104..6196025 100644 --- a/src/main/java/com/c2kernel/lifecycle/instance/predefined/RemoveSlotFromCollection.java +++ b/src/main/java/com/c2kernel/lifecycle/instance/predefined/RemoveSlotFromCollection.java @@ -64,7 +64,7 @@ public class RemoveSlotFromCollection extends PredefinedStep try {
collName = params[0];
if (params.length>1 && params[1].length()>0) slotNo = Integer.parseInt(params[1]);
- if (params.length>2 && params[2].length()>0) currentChild = ItemPath.fromUUIDString(params[2]);
+ if (params.length>2 && params[2].length()>0) currentChild = new ItemPath(params[2]);
} catch (Exception e) {
throw new InvalidDataException("RemoveSlotFromCollection: Invalid parameters "+Arrays.toString(params), "");
}
diff --git a/src/main/java/com/c2kernel/lifecycle/instance/predefined/agent/CreateAgentFromDescription.java b/src/main/java/com/c2kernel/lifecycle/instance/predefined/agent/CreateAgentFromDescription.java index 7683143..088bee1 100644 --- a/src/main/java/com/c2kernel/lifecycle/instance/predefined/agent/CreateAgentFromDescription.java +++ b/src/main/java/com/c2kernel/lifecycle/instance/predefined/agent/CreateAgentFromDescription.java @@ -69,7 +69,7 @@ public class CreateAgentFromDescription extends CreateItemFromDescription // generate new entity key
Logger.msg(6, "CreateItemFromDescription - Requesting new agent path");
- AgentPath newAgentPath = new AgentPath(newName);
+ AgentPath newAgentPath = new AgentPath(new ItemPath(), newName);
// resolve the item factory
Logger.msg(6, "CreateItemFromDescription - Resolving item factory");
diff --git a/src/main/java/com/c2kernel/lifecycle/routingHelpers/ViewpointDataHelper.java b/src/main/java/com/c2kernel/lifecycle/routingHelpers/ViewpointDataHelper.java index 26b2faa..415cbea 100644 --- a/src/main/java/com/c2kernel/lifecycle/routingHelpers/ViewpointDataHelper.java +++ b/src/main/java/com/c2kernel/lifecycle/routingHelpers/ViewpointDataHelper.java @@ -43,13 +43,7 @@ public class ViewpointDataHelper else return errArr;
// find entity
- ItemPath sourcePath;
- try
- {
- sourcePath = ItemPath.fromUUIDString(entityPath);
- } catch (Exception e) {
- sourcePath = new ItemPath(entityPath);
- }
+ ItemPath sourcePath = new ItemPath(entityPath);
try {
// load viewpoint
diff --git a/src/main/java/com/c2kernel/lookup/AgentPath.java b/src/main/java/com/c2kernel/lookup/AgentPath.java index f6d6ca4..9dab6a6 100644 --- a/src/main/java/com/c2kernel/lookup/AgentPath.java +++ b/src/main/java/com/c2kernel/lookup/AgentPath.java @@ -64,9 +64,13 @@ public class AgentPath extends ItemPath mAgentName = agentName;
}
- public AgentPath(String agentName) {
- super();
- mAgentName = agentName;
+ public AgentPath(String path) throws InvalidItemPathException {
+ super(path);
+ try {
+ findAgentName();
+ } catch (ObjectNotFoundException e) {
+ throw new InvalidAgentPathException();
+ }
}
public void setAgentName(String agentID)
@@ -135,7 +139,7 @@ public class AgentPath extends ItemPath public static AgentPath fromUUIDString(String uuid) throws InvalidAgentPathException {
try {
- return new AgentPath(ItemPath.fromUUIDString(uuid));
+ return new AgentPath(new ItemPath(uuid));
} catch (InvalidItemPathException ex) {
throw new InvalidAgentPathException(ex.getMessage());
}
diff --git a/src/main/java/com/c2kernel/lookup/ItemPath.java b/src/main/java/com/c2kernel/lookup/ItemPath.java index 793a0ed..befbfff 100644 --- a/src/main/java/com/c2kernel/lookup/ItemPath.java +++ b/src/main/java/com/c2kernel/lookup/ItemPath.java @@ -11,6 +11,7 @@ package com.c2kernel.lookup;
import java.nio.ByteBuffer;
+import java.util.Arrays;
import java.util.UUID;
import com.c2kernel.common.ObjectNotFoundException;
@@ -51,17 +52,21 @@ public class ItemPath extends Path public ItemPath(String path) throws InvalidItemPathException
{
super(path, Path.CONTEXT);
+ if (path == null) throw new InvalidItemPathException("Path cannot be null");
getSysKeyFromPath();
}
private void getSysKeyFromPath() throws InvalidItemPathException {
- if (mPath.length > 0) {
+ if (mPath.length == 1) {
try {
setSysKey(UUID.fromString(mPath[0]));
+ mType = Path.ENTITY;
} catch (IllegalArgumentException ex) {
throw new InvalidItemPathException(mPath[0]+" is not a valid UUID");
}
}
+ else
+ throw new InvalidItemPathException("Not a valid item path: "+Arrays.toString(mPath));
}
// EntityPaths root in /entity
@@ -85,27 +90,20 @@ public class ItemPath extends Path protected void setSysKey(UUID uuid) {
mUUID = uuid;
- mPath = new String[1];
- mPath[0] = mUUID.toString();
mSysKey = new SystemKey(uuid.getMostSignificantBits(), uuid.getLeastSignificantBits());
- mType = Path.ENTITY;
+ setPathFromUUID(mUUID.toString());
}
protected void setSysKey(SystemKey sysKey) {
mSysKey = sysKey;
mUUID = new UUID(sysKey.msb, sysKey.lsb);
- mPath = new String[1];
- mPath[0] = mUUID.toString();
- mType = Path.ENTITY;
+ setPathFromUUID(mUUID.toString());
}
- public static ItemPath fromUUIDString(String uuid) throws InvalidItemPathException {
- if (uuid == null) throw new InvalidItemPathException("Null uuid");
- try {
- return new ItemPath(UUID.fromString(uuid));
- } catch (IllegalArgumentException ex) {
- throw new InvalidItemPathException("Illegal uuid: "+uuid);
- }
+ private void setPathFromUUID(String uuid) {
+ mPath = new String[1];
+ mPath[0] = uuid;
+ mType = Path.ENTITY;
}
}
diff --git a/src/main/java/com/c2kernel/persistency/outcome/Viewpoint.java b/src/main/java/com/c2kernel/persistency/outcome/Viewpoint.java index fd2004b..bdc9a74 100644 --- a/src/main/java/com/c2kernel/persistency/outcome/Viewpoint.java +++ b/src/main/java/com/c2kernel/persistency/outcome/Viewpoint.java @@ -162,7 +162,7 @@ public class Viewpoint implements C2KLocalObject { public void setItemUUID( String uuid ) throws InvalidItemPathException
{
- setItemPath(ItemPath.fromUUIDString(uuid));
+ setItemPath(new ItemPath(uuid));
}
public String getItemUUID() {
diff --git a/src/main/java/com/c2kernel/process/Bootstrap.java b/src/main/java/com/c2kernel/process/Bootstrap.java index 1b9e027..eef118d 100644 --- a/src/main/java/com/c2kernel/process/Bootstrap.java +++ b/src/main/java/com/c2kernel/process/Bootstrap.java @@ -110,7 +110,7 @@ public class Bootstrap ItemPath itemPath = null;
String[] itemParts = thisItem.split("/");
if (itemParts.length == 3) { // includes UUID
- itemPath = ItemPath.fromUUIDString(itemParts[2]);
+ itemPath = new ItemPath(itemParts[2]);
}
String itemType = itemParts[0];
String itemName = itemParts[1];
@@ -298,7 +298,7 @@ public class Bootstrap Logger.msg("Bootstrap.checkAgent() - User '"+name+"' not found. Creating.");
try {
- AgentPath agentPath = new AgentPath(ItemPath.fromUUIDString(uuid), name);
+ AgentPath agentPath = new AgentPath(new ItemPath(uuid), name);
agentPath.setPassword(pass);
Gateway.getCorbaServer().createAgent(agentPath);
lookup.add(agentPath);
diff --git a/src/main/java/com/c2kernel/process/ItemHTTPBridge.java b/src/main/java/com/c2kernel/process/ItemHTTPBridge.java index 8e4329c..8db52f9 100644 --- a/src/main/java/com/c2kernel/process/ItemHTTPBridge.java +++ b/src/main/java/com/c2kernel/process/ItemHTTPBridge.java @@ -33,7 +33,7 @@ public class ItemHTTPBridge extends HTTPRequestHandler { String query = tok.nextToken();
ItemPath itemPath;
try {
- itemPath = ItemPath.fromUUIDString(path);
+ itemPath = new ItemPath(path);
} catch (InvalidItemPathException ex) {
DomainPath domPath = new DomainPath(path);
if (!domPath.exists())
diff --git a/src/main/java/com/c2kernel/process/module/ModuleImport.java b/src/main/java/com/c2kernel/process/module/ModuleImport.java index 346488b..29ee2e2 100644 --- a/src/main/java/com/c2kernel/process/module/ModuleImport.java +++ b/src/main/java/com/c2kernel/process/module/ModuleImport.java @@ -24,7 +24,7 @@ public abstract class ModuleImport { public void setID( String uuid ) throws InvalidItemPathException
{
- if (uuid != null) itemPath = ItemPath.fromUUIDString(uuid);
+ if (uuid != null) itemPath = new ItemPath(uuid);
}
public String getID() {
|
