summaryrefslogtreecommitdiff
path: root/src/main/java/com/c2kernel/lookup/Path.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/c2kernel/lookup/Path.java')
-rw-r--r--src/main/java/com/c2kernel/lookup/Path.java30
1 files changed, 19 insertions, 11 deletions
diff --git a/src/main/java/com/c2kernel/lookup/Path.java b/src/main/java/com/c2kernel/lookup/Path.java
index d6be37f..f6993f7 100644
--- a/src/main/java/com/c2kernel/lookup/Path.java
+++ b/src/main/java/com/c2kernel/lookup/Path.java
@@ -13,8 +13,10 @@ package com.c2kernel.lookup;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.StringTokenizer;
+import java.util.UUID;
import com.c2kernel.common.ObjectNotFoundException;
+import com.c2kernel.common.SystemKey;
import com.c2kernel.process.Gateway;
@@ -31,17 +33,16 @@ public abstract class Path implements Serializable
public static final short CONTEXT = 1;
public static final short ENTITY = 2;
- // invalid int key
- public static final int INVALID = -1;
-
protected String[] mPath = new String[0];
// slash delimited path
protected String mStringPath = null;
// entity or context
protected short mType = CONTEXT;
- // int syskey (only valid for entity SystemPaths)
- protected int mSysKey = INVALID;
+
+ // item UUID (only valid for ItemPaths and DomainPaths that are aliases for Items)
+ protected UUID mUUID;
+ protected SystemKey mSysKey;
// ior is stored in here when it is resolved
protected org.omg.CORBA.Object mIOR = null;
@@ -102,7 +103,8 @@ public abstract class Path implements Serializable
{
mStringPath = null;
mPath = path.clone();
- mSysKey = INVALID;
+ mUUID = null;
+ mSysKey = null;
}
/* string path e.g. /system/d000/d000/d001
@@ -122,7 +124,8 @@ public abstract class Path implements Serializable
mPath = (newPath.toArray(mPath));
mStringPath = null;
- mSysKey = INVALID;
+ mUUID = null;
+ mSysKey = null;
}
// lookup sets the IOR
@@ -138,7 +141,8 @@ public abstract class Path implements Serializable
{
mStringPath = null;
mPath = (path.getPath().clone());
- mSysKey = INVALID;
+ mUUID = null;
+ mSysKey = null;
}
/*************************************************************************/
@@ -196,11 +200,15 @@ public abstract class Path implements Serializable
return mType;
}
- public int getSysKey() {
+ public SystemKey getSystemKey() {
return mSysKey;
}
+
+ public UUID getUUID() {
+ return mUUID;
+ }
- public abstract ItemPath getEntity() throws ObjectNotFoundException;
+ public abstract ItemPath getItemPath() throws ObjectNotFoundException;
@Override
public boolean equals( Object path )
@@ -217,7 +225,7 @@ public abstract class Path implements Serializable
StringBuffer comp = new StringBuffer("Components: { ");
for (String element : mPath)
comp.append("'").append(element).append("' ");
- return "Path - dump(): "+comp.toString()+"}\n string="+toString()+"\n int="+getSysKey()+"\n type="+mType;
+ return "Path - dump(): "+comp.toString()+"}\n string="+toString()+"\n uuid="+getUUID()+"\n type="+mType;
}
}