View Javadoc

1   package org.xvsm.lookup.gnutella.threads;
2   
3   import java.net.ServerSocket;
4   import java.net.Socket;
5   
6   import org.xvsm.lookup.gnutella.GnutellaPeer;
7   
8   /***
9    * thread, which listens for incoming traffic from other peers
10   * 
11   * @author Hannu-Daniel Goiss
12   */
13  public class ListenerThread extends Thread {
14  	private int port;
15  	private GnutellaPeer peer;
16  
17  	public ListenerThread(int port, GnutellaPeer peer) {
18  		this.port = port;
19  		this.peer = peer;
20  	}
21  
22  	public void run() {
23  		try {
24  			ServerSocket serverSocket = new ServerSocket(this.port);
25  
26  			while (true) {
27  				Socket socket = serverSocket.accept();
28  
29  				try {
30  					ConnectionThread ct = new ConnectionThread(this.peer,
31  							socket);
32  					ct.run();
33  				} catch (Exception e) {
34  					e.printStackTrace();
35  				}
36  			}
37  		} catch (Exception e) {
38  			e.printStackTrace();
39  		}
40  	}
41  }