net.tomp2p.rpc
Class PeerExchangeRPC

java.lang.Object
  extended by org.jboss.netty.channel.SimpleChannelHandler
      extended by net.tomp2p.rpc.ReplyHandler
          extended by net.tomp2p.rpc.PeerExchangeRPC
All Implemented Interfaces:
org.jboss.netty.channel.ChannelDownstreamHandler, org.jboss.netty.channel.ChannelHandler, org.jboss.netty.channel.ChannelUpstreamHandler

public class PeerExchangeRPC
extends ReplyHandler


Nested Class Summary
 
Nested classes/interfaces inherited from interface org.jboss.netty.channel.ChannelHandler
org.jboss.netty.channel.ChannelHandler.Sharable
 
Field Summary
static int SENT_PEERS_CACHE_SIZE
           
 
Constructor Summary
PeerExchangeRPC(PeerBean peerBean, ConnectionBean connectionBean)
           
 
Method Summary
 Message handleResponse(Message message, boolean sign)
          If the message is OK, that has been previously checked by the user using checkMessage, a reply to the message is generated here.
 FutureResponse peerExchange(PeerAddress remotePeer, Number160 locationKey, Number160 domainKey, boolean isReplication, ChannelCreator channelCreator, boolean forceTCP)
          Peer exchange (PEX) information about other peers from the swarm, to not ask the primary trackers too often.
 
Methods inherited from class net.tomp2p.rpc.ReplyHandler
createMessage, createResponseMessage, exceptionCaught, forwardMessage, getConnectionBean, getPeerBean, registerIoHandler, setSignReply
 
Methods inherited from class org.jboss.netty.channel.SimpleChannelHandler
bindRequested, channelBound, channelClosed, channelConnected, channelDisconnected, channelInterestChanged, channelOpen, channelUnbound, childChannelClosed, childChannelOpen, closeRequested, connectRequested, disconnectRequested, handleDownstream, handleUpstream, messageReceived, setInterestOpsRequested, unbindRequested, writeComplete, writeRequested
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SENT_PEERS_CACHE_SIZE

public static final int SENT_PEERS_CACHE_SIZE
See Also:
Constant Field Values
Constructor Detail

PeerExchangeRPC

public PeerExchangeRPC(PeerBean peerBean,
                       ConnectionBean connectionBean)
Method Detail

peerExchange

public FutureResponse peerExchange(PeerAddress remotePeer,
                                   Number160 locationKey,
                                   Number160 domainKey,
                                   boolean isReplication,
                                   ChannelCreator channelCreator,
                                   boolean forceTCP)
Peer exchange (PEX) information about other peers from the swarm, to not ask the primary trackers too often. This is an RPC.

Parameters:
remotePeer - The remote peer to send this request
locationKey - The location key
domainKey - The domain key
isReplication - Set to true if the PEX is started as replication. This means that this peer learned that an other peer is closer and sends tracker information to that peer.
channelCreator - The channel creator that creates connections
forceTCP - Set to true if the communication should be TCP, default is UDP
Returns:
The future response to keep track of future events

handleResponse

public Message handleResponse(Message message,
                              boolean sign)
                       throws Exception
Description copied from class: ReplyHandler
If the message is OK, that has been previously checked by the user using checkMessage, a reply to the message is generated here.

Specified by:
handleResponse in class ReplyHandler
Parameters:
message - Request message
Throws:
Exception


Copyright © 2013. All Rights Reserved.