Author: toad
Date: 2008-06-28 14:49:55 +0000 (Sat, 28 Jun 2008)
New Revision: 20846
Modified:
branches/db4o/freenet/src/freenet/support/SortedVectorByNumber.java
Log:
Activation
Modified: branches/db4o/freenet/src/freenet/support/SortedVectorByNumber.java
===================================================================
--- branches/db4o/freenet/src/freenet/support/SortedVectorByNumber.java
2008-06-28 14:49:23 UTC (rev 20845)
+++ branches/db4o/freenet/src/freenet/support/SortedVectorByNumber.java
2008-06-28 14:49:55 UTC (rev 20846)
@@ -40,6 +40,8 @@
}
public synchronized void remove(int item, ObjectContainer container) {
+ if(persistent)
+ container.activate(this, 1);
int x = Arrays.binarySearch(data, new Integer(item),
comparator);
if(x >= 0) {
if(x < length-1)
@@ -61,7 +63,7 @@
IntNumberedItem item = data[i];
if(i>0) {
if(item.getNumber() <= lastItem.getNumber())
- throw new IllegalStateException("Verify
failed!");
+ throw new IllegalStateException("Verify
failed! at "+i+" this="+item.getNumber()+" but last="+lastItem.getNumber());
}
lastItem = item;
}
@@ -75,6 +77,8 @@
* @return True if we added the item.
*/
public synchronized boolean push(IntNumberedItem grabber,
ObjectContainer container) {
+ if(persistent)
+ container.activate(this, 1);
int x = Arrays.binarySearch(data, new
Integer(grabber.getNumber()), comparator);
if(x >= 0) return false;
// insertion point
@@ -84,6 +88,8 @@
}
public synchronized void add(IntNumberedItem grabber, ObjectContainer
container) {
+ if(persistent)
+ container.activate(this, 1);
int x = Arrays.binarySearch(data, new
Integer(grabber.getNumber()), comparator);
if(x >= 0) {
if(grabber != data[x])
@@ -96,6 +102,8 @@
}
private synchronized void push(IntNumberedItem grabber, int x,
ObjectContainer container) {
+ if(persistent)
+ container.activate(this, 1);
boolean logMINOR = Logger.shouldLog(Logger.MINOR, this);
if(logMINOR) Logger.minor(this, "Insertion point: "+x);
// Move the data