summaryrefslogtreecommitdiff
path: root/source/com/c2kernel/lookup/NextKeyManager.java
diff options
context:
space:
mode:
authorabranson <andrew.branson@cern.ch>2011-08-04 00:42:34 +0200
committerabranson <andrew.branson@cern.ch>2011-08-04 00:42:34 +0200
commit0ec8481c10cd8277d84c7c1a785483a0a739e5a0 (patch)
tree5f6e5d9ae75193e67e6f3b3dfa488960c5cde1d5 /source/com/c2kernel/lookup/NextKeyManager.java
parent036cbdba66f804743c4c838ed598d6972c4b3e17 (diff)
More code cleanup:
Refactored Entity Proxy Subscription to handle generics better Rewrote RemoteMap to use TreeMap instead of the internal array for order. It now sorts its keys by number if they parse, else as strings. Removed a no-longer-in-progress outcome form class
Diffstat (limited to 'source/com/c2kernel/lookup/NextKeyManager.java')
-rw-r--r--[-rwxr-xr-x]source/com/c2kernel/lookup/NextKeyManager.java17
1 files changed, 8 insertions, 9 deletions
diff --git a/source/com/c2kernel/lookup/NextKeyManager.java b/source/com/c2kernel/lookup/NextKeyManager.java
index 04581c0..fd873fd 100755..100644
--- a/source/com/c2kernel/lookup/NextKeyManager.java
+++ b/source/com/c2kernel/lookup/NextKeyManager.java
@@ -18,7 +18,7 @@ public class NextKeyManager {
LDAPLookup ldap;
String lastKeyPath;
-
+
public NextKeyManager(LDAPLookup ldap, String lastKeyPath) {
super();
this.ldap = ldap;
@@ -28,9 +28,8 @@ public class NextKeyManager {
public synchronized EntityPath generateNextEntityKey()
throws ObjectCannotBeUpdated, ObjectNotFoundException
{
- LDAPEntry lastKeyEntry = LDAPLookupUtils.getEntry(ldap.getConnection(),lastKeyPath);
EntityPath lastKey = getLastEntityPath();
-
+
try {
lastKey.setSysKey(lastKey.getSysKey()+1);
} catch (InvalidEntityPathException ex) {
@@ -38,21 +37,21 @@ public class NextKeyManager {
}
//set the last key
writeLastEntityKey(lastKey.getSysKey());
-
+
return lastKey;
}
-
+
public synchronized AgentPath generateNextAgentKey()
throws ObjectCannotBeUpdated, ObjectNotFoundException {
EntityPath newEntity = generateNextEntityKey();
return new AgentPath(newEntity);
}
-
+
public void writeLastEntityKey(int sysKey) throws ObjectCannotBeUpdated, ObjectNotFoundException {
LDAPEntry lastKeyEntry = LDAPLookupUtils.getEntry(ldap.getConnection(),lastKeyPath);
LDAPLookupUtils.setAttributeValue(ldap.getConnection(), lastKeyEntry,"intsyskey",Integer.toString(sysKey));
}
-
+
public EntityPath getLastEntityPath() throws ObjectNotFoundException
{
LDAPEntry lastKeyEntry = LDAPLookupUtils.getEntry(ldap.getConnection(),lastKeyPath);
@@ -66,7 +65,7 @@ public class NextKeyManager {
} catch (NumberFormatException ex) {
throw new ObjectNotFoundException("Invalid syskey in lastkey.");
}
-
+
}
-
+
}