net.tomp2p.futures
Class FutureDiscover

java.lang.Object
  extended by net.tomp2p.futures.BaseFutureImpl<FutureDiscover>
      extended by net.tomp2p.futures.FutureDiscover
All Implemented Interfaces:
BaseFuture, Cancellable

public class FutureDiscover
extends BaseFutureImpl<FutureDiscover>

The future that keeps track of network discovery such as discovery if its behind a NAT, the status if UPNP or NAT-PMP could be established, if there is portforwarding.

Author:
Thomas Bocek

Nested Class Summary
 
Nested classes/interfaces inherited from interface net.tomp2p.futures.BaseFuture
BaseFuture.FutureType
 
Field Summary
 
Fields inherited from class net.tomp2p.futures.BaseFutureImpl
completed, lock, reason, type
 
Constructor Summary
FutureDiscover()
           
 
Method Summary
 void done(PeerAddress ourPeerAddress, PeerAddress reporter)
          Gets called if the discovery was a success and an other peer could ping us with TCP and UDP.
 PeerAddress getPeerAddress()
          The peerAddress where we are reachable
 PeerAddress getReporter()
           
 boolean isDiscoveredTCP()
          Checks if this peer can be reached via TCP.
 boolean isDiscoveredUDP()
          Checks if this peer can be reached via UDP.
 void setDiscoveredTCP()
          Intermediate result if TCP has been discovered.
 void setDiscoveredUDP()
          Intermediate result if UDP has been discovered.
 void setTimeout(org.jboss.netty.util.Timer timer, int delaySec)
          Creates a new future object and creates a timer that fires failed after a timeout.
 
Methods inherited from class net.tomp2p.futures.BaseFutureImpl
addCancellation, addListener, addListener, await, await, awaitListeners, awaitUninterruptibly, awaitUninterruptibly, cancel, getFailedReason, getType, isCompleted, isFailed, isSuccess, notifyListerenrs, removeListener, self, setCompletedAndNotify, setFailed, setFailed, setFailed, setFailed, setFailed
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FutureDiscover

public FutureDiscover()
Method Detail

setTimeout

public void setTimeout(org.jboss.netty.util.Timer timer,
                       int delaySec)
Creates a new future object and creates a timer that fires failed after a timeout.

Parameters:
timer - The timer to use
delaySec - The delay in seconds

done

public void done(PeerAddress ourPeerAddress,
                 PeerAddress reporter)
Gets called if the discovery was a success and an other peer could ping us with TCP and UDP.

Parameters:
peerAddress - The peerAddress of our server
peerAddress - The peerAddress of the peer that reported our address

getPeerAddress

public PeerAddress getPeerAddress()
The peerAddress where we are reachable

Returns:
The new un-firewalled peerAddress of this peer

getReporter

public PeerAddress getReporter()
Returns:
The reporter that told us what peer address we have

setDiscoveredTCP

public void setDiscoveredTCP()
Intermediate result if TCP has been discovered. Set discoveredTCP True if other peer could reach us with a TCP ping.


setDiscoveredUDP

public void setDiscoveredUDP()
Intermediate result if UDP has been discovered. Set discoveredUDP True if other peer could reach us with a UDP ping.


isDiscoveredTCP

public boolean isDiscoveredTCP()
Checks if this peer can be reached via TCP.

Returns:
True if this peer can be reached via TCP from outside.

isDiscoveredUDP

public boolean isDiscoveredUDP()
Checks if this peer can be reached via UDP.

Returns:
True if this peer can be reached via UDP from outside.


Copyright © 2013. All Rights Reserved.