| Home >> All >> Freenet >> [ message Javadoc ] |
Source code: Freenet/message/HandshakeRequest.java
1 /* 2 This code is part of the Java Adaptive Network Client by Ian Clarke. 3 It is distributed under the GNU Public Licence (GPL) version 2. See 4 http://www.gnu.org/ for further details of the GPL. 5 */ 6 7 /** 8 * This is the HandshakeRequest message 9 * 10 * @author Brandon Wiley (blanu@uts.cc.utexas.edu) 11 **/ 12 13 package Freenet.message; 14 import Freenet.*; 15 import Freenet.node.*; 16 import java.util.*; 17 import Freenet.support.*; 18 19 public class HandshakeRequest extends Handshake 20 { 21 22 public static final String messageName = "HandshakeRequest"; 23 24 private boolean keepalive; 25 26 public HandshakeRequest(long idnum) { 27 super(idnum); 28 } 29 30 31 public HandshakeRequest(RawMessage raw) throws InvalidMessageException { 32 super(raw); 33 } 34 35 public MessageMemory pReceived(Node n, MessageMemory sb) 36 { 37 HandshakeReply shake = new HandshakeReply(id); 38 39 try { 40 ConnectionHandler ch; 41 if (receivedWith == null) { 42 ch = n.connect(source); 43 shake.keepAlive = false; 44 } else if (!receivedWith.isOpen()) { 45 ch = n.connect(source); 46 } else 47 ch = receivedWith; 48 shake.sending(n,ch); 49 ch.sendMessage(shake); 50 51 } catch(SendFailedException e) {Logger.log("HandshakeRequest.java","Could not send handshake reply",Logger.MINOR); 52 } catch(ConnectFailedException e) {Logger.log("HandshakeRequest.java","Could not send handshake reply",Logger.MINOR); 53 } 54 return null; 55 } 56 57 public RawMessage toRawMessage() 58 { 59 RawMessage r = super.toRawMessage(); 60 r.messageType="HandshakeRequest"; 61 return r; 62 } 63 64 protected MessageMemory timeOut(Node n, MessageMemory sb) { 65 return pReceived(n, sb); 66 } 67 68 }