?? tcpconnectionlistener.java
字號:
/* * TCPConnectionListener.java * * Created on November 19, 2003, 10:38 AM */package gov.nist.applet.phone.media.protocol.transport;import java.net.ServerSocket;import java.net.Socket;/** * This class is a thread waiting for connection on this TCP port and ip address * As soon as it gets a connection it notifies the Adapter for RTP. * @author DERUELLE Jean */public class TCPConnectionListener implements Runnable { private ServerSocket serverSocket; private Socket socket; //private TCPReceiveAdapter adapter; private Thread listener; private boolean ctrl; private boolean connected; /** Creates a new instance of TCPConnectionListener. * @param serverSocket - ServerSocket that will be waiting for connection. * @param adapter - the TCP Adapter for RTP we have to notify that we get a new connection. * @param ctrl - boolean to know if it's RTP connection (false) or a RTCP connection (true). */ public TCPConnectionListener(ServerSocket serverSocket, boolean ctrl) { this.serverSocket=serverSocket; //this.adapter=adapter; this.ctrl=ctrl; connected=false; } /** * Start the listener thread. */ public void start(){ if(listener==null){ listener=new Thread(this); listener.setName("TCPConnectionListener Thread"); } listener.start(); } /** * Task of the listener thread. */ public void run() { try{ socket=serverSocket.accept(); System.out.println("Socket from "+ socket.getInetAddress() + " connected to the port "+socket.getLocalPort()+ " control : "+ctrl); //adapter.setRemoteSocket(socket,ctrl); connected=true; listener=null; } catch(java.io.IOException ioe){ ioe.printStackTrace(); } } /** * Tells if this listener for TCP Connection has received a connection * @return the socket when the listener has received a new connection */ public Socket waitForConnections(){ while(!connected){ try{ Thread.sleep(1); } catch(InterruptedException ie){ ie.printStackTrace(); } } return socket; }}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -