Untitled
unknown
plain_text
3 years ago
3.1 kB
11
Indexable
package cl.ufro.servidor;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.net.InetSocketAddress;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.concurrent.ThreadLocalRandom;
import javax.imageio.ImageIO;
import javax.mail.Address;
import javax.mail.internet.InternetAddress;
import cl.ufro.bd.Usuario;
import cl.ufro.service.UsuarioService;
import cl.ufro.solicitud.SolicitudIdentificacion;
import cl.ufro.solicitud.SolicitudPublicacion;
import cl.ufro.solicitud.SolicitudRegistro;
import cl.ufro.solicitud.SolicitudVerificacion;
import utils.Serializar;
import cl.ufro.service.CorreoService;
import cl.ufro.service.PublicacionService;
public class Servidor {
final int PUERTO = 5000;
public static void main(String[] args) {
Servidor servidor = new Servidor();
servidor.escucha();
}
public void escucha() {
try {
ServerSocket serverSocket = new ServerSocket(PUERTO);
System.out.println("Servidor iniciado en el puerto " + PUERTO);
while(true) {
Socket socket = serverSocket.accept();
System.out.println("Cliente conectado " +"("+(InetSocketAddress)socket.getRemoteSocketAddress()+")");
ObjectInputStream ois = new ObjectInputStream(socket.getInputStream());
Object objRecibido = ois.readObject();
if (objRecibido instanceof SolicitudIdentificacion) {
SolicitudIdentificacion solicitud = (SolicitudIdentificacion)objRecibido;
UsuarioService usuarioService = new UsuarioService();
Usuario usuario = usuarioService.identificar(solicitud);
ObjectOutputStream oos = new ObjectOutputStream(socket.getOutputStream());
oos.writeObject(usuario);
} else if (objRecibido instanceof SolicitudRegistro) {
SolicitudRegistro solicitud = (SolicitudRegistro)objRecibido;
Usuario usuario = new Usuario();
System.out.println("Imagen recibida: "+solicitud.imagen.nombre + " (" + solicitud.imagen.largo + " bytes)");
UsuarioService usuarioService = new UsuarioService();
usuario = usuarioService.registrar(solicitud);
ObjectOutputStream oos = new ObjectOutputStream(socket.getOutputStream());
oos.writeObject(usuario);
} else if(objRecibido instanceof SolicitudVerificacion) {
SolicitudVerificacion solicitud = (SolicitudVerificacion)objRecibido;
UsuarioService service = new UsuarioService();
Usuario usuario = service.verificarCorreo(solicitud);
ObjectOutputStream oos = new ObjectOutputStream(socket.getOutputStream());
oos.writeObject(usuario);
} else if(objRecibido instanceof SolicitudPublicacion) {
SolicitudPublicacion solicitud = (SolicitudPublicacion) objRecibido;
PublicacionService service = new PublicacionService();
if (solicitud.getIdCriterio() == 1) {
service.crearBuscoPublicacion(solicitud);
} else if(solicitud.getIdCriterio() == 2) {
service.crearTengoPublicacion(solicitud);
}
}
}
} catch (Exception e) {e.printStackTrace();}
}
}Editor is loading...