package com.megatim.fdxconsultation.service.impl.sockets;
|
|
import com.megatim.fdxconsultation.core.ifaces.referentiel.TypeFichierManager;
|
import com.megatim.fdxconsultation.service.impl.sockets.encoders.ParticipantToFichiersDecoder;
|
import com.megatim.fdxconsultation.service.impl.sockets.encoders.ParticipantToFichiersEncoder;
|
import java.io.IOException;
|
import java.util.List;
|
import java.util.Map;
|
import java.util.logging.Level;
|
import java.util.logging.Logger;
|
import javax.inject.Inject;
|
import javax.websocket.EncodeException;
|
import javax.websocket.OnClose;
|
import javax.websocket.OnError;
|
import javax.websocket.OnMessage;
|
import javax.websocket.OnOpen;
|
import javax.websocket.Session;
|
import javax.websocket.server.PathParam;
|
import javax.websocket.server.ServerEndpoint;
|
|
/**
|
*
|
* @author lenovo
|
*/
|
@ServerEndpoint(value = "/fichiers/{username}",
|
encoders = {ParticipantToFichiersEncoder.class},
|
decoders = {ParticipantToFichiersDecoder.class}
|
)
|
public class FichiersEndpoint {
|
|
@Inject
|
private TypeFichierManager manager;
|
|
@OnOpen
|
public void onOpen(Session session, @PathParam("username") String username) {
|
try {
|
session.getBasicRemote().sendObject(manager.particpantToFichierDto(username));
|
} catch (IOException | EncodeException ex) {
|
Logger.getLogger(FichiersEndpoint.class.getName()).log(Level.SEVERE, null, ex);
|
}
|
}
|
|
@OnMessage
|
public void onMessage(Map<String, List<String>> message, Session session) {
|
}
|
|
@OnClose
|
public void onClose(Session session) {
|
}
|
|
@OnError
|
public void onError(Session session, Throwable throwable) {
|
}
|
|
}
|