La versión de partida de este repositorio es REST. Se puede ver desplegada en https://tmdad-lab1.herokuapp.com/.
- Finalizar la práctica 0 (o estar en ello)
- Entender cómo funciona el mecanismo que ofrece Twitter para filtrar mensajes en tiempo real.
- Entender cómo Spring Social Twitter 1.1.0 da soporte.
- Investigar un poco el protocolo WebSocket y cómo se usa el protocolo STOMP para el intercambio de mensajes embebido en Websocket.
- Fijarse en cómo Spring da soporte en el lado del servidor a STOMP sobre Websocket con una solución que espera el uso de SockJS y Stomp.js en el lado del cliente.
- Funcionamiento en el lado del servidor:
- Configurar un broker de mensajes que soporte STOMP sobre WebSocket.
- Reescribir con los menores cambios posibles el método SearchController.search para recibir mensajes desde el cliente solicitando una búsqueda.
- Reescribir TwitterLookupService para que las operaciones de streaming que ofrece TwitterTemplate (máximo 10 streams abiertos, solución concurrente).
- Funcionamiento en el lado del cliente:
- Conectarse con SockJS al endpoint Websocket.
- Crear un cliente STOMP sobre dicha conexión.
- Las búsquedas se envían usando el cliente STOMP, suscribiendose al canal de resultados.
- Una nueva búsqueda cancela la suscripción anterior.