RTSPServer.java
上传用户:gmxazy
上传日期:2022-06-06
资源大小:70k
文件大小:2k
源码类别:

J2ME

开发平台:

Java

  1. import java.io.*;
  2. import java.util.*;
  3. import javax.microedition.io.*;
  4. /**
  5.  * Very simple RTSP server. It starts up on port 8554 and waits for incoming
  6.  * client connections. Each connection is handled in its own thread.
  7.  */
  8. public class RTSPServer implements Runnable {
  9.     private boolean running;
  10.     
  11.     /**
  12.      * Socket waiting for a client connection.
  13.      */
  14.     private ServerSocketConnection server;
  15.     
  16.     /**
  17.      * Starts the server running.
  18.      */
  19.     public void start() {
  20.         new Thread(this).start();
  21.         try {
  22.             while (server == null) {
  23.                 Thread.sleep(500);
  24.             }
  25.         } catch (Exception e) {}
  26.     }
  27.     
  28.     /**
  29.      * Stops the server.
  30.      */
  31.     public void stop() {
  32.         running = false;
  33.         try {
  34.             server.close();
  35.         } catch (Exception e) {}
  36.     }
  37.     
  38.     /**
  39.      * Server loop, waiting for incoming connections.
  40.      */
  41.     public void run() {
  42.         running = true;
  43.         try {
  44.             server = (ServerSocketConnection) Connector.open("socket://:8554");
  45.             
  46.             while (running) {
  47.                 SocketConnection client = (SocketConnection) server.acceptAndOpen();
  48.                 dprint("**** Open **** n");
  49.                 new RTSPConnection(client);
  50.             }
  51.         } catch (Exception e) {
  52.             e.printStackTrace();
  53.         }
  54.     }
  55.     
  56.     public void dprint(Object obj) {
  57.         System.out.print(obj);
  58.     }
  59.     
  60.     /**
  61.      * Command line test of the server.
  62.      */
  63.     public static void main(String[] args) {
  64.         new RTSPServer().start();
  65.     }
  66. }