public class FutureDHT extends BaseFutureImpl<FutureDHT> implements FutureCleanup
BaseFuture.FutureType
completed, lock, reason, type
Constructor and Description |
---|
FutureDHT()
Default constructor.
|
FutureDHT(int min,
EvaluatingSchemeDHT evaluationScheme,
FutureCreate<FutureDHT> futureCreate)
Creates a new DHT future object that keeps track of the status of the DHT operations.
|
Modifier and Type | Method and Description |
---|---|
void |
addCleanup(Cancellable cancellable)
Add cancel operations.
|
void |
addRequests(FutureResponse futureResponse)
Adds all requests that have been created for the DHT operations.
|
Object |
getAttachement() |
double |
getAvgStoredKeys() |
Object |
getChannelBuffer()
Return the data from send_direct (Netty buffer) after evaluation.
|
Data |
getData() |
Map<Number160,Data> |
getDataMap()
Return the data from get() after evaluation.
|
DigestResult |
getDigest()
Return the digest information from the get() after evaluation.
|
Number160 |
getDomainKey() |
Collection<Number480> |
getEvalKeys()
Returns the keys that have been stored or removed after evaluation.
|
FutureCreate<FutureDHT> |
getFutureCreate()
Returns the future object that keeps information about future object, based on this object.
|
FutureForkJoin<FutureResponse> |
getFutureRequests()
Returns back those futures that are still running.
|
FutureRouting |
getFutureRouting()
Returns the future object that was used for the routing.
|
Collection<Number160> |
getKeys()
Deprecated.
|
Number160 |
getLocationKey() |
Object |
getObject()
Return the data from send_direct (Object) after evaluation.
|
Map<PeerAddress,Map<Number160,Data>> |
getRawData()
Returns the raw data from the get operation.
|
Map<PeerAddress,DigestResult> |
getRawDigest() |
Map<PeerAddress,org.jboss.netty.buffer.ChannelBuffer> |
getRawDirectData1()
Return raw data from send_dircet (Netty buffer).
|
Map<PeerAddress,Object> |
getRawDirectData2()
Return raw data from send_dircet (Object).
|
Map<PeerAddress,Collection<Number160>> |
getRawKeys()
Returns the raw keys from the storage or removal operation.
|
Map<PeerAddress,Collection<Number480>> |
getRawKeys480() |
boolean |
isMinReached()
Checks if the minimum of expected results have been reached.
|
boolean |
isReleaseEarly() |
void |
releaseEarly()
Flag to release the resources (connections) early.
|
void |
repeated(FutureDHT futureDHT)
Called for futures created based on this future.
|
void |
setDirectData1(Map<PeerAddress,org.jboss.netty.buffer.ChannelBuffer> rawChannels)
Finish the future and set the keys and data that have send directly using the Netty buffer.
|
void |
setDirectData2(Map<PeerAddress,Object> rawObjects)
Finish the future and set the keys and data that have send directly using an object.
|
void |
setDone(Object attachement)
Finish the future and set a general purpose attachement.
|
void |
setFutureRouting(FutureRouting futureRouting)
Sets the future object that was used for the routing.
|
void |
setReceivedData(Number160 locationKey,
Number160 domainKey,
Map<PeerAddress,Map<Number160,Data>> rawData)
Finish the future and set the keys and data that have been received.
|
void |
setReceivedDigest(Number160 locationKey,
Number160 domainKey,
Map<PeerAddress,DigestResult> rawDigest)
Finishes the future and set the digest information that have been received.
|
void |
setRemovedKeys(Number160 locationKey,
Number160 domainKey,
Map<PeerAddress,Collection<Number160>> rawKeys)
Finish the future and set the keys that have been removed.
|
void |
setStoredKeys(Number160 locationKey,
Number160 domainKey,
Map<PeerAddress,Collection<Number160>> rawKeys,
Map<PeerAddress,Collection<Number480>> rawKeys480)
Finish the future and set the keys that have been stored.
|
void |
shutdown()
Shutdown cancels all pending futures.
|
addCancellation, addListener, addListener, await, await, awaitListeners, awaitUninterruptibly, awaitUninterruptibly, cancel, getFailedReason, getType, isCompleted, isFailed, isSuccess, notifyListerenrs, removeListener, self, setCompletedAndNotify, setFailed, setFailed, setFailed, setFailed, setFailed
public FutureDHT()
public FutureDHT(int min, EvaluatingSchemeDHT evaluationScheme, FutureCreate<FutureDHT> futureCreate)
min
- The minimum of expected resultsevaluationScheme
- The scheme to evaluate results from multiple peersfutureCreate
- The object to keep track of the futures created based on this futurepublic void setDone(Object attachement)
attachement
- General purpose attachementpublic Object getAttachement()
setDone(Object)
.public void setRemovedKeys(Number160 locationKey, Number160 domainKey, Map<PeerAddress,Collection<Number160>> rawKeys)
domainKey
- The domain keylocationKey
- The location keyrawKeys
- The removed keys with information from which peer it has been removedpublic void setStoredKeys(Number160 locationKey, Number160 domainKey, Map<PeerAddress,Collection<Number160>> rawKeys, Map<PeerAddress,Collection<Number480>> rawKeys480)
getAvgStoredKeys()
or if the evaluation should be done by the user, use getRawKeys()
.domainKey
- The domain keylocationKey
- The location keyrawKeys
- The keys that have been stored with information on which peer it has been storedrawKeys480
- The keys with locationKey and domainKey Flag if the user requested putIfAbsentpublic double getAvgStoredKeys()
public void setReceivedData(Number160 locationKey, Number160 domainKey, Map<PeerAddress,Map<Number160,Data>> rawData)
domainKey
- The domain keylocationKey
- The location keyrawData
- The keys and data that have been received with information from which peer it has been received.public void setReceivedDigest(Number160 locationKey, Number160 domainKey, Map<PeerAddress,DigestResult> rawDigest)
domainKey
- The domain keylocationKey
- The location keyrawDigest
- The hashes of the content stored with information from which peer it has been received.public void setDirectData1(Map<PeerAddress,org.jboss.netty.buffer.ChannelBuffer> rawChannels)
rawChannels
- The raw data that have been sent directly with information on which peer it has been sentpublic void setDirectData2(Map<PeerAddress,Object> rawObjects)
rawObjects
- The objects that have been sent directly with information on which peer it has been sentpublic Map<PeerAddress,Collection<Number160>> getRawKeys()
public Map<PeerAddress,Map<Number160,Data>> getRawData()
public Map<PeerAddress,DigestResult> getRawDigest()
public Map<PeerAddress,org.jboss.netty.buffer.ChannelBuffer> getRawDirectData1()
public Map<PeerAddress,Object> getRawDirectData2()
public boolean isMinReached()
@Deprecated public Collection<Number160> getKeys()
getEvalKeys()
instead of this method.public Collection<Number480> getEvalKeys()
getEvalKeys()
instead of this method.public Map<Number160,Data> getDataMap()
public Data getData()
public DigestResult getDigest()
public Object getObject()
public Object getChannelBuffer()
public Map<PeerAddress,Collection<Number480>> getRawKeys480()
public Number160 getLocationKey()
public Number160 getDomainKey()
public FutureCreate<FutureDHT> getFutureCreate()
public FutureRouting getFutureRouting()
public void setFutureRouting(FutureRouting futureRouting)
futureRouting
- The future object to setpublic FutureForkJoin<FutureResponse> getFutureRequests()
public void addRequests(FutureResponse futureResponse)
futureResponse
- The futurRepsonse that has been createdpublic void repeated(FutureDHT futureDHT)
futureDHT
- The newly created futurepublic void addCleanup(Cancellable cancellable)
addCleanup
in interface FutureCleanup
cancellable
- The operation that can be canceled.public void shutdown()
public void releaseEarly()
public boolean isReleaseEarly()
Copyright © 2013. All Rights Reserved.