package com.megatim.fdxconsultation.service.impl.sockets; import com.megatim.fdxconsultation.service.impl.sockets.encoders.DataProductionDecoder; import com.megatim.fdxconsultation.service.impl.sockets.encoders.DataProductionEncoder; import com.megatim.fdxconsultation.core.impl.sockets.DataProductionSessionHandler; 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 = "/data-production", encoders = {DataProductionEncoder.class}, decoders = {DataProductionDecoder.class} ) public class DataProductionEndpoint { @Inject private DataProductionSessionHandler dataProductionSessionHandler; @OnOpen public void onOpen(Session session) { dataProductionSessionHandler.addSession(session); } @OnClose public void onClose(Session session) { dataProductionSessionHandler.removeSession(session); } @OnError public void onError(Session session, Throwable throwable) { dataProductionSessionHandler.removeSession(session); } }