package com.megatim.fdxconsultation.service.impl.sockets; import com.megatim.fdxconsultation.service.impl.sockets.encoders.ConnexionStatutsDecoder; import com.megatim.fdxconsultation.service.impl.sockets.encoders.ConnexionStatutsEncoder; import com.megatim.fdxconsultation.service.impl.sockets.helpers.ConnexionStatutSessionHandler; import javax.inject.Inject; import javax.websocket.OnClose; import javax.websocket.OnError; import javax.websocket.OnOpen; import javax.websocket.Session; import javax.websocket.server.ServerEndpoint; /** * * @author lenovo */ @ServerEndpoint(value = "/connexion-status", encoders = {ConnexionStatutsEncoder.class}, decoders = {ConnexionStatutsDecoder.class} ) public class ConnexionStatutEndpoint { @Inject private ConnexionStatutSessionHandler connexionStatutSessionHandler; @OnOpen public void onOpen(Session session) { connexionStatutSessionHandler.addSession(session); } @OnClose public void onClose(Session session) { connexionStatutSessionHandler.removeSession(session); } @OnError public void onError(Session session, Throwable throwable) { connexionStatutSessionHandler.removeSession(session); } }