net.tomp2p.p2p
Class DistributedHashTable
java.lang.Object
net.tomp2p.p2p.DistributedHashTable
public class DistributedHashTable
- extends Object
Method Summary |
FutureDHT |
add(Number160 locationKey,
Number160 domainKey,
Collection<Data> dataSet,
RoutingConfiguration routingConfiguration,
RequestP2PConfiguration p2pConfiguration,
boolean protectDomain,
boolean signMessage,
boolean isManualCleanup,
boolean list,
FutureCreate<FutureDHT> futureCreate,
FutureChannelCreator futureChannelCreator,
ConnectionReservation connectionReservation)
|
static RequestP2PConfiguration |
adjustConfiguration(RequestP2PConfiguration p2pConfiguration,
SortedMap<PeerAddress,DigestInfo> directHitsDigest)
Adjusts the number of minimum requests in the P2P configuration. |
FutureDHT |
direct(Number160 locationKey,
org.jboss.netty.buffer.ChannelBuffer buffer,
boolean raw,
RoutingConfiguration routingConfiguration,
RequestP2PConfiguration p2pConfiguration,
FutureCreate<FutureDHT> futureCreate,
boolean cancelOnFinish,
boolean manualCleanup,
FutureChannelCreator futureChannelCreator,
ConnectionReservation connectionReservation)
|
FutureDHT |
get(Number160 locationKey,
Number160 domainKey,
Collection<Number160> contentKeys,
SimpleBloomFilter<Number160> keyBloomFilter,
SimpleBloomFilter<Number160> contentBloomFilter,
RoutingConfiguration routingConfiguration,
RequestP2PConfiguration p2pConfiguration,
EvaluatingSchemeDHT evaluationScheme,
boolean signMessage,
boolean digest,
boolean returnBloomFilter,
boolean range,
boolean isManualCleanup,
FutureChannelCreator futureChannelCreator,
ConnectionReservation connectionReservation)
|
FutureDHT |
parallelRequests(RequestP2PConfiguration p2pConfiguration,
NavigableSet<PeerAddress> queue,
boolean cancleOnFinish,
FutureChannelCreator futureChannelCreator,
ConnectionReservation connectionReservation,
boolean manualCleanup,
DistributedHashTable.Operation operation)
Creates RPCs and executes them parallel. |
FutureDHT |
put(Number160 locationKey,
Number160 domainKey,
Map<Number160,Data> dataMap,
RoutingConfiguration routingConfiguration,
RequestP2PConfiguration p2pConfiguration,
boolean putIfAbsent,
boolean protectDomain,
boolean signMessage,
boolean isManualCleanup,
FutureCreate<FutureDHT> futureCreate,
FutureChannelCreator futureChannelCreator,
ConnectionReservation connectionReservation)
|
FutureDHT |
remove(Number160 locationKey,
Number160 domainKey,
Collection<Number160> contentKeys,
RoutingConfiguration routingConfiguration,
RequestP2PConfiguration p2pConfiguration,
boolean returnResults,
boolean signMessage,
boolean isManualCleanup,
FutureCreate<FutureDHT> futureCreate,
FutureChannelCreator futureChannelCreator,
ConnectionReservation connectionReservation)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DistributedHashTable
public DistributedHashTable(DistributedRouting routing,
StorageRPC storeRCP,
DirectDataRPC directDataRPC)
add
public FutureDHT add(Number160 locationKey,
Number160 domainKey,
Collection<Data> dataSet,
RoutingConfiguration routingConfiguration,
RequestP2PConfiguration p2pConfiguration,
boolean protectDomain,
boolean signMessage,
boolean isManualCleanup,
boolean list,
FutureCreate<FutureDHT> futureCreate,
FutureChannelCreator futureChannelCreator,
ConnectionReservation connectionReservation)
direct
public FutureDHT direct(Number160 locationKey,
org.jboss.netty.buffer.ChannelBuffer buffer,
boolean raw,
RoutingConfiguration routingConfiguration,
RequestP2PConfiguration p2pConfiguration,
FutureCreate<FutureDHT> futureCreate,
boolean cancelOnFinish,
boolean manualCleanup,
FutureChannelCreator futureChannelCreator,
ConnectionReservation connectionReservation)
put
public FutureDHT put(Number160 locationKey,
Number160 domainKey,
Map<Number160,Data> dataMap,
RoutingConfiguration routingConfiguration,
RequestP2PConfiguration p2pConfiguration,
boolean putIfAbsent,
boolean protectDomain,
boolean signMessage,
boolean isManualCleanup,
FutureCreate<FutureDHT> futureCreate,
FutureChannelCreator futureChannelCreator,
ConnectionReservation connectionReservation)
get
public FutureDHT get(Number160 locationKey,
Number160 domainKey,
Collection<Number160> contentKeys,
SimpleBloomFilter<Number160> keyBloomFilter,
SimpleBloomFilter<Number160> contentBloomFilter,
RoutingConfiguration routingConfiguration,
RequestP2PConfiguration p2pConfiguration,
EvaluatingSchemeDHT evaluationScheme,
boolean signMessage,
boolean digest,
boolean returnBloomFilter,
boolean range,
boolean isManualCleanup,
FutureChannelCreator futureChannelCreator,
ConnectionReservation connectionReservation)
remove
public FutureDHT remove(Number160 locationKey,
Number160 domainKey,
Collection<Number160> contentKeys,
RoutingConfiguration routingConfiguration,
RequestP2PConfiguration p2pConfiguration,
boolean returnResults,
boolean signMessage,
boolean isManualCleanup,
FutureCreate<FutureDHT> futureCreate,
FutureChannelCreator futureChannelCreator,
ConnectionReservation connectionReservation)
parallelRequests
public FutureDHT parallelRequests(RequestP2PConfiguration p2pConfiguration,
NavigableSet<PeerAddress> queue,
boolean cancleOnFinish,
FutureChannelCreator futureChannelCreator,
ConnectionReservation connectionReservation,
boolean manualCleanup,
DistributedHashTable.Operation operation)
- Creates RPCs and executes them parallel.
- Parameters:
p2pConfiguration
- The configuration that specifies e.g. how many parallel requests there are.queue
- The sorted set that will be queries. The first RPC takes the first in the queue.futureDHT
- The future object that tracks the progresscancleOnFinish
- Set to true if the operation should be canceled (e.g. file transfer) if the future has
finished.operation
- The operation that creates the request
adjustConfiguration
public static RequestP2PConfiguration adjustConfiguration(RequestP2PConfiguration p2pConfiguration,
SortedMap<PeerAddress,DigestInfo> directHitsDigest)
- Adjusts the number of minimum requests in the P2P configuration. When we query x peers for the get() operation
and they have y different data stored (y <= x), then set the minimum to y or to the value the user set if its
smaller. If no data is found, then return 0, so we don't start P2P RPCs.
- Parameters:
p2pConfiguration
- The old P2P configuration with the user specified minimum resultdirectHitsDigest
- The digest information from the routing process
- Returns:
- The new RequestP2PConfiguration with the new minimum result
Copyright © 2013. All Rights Reserved.