Strumenti Utente

Strumenti Sito


lpr-b:copythreadmessanger
no way to compare when less than two revisions

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.


lpr-b:copythreadmessanger [22/10/2007 alle 14:44 (17 anni fa)] (versione attuale) – creata Marco Danelutto
Linea 1: Linea 1:
 +<code java>
 +package instantMessanger;
  
 +import java.io.BufferedReader;
 +import java.io.IOException;
 +import java.io.InputStream;
 +import java.io.InputStreamReader;
 +import java.io.OutputStream;
 +import java.io.PrintStream;
 +import java.net.SocketException;
 +
 +public class CopyThread extends Thread {
 +
 + InputStream is = null; 
 + OutputStream os = null; 
 + PrintStream ps = null; 
 + String quale = null; 
 +
 + public CopyThread(InputStream is, OutputStream os, String quale) {
 + this.is = is; 
 + this.os = os; 
 + this.quale = quale;
 + }
 +
 + public CopyThread(InputStream is, PrintStream ps, String quale) {
 + this.is = is; 
 + this.ps = ps; 
 + this.quale = quale;
 + }
 +
 + public void run() {
 + BufferedReader rdr = new BufferedReader(new InputStreamReader(is));
 + if(ps==null) 
 + ps = new PrintStream(os);
 + String line = null;
 + do {
 + try {
 + line = rdr.readLine();
 + if(line!=null && line.equals(".")) break; // per trattare la terminazione a' la SMTP
 + ps.println(line);
 + } catch(SocketException e) {
 + // il canale di output corrispondente è stato chiuso
 + System.out.println("Canale remoto chiuso");
 + break;
 + } catch (IOException e) {
 + e.printStackTrace();
 + }
 + } while(line!=null);
 + System.out.println("Terminazione flusso "+quale);
 + ps.close();
 + System.out.println("Output stream chiuso");
 + return;
 +
 + }
 +}
 +</code>
lpr-b/copythreadmessanger.txt · Ultima modifica: 22/10/2007 alle 14:44 (17 anni fa) da Marco Danelutto

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki