Author: toad
Date: 2008-06-25 13:59:47 +0000 (Wed, 25 Jun 2008)
New Revision: 20678
Modified:
branches/db4o/freenet/src/freenet/clients/http/QueueToadlet.java
branches/db4o/freenet/src/freenet/node/fcp/ClientGet.java
branches/db4o/freenet/src/freenet/node/fcp/ClientPutBase.java
branches/db4o/freenet/src/freenet/node/fcp/ClientRequest.java
Log:
Pass in ObjectContainer, use it to activate to prevent NPE
Modified: branches/db4o/freenet/src/freenet/clients/http/QueueToadlet.java
===================================================================
--- branches/db4o/freenet/src/freenet/clients/http/QueueToadlet.java
2008-06-25 13:35:27 UTC (rev 20677)
+++ branches/db4o/freenet/src/freenet/clients/http/QueueToadlet.java
2008-06-25 13:59:47 UTC (rev 20678)
@@ -452,7 +452,7 @@
}
- private HTMLNode handleGetInner(PageMaker pageMaker, ObjectContainer
container, ClientContext context, final HTTPRequest request, ToadletContext
ctx) {
+ private HTMLNode handleGetInner(PageMaker pageMaker, final
ObjectContainer container, ClientContext context, final HTTPRequest request,
ToadletContext ctx) {
// First, get the queued requests, and separate them into
different types.
LinkedList completedDownloadToDisk = new LinkedList();
@@ -548,9 +548,9 @@
if(sortBy.equals("id")){
result =
firstRequest.getIdentifier().compareToIgnoreCase(secondRequest.getIdentifier());
}else if(sortBy.equals("size")){
- result =
(firstRequest.getTotalBlocks() - secondRequest.getTotalBlocks()) < 0 ? -1 : 1;
+ result =
(firstRequest.getTotalBlocks(container) -
secondRequest.getTotalBlocks(container)) < 0 ? -1 : 1;
}else if(sortBy.equals("progress")){
- result =
firstRequest.getSuccessFraction() - secondRequest.getSuccessFraction() < 0 ? -1
: 1;
+ result =
firstRequest.getSuccessFraction(container) -
secondRequest.getSuccessFraction(container) < 0 ? -1 : 1;
}else
isSet=false;
}else
@@ -679,9 +679,9 @@
HTMLNode completedDownloadsTempInfobox =
contentNode.addChild(pageMaker.getInfobox("completed_requests",
L10n.getString("QueueToadlet.completedDinTempDirectory", new String[]{ "size"
}, new String[]{ String.valueOf(completedDownloadToTemp.size()) })));
HTMLNode completedDownloadsToTempContent =
pageMaker.getContentNode(completedDownloadsTempInfobox);
if (advancedModeEnabled) {
-
completedDownloadsToTempContent.addChild(createRequestTable(pageMaker, ctx,
completedDownloadToTemp, new int[] { LIST_IDENTIFIER, LIST_SIZE,
LIST_MIME_TYPE, LIST_DOWNLOAD, LIST_PERSISTENCE, LIST_KEY }, priorityClasses,
advancedModeEnabled, false));
+
completedDownloadsToTempContent.addChild(createRequestTable(pageMaker, ctx,
completedDownloadToTemp, new int[] { LIST_IDENTIFIER, LIST_SIZE,
LIST_MIME_TYPE, LIST_DOWNLOAD, LIST_PERSISTENCE, LIST_KEY }, priorityClasses,
advancedModeEnabled, false, container));
} else {
-
completedDownloadsToTempContent.addChild(createRequestTable(pageMaker, ctx,
completedDownloadToTemp, new int[] { LIST_SIZE, LIST_MIME_TYPE, LIST_DOWNLOAD,
LIST_PERSISTENCE, LIST_KEY }, priorityClasses, advancedModeEnabled, false));
+
completedDownloadsToTempContent.addChild(createRequestTable(pageMaker, ctx,
completedDownloadToTemp, new int[] { LIST_SIZE, LIST_MIME_TYPE, LIST_DOWNLOAD,
LIST_PERSISTENCE, LIST_KEY }, priorityClasses, advancedModeEnabled, false,
container));
}
}
@@ -690,9 +690,9 @@
HTMLNode completedToDiskInfobox =
contentNode.addChild(pageMaker.getInfobox("completed_requests",
L10n.getString("QueueToadlet.completedDinDownloadDirectory", new String[]{
"size" }, new String[]{ String.valueOf(completedDownloadToDisk.size()) })));
HTMLNode completedToDiskInfoboxContent =
pageMaker.getContentNode(completedToDiskInfobox);
if (advancedModeEnabled) {
-
completedToDiskInfoboxContent.addChild(createRequestTable(pageMaker, ctx,
completedDownloadToDisk, new int[] { LIST_IDENTIFIER, LIST_FILENAME, LIST_SIZE,
LIST_MIME_TYPE, LIST_DOWNLOAD, LIST_PERSISTENCE, LIST_KEY }, priorityClasses,
advancedModeEnabled, false));
+
completedToDiskInfoboxContent.addChild(createRequestTable(pageMaker, ctx,
completedDownloadToDisk, new int[] { LIST_IDENTIFIER, LIST_FILENAME, LIST_SIZE,
LIST_MIME_TYPE, LIST_DOWNLOAD, LIST_PERSISTENCE, LIST_KEY }, priorityClasses,
advancedModeEnabled, false, container));
} else {
-
completedToDiskInfoboxContent.addChild(createRequestTable(pageMaker, ctx,
completedDownloadToDisk, new int[] { LIST_FILENAME, LIST_SIZE, LIST_MIME_TYPE,
LIST_DOWNLOAD, LIST_PERSISTENCE, LIST_KEY }, priorityClasses,
advancedModeEnabled, false));
+
completedToDiskInfoboxContent.addChild(createRequestTable(pageMaker, ctx,
completedDownloadToDisk, new int[] { LIST_FILENAME, LIST_SIZE, LIST_MIME_TYPE,
LIST_DOWNLOAD, LIST_PERSISTENCE, LIST_KEY }, priorityClasses,
advancedModeEnabled, false, container));
}
}
@@ -701,9 +701,9 @@
HTMLNode completedUploadInfobox =
contentNode.addChild(pageMaker.getInfobox("completed_requests",
L10n.getString("QueueToadlet.completedU", new String[]{ "size" }, new String[]{
String.valueOf(completedUpload.size()) })));
HTMLNode completedUploadInfoboxContent =
pageMaker.getContentNode(completedUploadInfobox);
if (advancedModeEnabled) {
-
completedUploadInfoboxContent.addChild(createRequestTable(pageMaker, ctx,
completedUpload, new int[] { LIST_IDENTIFIER, LIST_FILENAME, LIST_SIZE,
LIST_MIME_TYPE, LIST_PERSISTENCE, LIST_KEY }, priorityClasses,
advancedModeEnabled, true));
+
completedUploadInfoboxContent.addChild(createRequestTable(pageMaker, ctx,
completedUpload, new int[] { LIST_IDENTIFIER, LIST_FILENAME, LIST_SIZE,
LIST_MIME_TYPE, LIST_PERSISTENCE, LIST_KEY }, priorityClasses,
advancedModeEnabled, true, container));
} else {
-
completedUploadInfoboxContent.addChild(createRequestTable(pageMaker, ctx,
completedUpload, new int[] { LIST_FILENAME, LIST_SIZE, LIST_MIME_TYPE,
LIST_PERSISTENCE, LIST_KEY }, priorityClasses, advancedModeEnabled, true));
+
completedUploadInfoboxContent.addChild(createRequestTable(pageMaker, ctx,
completedUpload, new int[] { LIST_FILENAME, LIST_SIZE, LIST_MIME_TYPE,
LIST_PERSISTENCE, LIST_KEY }, priorityClasses, advancedModeEnabled, true,
container));
}
}
@@ -712,9 +712,9 @@
HTMLNode completedUploadDirInfobox =
contentNode.addChild(pageMaker.getInfobox("completed_requests",
L10n.getString("QueueToadlet.completedUDirectory", new String[]{ "size" }, new
String[]{ String.valueOf(completedDirUpload.size()) })));
HTMLNode completedUploadDirContent =
pageMaker.getContentNode(completedUploadDirInfobox);
if (advancedModeEnabled) {
-
completedUploadDirContent.addChild(createRequestTable(pageMaker, ctx,
completedDirUpload, new int[] { LIST_IDENTIFIER, LIST_FILES, LIST_TOTAL_SIZE,
LIST_PERSISTENCE, LIST_KEY }, priorityClasses, advancedModeEnabled, true));
+
completedUploadDirContent.addChild(createRequestTable(pageMaker, ctx,
completedDirUpload, new int[] { LIST_IDENTIFIER, LIST_FILES, LIST_TOTAL_SIZE,
LIST_PERSISTENCE, LIST_KEY }, priorityClasses, advancedModeEnabled, true,
container));
} else {
-
completedUploadDirContent.addChild(createRequestTable(pageMaker, ctx,
completedDirUpload, new int[] { LIST_FILES, LIST_TOTAL_SIZE, LIST_PERSISTENCE,
LIST_KEY }, priorityClasses, advancedModeEnabled, true));
+
completedUploadDirContent.addChild(createRequestTable(pageMaker, ctx,
completedDirUpload, new int[] { LIST_FILES, LIST_TOTAL_SIZE, LIST_PERSISTENCE,
LIST_KEY }, priorityClasses, advancedModeEnabled, true, container));
}
}
@@ -723,9 +723,9 @@
HTMLNode failedInfobox =
contentNode.addChild(pageMaker.getInfobox("failed_requests",
L10n.getString("QueueToadlet.failedD", new String[]{ "size" }, new String[]{
String.valueOf(failedDownload.size()) })));
HTMLNode failedContent =
pageMaker.getContentNode(failedInfobox);
if (advancedModeEnabled) {
-
failedContent.addChild(createRequestTable(pageMaker, ctx, failedDownload, new
int[] { LIST_IDENTIFIER, LIST_FILENAME, LIST_SIZE, LIST_MIME_TYPE,
LIST_PROGRESS, LIST_REASON, LIST_PERSISTENCE, LIST_KEY }, priorityClasses,
advancedModeEnabled, false));
+
failedContent.addChild(createRequestTable(pageMaker, ctx, failedDownload, new
int[] { LIST_IDENTIFIER, LIST_FILENAME, LIST_SIZE, LIST_MIME_TYPE,
LIST_PROGRESS, LIST_REASON, LIST_PERSISTENCE, LIST_KEY }, priorityClasses,
advancedModeEnabled, false, container));
} else {
-
failedContent.addChild(createRequestTable(pageMaker, ctx, failedDownload, new
int[] { LIST_FILENAME, LIST_SIZE, LIST_MIME_TYPE, LIST_PROGRESS, LIST_REASON,
LIST_PERSISTENCE, LIST_KEY }, priorityClasses, advancedModeEnabled, false));
+
failedContent.addChild(createRequestTable(pageMaker, ctx, failedDownload, new
int[] { LIST_FILENAME, LIST_SIZE, LIST_MIME_TYPE, LIST_PROGRESS, LIST_REASON,
LIST_PERSISTENCE, LIST_KEY }, priorityClasses, advancedModeEnabled, false,
container));
}
}
@@ -734,9 +734,9 @@
HTMLNode failedInfobox =
contentNode.addChild(pageMaker.getInfobox("failed_requests",
L10n.getString("QueueToadlet.failedU", new String[]{ "size" }, new String[]{
String.valueOf(failedUpload.size()) })));
HTMLNode failedContent =
pageMaker.getContentNode(failedInfobox);
if (advancedModeEnabled) {
-
failedContent.addChild(createRequestTable(pageMaker, ctx, failedUpload, new
int[] { LIST_IDENTIFIER, LIST_FILENAME, LIST_SIZE, LIST_MIME_TYPE,
LIST_PROGRESS, LIST_REASON, LIST_PERSISTENCE, LIST_KEY }, priorityClasses,
advancedModeEnabled, true));
+
failedContent.addChild(createRequestTable(pageMaker, ctx, failedUpload, new
int[] { LIST_IDENTIFIER, LIST_FILENAME, LIST_SIZE, LIST_MIME_TYPE,
LIST_PROGRESS, LIST_REASON, LIST_PERSISTENCE, LIST_KEY }, priorityClasses,
advancedModeEnabled, true, container));
} else {
-
failedContent.addChild(createRequestTable(pageMaker, ctx, failedUpload, new
int[] { LIST_FILENAME, LIST_SIZE, LIST_MIME_TYPE, LIST_PROGRESS, LIST_REASON,
LIST_PERSISTENCE, LIST_KEY }, priorityClasses, advancedModeEnabled, true));
+
failedContent.addChild(createRequestTable(pageMaker, ctx, failedUpload, new
int[] { LIST_FILENAME, LIST_SIZE, LIST_MIME_TYPE, LIST_PROGRESS, LIST_REASON,
LIST_PERSISTENCE, LIST_KEY }, priorityClasses, advancedModeEnabled, true,
container));
}
}
@@ -745,9 +745,9 @@
HTMLNode failedInfobox =
contentNode.addChild(pageMaker.getInfobox("failed_requests",
L10n.getString("QueueToadlet.failedU", new String[]{ "size" }, new String[]{
String.valueOf(failedDirUpload.size()) })));
HTMLNode failedContent =
pageMaker.getContentNode(failedInfobox);
if (advancedModeEnabled) {
-
failedContent.addChild(createRequestTable(pageMaker, ctx, failedDirUpload, new
int[] { LIST_IDENTIFIER, LIST_FILES, LIST_TOTAL_SIZE, LIST_PROGRESS,
LIST_REASON, LIST_PERSISTENCE, LIST_KEY }, priorityClasses,
advancedModeEnabled, true));
+
failedContent.addChild(createRequestTable(pageMaker, ctx, failedDirUpload, new
int[] { LIST_IDENTIFIER, LIST_FILES, LIST_TOTAL_SIZE, LIST_PROGRESS,
LIST_REASON, LIST_PERSISTENCE, LIST_KEY }, priorityClasses,
advancedModeEnabled, true, container));
} else {
-
failedContent.addChild(createRequestTable(pageMaker, ctx, failedDirUpload, new
int[] { LIST_FILES, LIST_TOTAL_SIZE, LIST_PROGRESS, LIST_REASON,
LIST_PERSISTENCE, LIST_KEY }, priorityClasses, advancedModeEnabled, true));
+
failedContent.addChild(createRequestTable(pageMaker, ctx, failedDirUpload, new
int[] { LIST_FILES, LIST_TOTAL_SIZE, LIST_PROGRESS, LIST_REASON,
LIST_PERSISTENCE, LIST_KEY }, priorityClasses, advancedModeEnabled, true,
container));
}
}
@@ -756,9 +756,9 @@
HTMLNode uncompletedInfobox =
contentNode.addChild(pageMaker.getInfobox("requests_in_progress",
L10n.getString("QueueToadlet.wipD", new String[]{ "size" }, new String[]{
String.valueOf(uncompletedDownload.size()) })));
HTMLNode uncompletedContent =
pageMaker.getContentNode(uncompletedInfobox);
if (advancedModeEnabled) {
-
uncompletedContent.addChild(createRequestTable(pageMaker, ctx,
uncompletedDownload, new int[] { LIST_IDENTIFIER, LIST_PRIORITY, LIST_SIZE,
LIST_MIME_TYPE, LIST_PROGRESS, LIST_PERSISTENCE, LIST_FILENAME, LIST_KEY },
priorityClasses, advancedModeEnabled, false));
+
uncompletedContent.addChild(createRequestTable(pageMaker, ctx,
uncompletedDownload, new int[] { LIST_IDENTIFIER, LIST_PRIORITY, LIST_SIZE,
LIST_MIME_TYPE, LIST_PROGRESS, LIST_PERSISTENCE, LIST_FILENAME, LIST_KEY },
priorityClasses, advancedModeEnabled, false, container));
} else {
-
uncompletedContent.addChild(createRequestTable(pageMaker, ctx,
uncompletedDownload, new int[] { LIST_FILENAME, LIST_SIZE, LIST_MIME_TYPE,
LIST_PROGRESS, LIST_PRIORITY, LIST_KEY, LIST_PERSISTENCE }, priorityClasses,
advancedModeEnabled, false));
+
uncompletedContent.addChild(createRequestTable(pageMaker, ctx,
uncompletedDownload, new int[] { LIST_FILENAME, LIST_SIZE, LIST_MIME_TYPE,
LIST_PROGRESS, LIST_PRIORITY, LIST_KEY, LIST_PERSISTENCE }, priorityClasses,
advancedModeEnabled, false, container));
}
}
@@ -767,9 +767,9 @@
HTMLNode uncompletedInfobox =
contentNode.addChild(pageMaker.getInfobox("requests_in_progress",
L10n.getString("QueueToadlet.wipU", new String[]{ "size" }, new String[]{
String.valueOf(uncompletedUpload.size()) })));
HTMLNode uncompletedContent =
pageMaker.getContentNode(uncompletedInfobox);
if (advancedModeEnabled) {
-
uncompletedContent.addChild(createRequestTable(pageMaker, ctx,
uncompletedUpload, new int[] { LIST_IDENTIFIER, LIST_PRIORITY, LIST_SIZE,
LIST_MIME_TYPE, LIST_PROGRESS, LIST_PERSISTENCE, LIST_FILENAME, LIST_KEY },
priorityClasses, advancedModeEnabled, true));
+
uncompletedContent.addChild(createRequestTable(pageMaker, ctx,
uncompletedUpload, new int[] { LIST_IDENTIFIER, LIST_PRIORITY, LIST_SIZE,
LIST_MIME_TYPE, LIST_PROGRESS, LIST_PERSISTENCE, LIST_FILENAME, LIST_KEY },
priorityClasses, advancedModeEnabled, true, container));
} else {
-
uncompletedContent.addChild(createRequestTable(pageMaker, ctx,
uncompletedUpload, new int[] { LIST_FILENAME, LIST_SIZE, LIST_MIME_TYPE,
LIST_PROGRESS, LIST_PRIORITY, LIST_KEY, LIST_PRIORITY, LIST_PERSISTENCE },
priorityClasses, advancedModeEnabled, true));
+
uncompletedContent.addChild(createRequestTable(pageMaker, ctx,
uncompletedUpload, new int[] { LIST_FILENAME, LIST_SIZE, LIST_MIME_TYPE,
LIST_PROGRESS, LIST_PRIORITY, LIST_KEY, LIST_PRIORITY, LIST_PERSISTENCE },
priorityClasses, advancedModeEnabled, true, container));
}
}
@@ -778,9 +778,9 @@
HTMLNode uncompletedInfobox =
contentNode.addChild(pageMaker.getInfobox("requests_in_progress",
L10n.getString("QueueToadlet.wipDU", new String[]{ "size" }, new String[]{
String.valueOf(uncompletedDirUpload.size()) })));
HTMLNode uncompletedContent =
pageMaker.getContentNode(uncompletedInfobox);
if (advancedModeEnabled) {
-
uncompletedContent.addChild(createRequestTable(pageMaker, ctx,
uncompletedDirUpload, new int[] { LIST_IDENTIFIER, LIST_FILES, LIST_PRIORITY,
LIST_TOTAL_SIZE, LIST_PROGRESS, LIST_PERSISTENCE, LIST_KEY }, priorityClasses,
advancedModeEnabled, true));
+
uncompletedContent.addChild(createRequestTable(pageMaker, ctx,
uncompletedDirUpload, new int[] { LIST_IDENTIFIER, LIST_FILES, LIST_PRIORITY,
LIST_TOTAL_SIZE, LIST_PROGRESS, LIST_PERSISTENCE, LIST_KEY }, priorityClasses,
advancedModeEnabled, true, container));
} else {
-
uncompletedContent.addChild(createRequestTable(pageMaker, ctx,
uncompletedDirUpload, new int[] { LIST_FILES, LIST_TOTAL_SIZE, LIST_PROGRESS,
LIST_PRIORITY, LIST_KEY, LIST_PERSISTENCE }, priorityClasses,
advancedModeEnabled, true));
+
uncompletedContent.addChild(createRequestTable(pageMaker, ctx,
uncompletedDirUpload, new int[] { LIST_FILES, LIST_TOTAL_SIZE, LIST_PROGRESS,
LIST_PRIORITY, LIST_KEY, LIST_PERSISTENCE }, priorityClasses,
advancedModeEnabled, true, container));
}
}
@@ -991,7 +991,7 @@
return insertBox;
}
- private HTMLNode createRequestTable(PageMaker pageMaker, ToadletContext
ctx, List requests, int[] columns, String[] priorityClasses, boolean
advancedModeEnabled, boolean isUpload) {
+ private HTMLNode createRequestTable(PageMaker pageMaker, ToadletContext
ctx, List requests, int[] columns, String[] priorityClasses, boolean
advancedModeEnabled, boolean isUpload, ObjectContainer container) {
HTMLNode table = new HTMLNode("table", "class", "requests");
HTMLNode headerRow = table.addChild("tr", "class",
"table-header");
headerRow.addChild("th");
@@ -1076,7 +1076,7 @@
} else if (column == LIST_TOTAL_SIZE) {
requestRow.addChild(createSizeCell(((ClientPutDir)
clientRequest).getTotalDataSize(), true, advancedModeEnabled));
} else if (column == LIST_PROGRESS) {
-
requestRow.addChild(createProgressCell(clientRequest.isStarted(), (int)
clientRequest.getFetchedBlocks(), (int) clientRequest.getFailedBlocks(), (int)
clientRequest.getFatalyFailedBlocks(), (int) clientRequest.getMinBlocks(),
(int) clientRequest.getTotalBlocks(), clientRequest.isTotalFinalized() ||
clientRequest instanceof ClientPut, isUpload));
+
requestRow.addChild(createProgressCell(clientRequest.isStarted(), (int)
clientRequest.getFetchedBlocks(container), (int)
clientRequest.getFailedBlocks(container), (int)
clientRequest.getFatalyFailedBlocks(container), (int)
clientRequest.getMinBlocks(container), (int)
clientRequest.getTotalBlocks(container), clientRequest.isTotalFinalized() ||
clientRequest instanceof ClientPut, isUpload));
} else if (column == LIST_REASON) {
requestRow.addChild(createReasonCell(clientRequest.getFailureReason()));
}
Modified: branches/db4o/freenet/src/freenet/node/fcp/ClientGet.java
===================================================================
--- branches/db4o/freenet/src/freenet/node/fcp/ClientGet.java 2008-06-25
13:35:27 UTC (rev 20677)
+++ branches/db4o/freenet/src/freenet/node/fcp/ClientGet.java 2008-06-25
13:59:47 UTC (rev 20678)
@@ -676,42 +676,54 @@
return targetFile;
}
- public double getSuccessFraction() {
+ public double getSuccessFraction(ObjectContainer container) {
+ if(persistenceType == PERSIST_FOREVER && progressPending !=
null)
+ container.activate(progressPending, 2);
if(progressPending != null) {
return progressPending.getFraction();
} else
return -1;
}
- public double getTotalBlocks() {
+ public double getTotalBlocks(ObjectContainer container) {
+ if(persistenceType == PERSIST_FOREVER && progressPending !=
null)
+ container.activate(progressPending, 2);
if(progressPending != null) {
return progressPending.getTotalBlocks();
} else
return 1;
}
- public double getMinBlocks() {
+ public double getMinBlocks(ObjectContainer container) {
+ if(persistenceType == PERSIST_FOREVER && progressPending !=
null)
+ container.activate(progressPending, 2);
if(progressPending != null) {
return progressPending.getMinBlocks();
} else
return 1;
}
- public double getFailedBlocks() {
+ public double getFailedBlocks(ObjectContainer container) {
+ if(persistenceType == PERSIST_FOREVER && progressPending !=
null)
+ container.activate(progressPending, 2);
if(progressPending != null) {
return progressPending.getFailedBlocks();
} else
return 0;
}
- public double getFatalyFailedBlocks() {
+ public double getFatalyFailedBlocks(ObjectContainer container) {
+ if(persistenceType == PERSIST_FOREVER && progressPending !=
null)
+ container.activate(progressPending, 2);
if(progressPending != null) {
return progressPending.getFatalyFailedBlocks();
} else
return 0;
}
- public double getFetchedBlocks() {
+ public double getFetchedBlocks(ObjectContainer container) {
+ if(persistenceType == PERSIST_FOREVER && progressPending !=
null)
+ container.activate(progressPending, 2);
if(progressPending != null) {
return progressPending.getFetchedBlocks();
} else
Modified: branches/db4o/freenet/src/freenet/node/fcp/ClientPutBase.java
===================================================================
--- branches/db4o/freenet/src/freenet/node/fcp/ClientPutBase.java
2008-06-25 13:35:27 UTC (rev 20677)
+++ branches/db4o/freenet/src/freenet/node/fcp/ClientPutBase.java
2008-06-25 13:59:47 UTC (rev 20678)
@@ -379,7 +379,9 @@
protected abstract String getTypeName();
- public synchronized double getSuccessFraction() {
+ public synchronized double getSuccessFraction(ObjectContainer
container) {
+ if(persistenceType == PERSIST_FOREVER && progressMessage !=
null)
+ container.activate(progressMessage, 2);
if(progressMessage != null) {
if(progressMessage instanceof SimpleProgressMessage)
return
((SimpleProgressMessage)progressMessage).getFraction();
@@ -389,7 +391,9 @@
}
- public synchronized double getTotalBlocks() {
+ public synchronized double getTotalBlocks(ObjectContainer container) {
+ if(persistenceType == PERSIST_FOREVER && progressMessage !=
null)
+ container.activate(progressMessage, 2);
if(progressMessage != null) {
if(progressMessage instanceof SimpleProgressMessage)
return
((SimpleProgressMessage)progressMessage).getTotalBlocks();
@@ -398,7 +402,9 @@
return -1;
}
- public synchronized double getMinBlocks() {
+ public synchronized double getMinBlocks(ObjectContainer container) {
+ if(persistenceType == PERSIST_FOREVER && progressMessage !=
null)
+ container.activate(progressMessage, 2);
if(progressMessage != null) {
if(progressMessage instanceof SimpleProgressMessage)
return
((SimpleProgressMessage)progressMessage).getMinBlocks();
@@ -407,7 +413,9 @@
return -1;
}
- public synchronized double getFailedBlocks() {
+ public synchronized double getFailedBlocks(ObjectContainer container) {
+ if(persistenceType == PERSIST_FOREVER && progressMessage !=
null)
+ container.activate(progressMessage, 2);
if(progressMessage != null) {
if(progressMessage instanceof SimpleProgressMessage)
return
((SimpleProgressMessage)progressMessage).getFailedBlocks();
@@ -416,7 +424,9 @@
return -1;
}
- public synchronized double getFatalyFailedBlocks() {
+ public synchronized double getFatalyFailedBlocks(ObjectContainer
container) {
+ if(persistenceType == PERSIST_FOREVER && progressMessage !=
null)
+ container.activate(progressMessage, 2);
if(progressMessage != null) {
if(progressMessage instanceof SimpleProgressMessage)
return
((SimpleProgressMessage)progressMessage).getFatalyFailedBlocks();
@@ -425,7 +435,9 @@
return -1;
}
- public synchronized double getFetchedBlocks() {
+ public synchronized double getFetchedBlocks(ObjectContainer container) {
+ if(persistenceType == PERSIST_FOREVER && progressMessage !=
null)
+ container.activate(progressMessage, 2);
if(progressMessage != null) {
if(progressMessage instanceof SimpleProgressMessage)
return
((SimpleProgressMessage)progressMessage).getFetchedBlocks();
Modified: branches/db4o/freenet/src/freenet/node/fcp/ClientRequest.java
===================================================================
--- branches/db4o/freenet/src/freenet/node/fcp/ClientRequest.java
2008-06-25 13:35:27 UTC (rev 20677)
+++ branches/db4o/freenet/src/freenet/node/fcp/ClientRequest.java
2008-06-25 13:59:47 UTC (rev 20678)
@@ -279,13 +279,13 @@
*/
public abstract SimpleFieldSet getFieldSet() throws IOException;
- public abstract double getSuccessFraction();
+ public abstract double getSuccessFraction(ObjectContainer container);
- public abstract double getTotalBlocks();
- public abstract double getMinBlocks();
- public abstract double getFetchedBlocks();
- public abstract double getFailedBlocks();
- public abstract double getFatalyFailedBlocks();
+ public abstract double getTotalBlocks(ObjectContainer container);
+ public abstract double getMinBlocks(ObjectContainer container);
+ public abstract double getFetchedBlocks(ObjectContainer container);
+ public abstract double getFailedBlocks(ObjectContainer container);
+ public abstract double getFatalyFailedBlocks(ObjectContainer container);
public abstract String getFailureReason();