summaryrefslogtreecommitdiff
path: root/src/main/java/com/c2kernel/persistency
diff options
context:
space:
mode:
authorAndrew Branson <andrew.branson@cern.ch>2013-05-21 13:35:48 +0200
committerAndrew Branson <andrew.branson@cern.ch>2013-05-21 13:35:48 +0200
commit034cb248097b7db3aa57af3be6f91a984815ad4b (patch)
tree89ae7c18ebcc853a0885baa3333e8b66ba73e98c /src/main/java/com/c2kernel/persistency
parent67c0a6473884c7cde27c64e194a474d124cfd4f3 (diff)
Collect stale job IDs when refreshing joblist. Remove them after to
avoid concurrent mod, as we don't want to preload all the values. Fixes #112
Diffstat (limited to 'src/main/java/com/c2kernel/persistency')
-rw-r--r--src/main/java/com/c2kernel/persistency/RemoteMap.java4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/main/java/com/c2kernel/persistency/RemoteMap.java b/src/main/java/com/c2kernel/persistency/RemoteMap.java
index 2147047..b36648f 100644
--- a/src/main/java/com/c2kernel/persistency/RemoteMap.java
+++ b/src/main/java/com/c2kernel/persistency/RemoteMap.java
@@ -345,6 +345,7 @@ public class RemoteMap<V extends C2KLocalObject> extends TreeMap<String, V> impl
private class RemoteIterator<C extends C2KLocalObject> implements Iterator<C> {
RemoteMap<C> mParent;
Iterator<String> iter;
+ String currentKey;
public RemoteIterator(RemoteMap<C> parent) {
mParent = parent;
@@ -358,7 +359,8 @@ public class RemoteMap<V extends C2KLocalObject> extends TreeMap<String, V> impl
@Override
public C next() {
- return mParent.get(iter.next());
+ currentKey = iter.next();
+ return mParent.get(currentKey);
}
@Override