2016-06-19 2 views
0

私は2つのクラスを持っています。最初はサーバー、もう1つはビデオを拡散します。サーバークラスでは、拡散を開始する前にSystem.out.printlnを持っています。私はコンソール上で特定のIPアドレスの後に "クライアント"と書かれている場合のみ、ビデオを起動する第二クラスにしたい。Content console eclipseを取得します。

どうすればいいですか?サーバー

try { 
     serverSocket = new ServerSocket(Constants.PORT); 
    } 
    catch (IOException e){ 
     e.printStackTrace(); 
    } 

    while (true) { 
     try{ 
      socket = serverSocket.accept(); 

     } 
     catch (IOException e) { 
      System.out.println("I/O Error : " + e); 
     } 

     System.out.println("Client " + socket.getInetAddress() + " connected !"); 

     new DiffusionThread (socket).start(); 

    } 

DiffuseVideo

try { 

     Util.transfertVideo(
       new FileInputStream("chrono.flv"), 
       socket.getOutputStream(), 
       socket 
       ); 
    } catch (SocketException e) { 
     System.err.println(this.getId() + ": " + e); 
     System.out.println("\n Client " + socket.getInetAddress() +" disconnected !"); 
    } catch (FileNotFoundException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } catch (IOException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 

はあなたのすべてをありがとうございました。

答えて

0

申し訳ありませんが、私はコメントする代わりに答えるだけです。

しかし、いくつかのブール値をtrue/falseに設定し、もちろんそのためのセッター/ゲッターを作成するために、いくつかのif節を挿入することができます。たぶん、このような

if (socket.getInetAsdress() == "1.2.3.4") { 
connected = true; 
} 

または何でも。私は、あなたがそれを確認でき、あなたにいくつかのブール値を返すところに、すでに暗示されているいくつかのメソッドがあるかどうかわかりません。しかし、私の場合はブーリアンを最初に接続する必要があります。新しい接続を確立するたびにfalseに設定することを忘れないでください。その後

あなたは簡単に何らかの形でそのようなあなたの第二のクラスでブールを確認することができます。

if (Server.getBoolean == true) { 
//code to execute 
} else { 
System.out.println("Connection Error!"); 
} 

それとも、代わりにセッター/ゲッターのブールに公衆を使用する場合:

if (connected == true) ... 

・ホープ、このあなたを助けることができます。あなたが何か他のものが必要な場合は教えてください。

+0

私は実際にEclipseコンソールのコンテンツを取得します。コンソールに "1:cat"がある場合は、これを使って何かしたいと思っています。たとえば、ビデオのリンクに「cat」を使用します。 – DiR95

関連する問題