net.tomp2p.futures
Class FutureDHT
java.lang.Object
net.tomp2p.futures.BaseFutureImpl
net.tomp2p.futures.FutureDHT
- All Implemented Interfaces:
- BaseFuture, Cancellable
public class FutureDHT
- extends BaseFutureImpl
|
Method Summary |
void |
addPending(FutureResponse futureResponse)
|
void |
cancel()
|
void |
created(FutureDHT futureDHT)
|
Object |
getChannelBuffer()
|
Map<Number160,Data> |
getData()
|
FutureCreate<FutureDHT> |
getFutureCreate()
|
FutureRouting |
getFutureRouting()
Returns the future object that was used for the routing. |
Collection<Number160> |
getKeys()
|
Object |
getObject()
|
Map<PeerAddress,Map<Number160,Data>> |
getRawData()
|
Map<PeerAddress,org.jboss.netty.buffer.ChannelBuffer> |
getRawDirectData1()
|
Map<PeerAddress,Object> |
getRawDirectData2()
|
Map<PeerAddress,Collection<Number160>> |
getRawKeys()
|
FutureForkJoin<FutureResponse> |
getRunningFutures()
Returns back those futures that are still running. |
boolean |
isMinReached()
|
void |
setData(Map<PeerAddress,Map<Number160,Data>> rawData)
|
void |
setDirectData1(Map<PeerAddress,org.jboss.netty.buffer.ChannelBuffer> rawChannels)
|
void |
setDirectData2(Map<PeerAddress,Object> rawObjects)
|
void |
setRemovedKeys(Map<PeerAddress,Collection<Number160>> rawKeys)
|
void |
setScheduledFuture(ScheduledFuture<?> scheduledFuture,
List<ScheduledFuture<?>> scheduledFutures)
|
void |
setStoredKeys(Map<PeerAddress,Collection<Number160>> rawKeys,
boolean ifAbsent)
|
| Methods inherited from class net.tomp2p.futures.BaseFutureImpl |
addCancellation, addListener, await, await, awaitUninterruptibly, awaitUninterruptibly, getFailedReason, getType, isCompleted, isFailed, isSuccess, notifyListerenrs, removeCancellation, removeListener, setCompletedAndNotify, setFailed |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
FutureDHT
public FutureDHT()
FutureDHT
public FutureDHT(int min,
EvaluatingSchemeDHT evaluationScheme,
FutureCreate<FutureDHT> futureCreate,
FutureRouting futureRouting)
created
public void created(FutureDHT futureDHT)
setRemovedKeys
public void setRemovedKeys(Map<PeerAddress,Collection<Number160>> rawKeys)
setStoredKeys
public void setStoredKeys(Map<PeerAddress,Collection<Number160>> rawKeys,
boolean ifAbsent)
setData
public void setData(Map<PeerAddress,Map<Number160,Data>> rawData)
getRawKeys
public Map<PeerAddress,Collection<Number160>> getRawKeys()
getKeys
public Collection<Number160> getKeys()
getRawData
public Map<PeerAddress,Map<Number160,Data>> getRawData()
getData
public Map<Number160,Data> getData()
isMinReached
public boolean isMinReached()
setDirectData1
public void setDirectData1(Map<PeerAddress,org.jboss.netty.buffer.ChannelBuffer> rawChannels)
getRawDirectData1
public Map<PeerAddress,org.jboss.netty.buffer.ChannelBuffer> getRawDirectData1()
setDirectData2
public void setDirectData2(Map<PeerAddress,Object> rawObjects)
getRawDirectData2
public Map<PeerAddress,Object> getRawDirectData2()
getFutureCreate
public FutureCreate<FutureDHT> getFutureCreate()
getFutureRouting
public FutureRouting getFutureRouting()
- Returns the future object that was used for the routing. Before the
FutureDHT is used, FutureRouting has to be completed successfully.
- Returns:
- The future object during the previous routing, or null if routing
failed completely.
setScheduledFuture
public void setScheduledFuture(ScheduledFuture<?> scheduledFuture,
List<ScheduledFuture<?>> scheduledFutures)
cancel
public void cancel()
- Specified by:
cancel in interface Cancellable- Overrides:
cancel in class BaseFutureImpl
getObject
public Object getObject()
getChannelBuffer
public Object getChannelBuffer()
addPending
public void addPending(FutureResponse futureResponse)
getRunningFutures
public FutureForkJoin<FutureResponse> getRunningFutures()
- Returns back those futures that are still running. If 6 storage futures are started at the same time and
5 of them finish, and we specified that we are fine if 5 finishes, then futureDHT returns success. However, the
future that may still be running is the one that stores the content to the closest peer. For testing this is not
acceptable, thus after waiting for futureDHT, one needs to wait for the running futures as well.
- Returns:
- A future that finishes if all running futures are finished.
Copyright © 2011. All Rights Reserved.