Advertisement
Gustavo_Inzunza

ServidorHijo

Jun 2nd, 2013
52
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.59 KB | None | 0 0
  1. import java.net.*;
  2. import java.io.*;
  3. import java.awt.*;
  4. import javax.swing.*;
  5. import java.awt.event.*;
  6.  
  7.  
  8. public class ServidorHijo extends Thread
  9. {
  10.     private Socket socket = null;
  11.     PrintWriter out;
  12.     int contador=0;
  13.     int []monto=new int[4];
  14.     public ServidorHijo(Socket socket, int contador)
  15.     {
  16.     super("ServidorHijo");
  17.     System.out.println("Se Conecto Nuevo Cliente!!");
  18.     System.out.println("Se Inicia Nueva Hebra de Servidor");
  19.     this.socket = socket;
  20.     this.contador=contador;
  21.         this.monto[1]=1000;
  22.         this.monto[2]=1000;
  23.         this.monto[3]=1000;
  24.     }
  25.     public void run()
  26.     {  
  27.     try
  28.         {
  29.         out = new PrintWriter(socket.getOutputStream(), true);
  30.         BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
  31.         String inputLine="", outputLine="";
  32.             //inicio codigo nuevo
  33.             //System.out.println("Ingrese el path donde desea escribir el archivo: " );
  34.             String path="C:/Users/Gustavo/Desktop/servidorfichero/johnwax"+contador+".mp3";
  35.             //Socket w=servidor.accept();
  36.             InputStream llegada = socket.getInputStream();
  37.             FileOutputStream destino=new FileOutputStream(path);
  38.             byte[] buffer = new byte[117];
  39.             int len;
  40.             while((len=llegada.read(buffer))>0)
  41.             {
  42.                 destino.write(buffer,0,len);
  43.                 //System.out.println("len vale:"+len);
  44.                 if(len!=117)
  45.                     break;
  46.             }
  47.             //fin codigo nuevo
  48.             //codigo abrir archivo inicio
  49.             FileInputStream fstream = new FileInputStream("C:/Users/Gustavo/Desktop/servidorfichero/johnwax"+contador+".mp3");
  50.             FileInputStream fstream2 = new FileInputStream("C:/Users/Gustavo/Desktop/servidorfichero/cancion.mp3");
  51.             // Creamos el objeto de entrada
  52.             DataInputStream entrada = new DataInputStream(fstream);
  53.             DataInputStream entrada2 = new DataInputStream(fstream2);
  54.             // Creamos el Buffer de Lectura
  55.             BufferedReader bufferLectura = new BufferedReader(new InputStreamReader(entrada));
  56.             BufferedReader bufferLectura2 = new BufferedReader(new InputStreamReader(entrada2));
  57.             String strLinea,strLinea2;
  58.             int sum=0,iguales=0;
  59.             // Leer el archivo linea por linea
  60.             while ((strLinea = bufferLectura.readLine()) != null && (strLinea2 = bufferLectura2.readLine()) != null)
  61.             {
  62.                 // Imprimimos la línea por pantalla
  63.                 sum++;
  64.                 if(strLinea.equals(strLinea2))
  65.                     iguales++;
  66.                 //System.out.println (strLinea);
  67.             }
  68.             if(sum==iguales)
  69.                 iguales=1;
  70.             else
  71.                 iguales=0;
  72.             //codigo abrir archivos fin
  73.             System.out.println("listo");
  74.         //out.println("Comienza la Comunicacion");
  75.             out.println(contador);
  76.             out.println("Escriba su rut, sin digito verificador ni puntos:");
  77.             int flagg=0,flagg2=0,rut;
  78.         while ((inputLine = in.readLine()) != null)
  79.             {  
  80.                 if(flagg==0)
  81.                 {
  82.                     rut=Integer.parseInt(inputLine);
  83.                        System.out.println("el rut del cliente ("+contador+") es:"+rut);
  84.                     if((rut==17214311) || (rut==17539138) || (rut==18111635))
  85.                     {
  86.                        flagg=1;
  87.                        out.println("1");
  88.                        out.println("Muy bien usuario:"+rut+" a continuación sus opciones:");
  89.                        out.println("1)Hacer retiro.\n2)Saldo disponible.\n3)Salir.");
  90.                     }
  91.                     else
  92.                     {
  93.                         out.println("0");
  94.                         out.println("El rut que usted a ingresado no pertenece a un cliente ingresado al sistema");
  95.                         out.println("Intente con otro");
  96.                     }
  97.                 }
  98.                 else//aca detectará qué opciones elige el cliente
  99.                 {
  100.                     System.out.println("Llego desde el cliente ("+contador+") :"+inputLine);
  101.                     if(flagg2==0)
  102.                     {
  103.                        
  104.                         flagg2=1;
  105.                     }
  106.                     //out.println("1)Hacer retiro.\n2)Saldo disponible.\n3)Salir.");
  107.                     if(Integer.parseInt(inputLine)==1)
  108.                     {
  109.                         out.println("De cuanto es el monto?");
  110.                         inputLine = in.readLine();//lee respuesta del cliente
  111.                         monto[contador]-=Integer.parseInt(inputLine);
  112.                         out.println("su monto actual es:"+monto[contador]);
  113.                     }
  114.                     else
  115.                         if(Integer.parseInt(inputLine)==2)
  116.                         {
  117.                             //out.println("De cuanto es el monto?");
  118.                             //inputLine = in.readLine();//lee respuesta cliente
  119.                             out.println("su saldo actual es:"+monto[contador]);
  120.                         }
  121.                         else
  122.                             if(Integer.parseInt(inputLine)==3)
  123.                                 out.println("Adios cliente:"+contador);
  124.                     out.println("1)Hacer retiro.\n2)Saldo disponible.\n3)Salir.");
  125.                 }
  126.             }
  127.         out.close();
  128.         in.close();
  129.         socket.close();
  130.     }
  131.         catch (IOException e)
  132.         {
  133.         e.printStackTrace();
  134.     }
  135.     }
  136. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement