Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

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  }