Author: j16sdiz
Date: 2008-10-24 12:14:07 +0000 (Fri, 24 Oct 2008)
New Revision: 23074
Modified:
trunk/freenet/src/freenet/client/HighLevelSimpleClientImpl.java
trunk/freenet/src/freenet/client/InsertContext.java
trunk/freenet/src/freenet/support/io/NullPersistentFileTracker.java
Log:
singleton for NullPersistentFileTracker
Modified: trunk/freenet/src/freenet/client/HighLevelSimpleClientImpl.java
===================================================================
--- trunk/freenet/src/freenet/client/HighLevelSimpleClientImpl.java
2008-10-24 12:13:42 UTC (rev 23073)
+++ trunk/freenet/src/freenet/client/HighLevelSimpleClientImpl.java
2008-10-24 12:14:07 UTC (rev 23074)
@@ -218,7 +218,7 @@
public InsertContext getInsertContext(boolean forceNonPersistent) {
return new InsertContext(bucketFactory, forceNonPersistent ?
bucketFactory : persistentBucketFactory,
- forceNonPersistent ? new
NullPersistentFileTracker() : persistentFileTracker,
+ forceNonPersistent ?
NullPersistentFileTracker.getInstance() : persistentFileTracker,
random, INSERT_RETRIES,
CONSECUTIVE_RNFS_ASSUME_SUCCESS,
SPLITFILE_INSERT_THREADS,
SPLITFILE_BLOCKS_PER_SEGMENT, SPLITFILE_CHECK_BLOCKS_PER_SEGMENT,
globalEventProducer, cacheLocalRequests,
core.uskManager, blockEncoder, core.getExecutor());
Modified: trunk/freenet/src/freenet/client/InsertContext.java
===================================================================
--- trunk/freenet/src/freenet/client/InsertContext.java 2008-10-24 12:13:42 UTC
(rev 23073)
+++ trunk/freenet/src/freenet/client/InsertContext.java 2008-10-24 12:14:07 UTC
(rev 23074)
@@ -57,7 +57,7 @@
}
public InsertContext(InsertContext ctx, SimpleEventProducer producer,
boolean forceNonPersistent) {
- this.persistentFileTracker = forceNonPersistent ? new
NullPersistentFileTracker() : ctx.persistentFileTracker;
+ this.persistentFileTracker = forceNonPersistent ?
NullPersistentFileTracker.getInstance() : ctx.persistentFileTracker;
this.uskManager = ctx.uskManager;
this.bf = ctx.bf;
this.persistentBucketFactory = forceNonPersistent ? ctx.bf :
ctx.persistentBucketFactory;
Modified: trunk/freenet/src/freenet/support/io/NullPersistentFileTracker.java
===================================================================
--- trunk/freenet/src/freenet/support/io/NullPersistentFileTracker.java
2008-10-24 12:13:42 UTC (rev 23073)
+++ trunk/freenet/src/freenet/support/io/NullPersistentFileTracker.java
2008-10-24 12:14:07 UTC (rev 23074)
@@ -8,6 +8,16 @@
import freenet.support.api.Bucket;
public class NullPersistentFileTracker implements PersistentFileTracker {
+ private static NullPersistentFileTracker instance;
+
+ public static synchronized NullPersistentFileTracker getInstance() {
+ if (instance == null)
+ instance = new NullPersistentFileTracker();
+ return instance;
+ }
+
+ private NullPersistentFileTracker() {
+ }
public void register(File file) {
// Do nothing
@@ -33,5 +43,4 @@
public long getID(File file) {
return 0;
}
-
}