Added synchronization to prevent concurrency exceptions

This commit is contained in:
Joshua Kissoon 2014-05-05 14:54:49 +05:30
parent 0c4a40d9ca
commit d920f2621e
5 changed files with 9 additions and 9 deletions

View File

@ -10,11 +10,11 @@ import java.io.File;
public class DefaultConfiguration implements KadConfiguration public class DefaultConfiguration implements KadConfiguration
{ {
private final static long RESTORE_INTERVAL = 10 * 1000; // Default at 1 hour private final static long RESTORE_INTERVAL = 5 * 1000; // Default at 1 hour
private final static long RESPONSE_TIMEOUT = 1500; private final static long RESPONSE_TIMEOUT = 1500;
private final static long OPERATION_TIMEOUT = 3000; private final static long OPERATION_TIMEOUT = 3000;
private final static int CONCURRENCY = 10; private final static int CONCURRENCY = 10;
private final static int K = 10; private final static int K = 4;
private final static int RCSIZE = 3; private final static int RCSIZE = 3;
private final static int STALE = 1; private final static int STALE = 1;
private final static String LOCAL_FOLDER = "kademlia"; private final static String LOCAL_FOLDER = "kademlia";

View File

@ -100,7 +100,7 @@ public class DHT
/* We have this content, but not the latest version, lets delete it so the new version will be added below */ /* We have this content, but not the latest version, lets delete it so the new version will be added below */
try try
{ {
System.out.println("Removing older content to update it"); //System.out.println("Removing older content to update it");
this.remove(content.getContentMetadata()); this.remove(content.getContentMetadata());
} }
catch (ContentNotFoundException ex) catch (ContentNotFoundException ex)
@ -116,7 +116,7 @@ public class DHT
*/ */
try try
{ {
System.out.println("Adding new content."); //System.out.println("Adding new content.");
/* Keep track of this content in the entries manager */ /* Keep track of this content in the entries manager */
StorageEntryMetadata sEntry = this.entriesManager.put(content.getContentMetadata()); StorageEntryMetadata sEntry = this.entriesManager.put(content.getContentMetadata());
@ -292,7 +292,7 @@ public class DHT
/** /**
* @return A List of all StorageEntries for this node * @return A List of all StorageEntries for this node
*/ */
public List<StorageEntryMetadata> getStorageEntries() public synchronized List<StorageEntryMetadata> getStorageEntries()
{ {
return entriesManager.getAllEntries(); return entriesManager.getAllEntries();
} }

View File

@ -143,7 +143,7 @@ class StoredContentManager
/** /**
* @return A list of all storage entries * @return A list of all storage entries
*/ */
public List<StorageEntryMetadata> getAllEntries() public synchronized List<StorageEntryMetadata> getAllEntries()
{ {
List<StorageEntryMetadata> entriesRet = new ArrayList<>(); List<StorageEntryMetadata> entriesRet = new ArrayList<>();

View File

@ -35,8 +35,8 @@ public class ContentLookupReceiver implements Receiver
ContentLookupMessage msg = (ContentLookupMessage) incoming; ContentLookupMessage msg = (ContentLookupMessage) incoming;
this.localNode.getRoutingTable().insert(msg.getOrigin()); this.localNode.getRoutingTable().insert(msg.getOrigin());
System.out.println("Received request for content with GetParameter" + msg.getParameters()); //System.out.println("Received request for content with GetParameter" + msg.getParameters());
System.out.println("Have Content? " + this.dht.contains(msg.getParameters())); //System.out.println("Have Content? " + this.dht.contains(msg.getParameters()));
/* Check if we can have this data */ /* Check if we can have this data */
if (this.dht.contains(msg.getParameters())) if (this.dht.contains(msg.getParameters()))

View File

@ -57,7 +57,7 @@ public class BucketRefreshOperation implements Operation
} }
catch (IOException e) catch (IOException e)
{ {
System.err.println("Bucket Refresh Operation Failed. Msg: " + e.getMessage()); //System.err.println("Bucket Refresh Operation Failed. Msg: " + e.getMessage());
} }
} }
}.start(); }.start();