Example usage for org.springframework.web.socket WebSocketSession getRemoteAddress

List of usage examples for org.springframework.web.socket WebSocketSession getRemoteAddress

Introduction

In this page you can find the example usage for org.springframework.web.socket WebSocketSession getRemoteAddress.

Prototype

@Nullable
InetSocketAddress getRemoteAddress();

Source Link

Document

Return the address of the remote client.

Usage

From source file:com.github.mrstampy.gameboot.otp.websocket.OtpEncryptedWebSocketHandler.java

/**
 * After connection established.//w ww  .j  a v a  2  s  .c  om
 *
 * @param session
 *          the session
 * @throws Exception
 *           the exception
 */
@SuppressWarnings("unchecked")
@Override
public void afterConnectionEstablished(WebSocketSession session) throws Exception {
    boolean encrypted = ((AbstractWebSocketSession<Session>) session).getNativeSession().isSecure();

    if (!encrypted) {
        log.error("Not an encrypted web socket {}, disconnecting", session.getRemoteAddress());
        session.close();
    }

    super.afterConnectionEstablished(session);
}

From source file:com.devicehive.websockets.WebSocketAuthenticationManager.java

public HiveAuthentication.HiveAuthDetails getDetails(WebSocketSession session) {
    List<String> originList = session.getHandshakeHeaders().get(HttpHeaders.ORIGIN);
    List<String> authList = session.getHandshakeHeaders().get(HttpHeaders.AUTHORIZATION);
    String origin = originList == null || originList.isEmpty() ? null : originList.get(0);
    String auth = authList == null || authList.isEmpty() ? null : authList.get(0);

    return new HiveAuthentication.HiveAuthDetails(session.getRemoteAddress().getAddress(), origin, auth);
}

From source file:ca.uhn.fhir.jpa.subscription.SubscriptionWebsocketHandler.java

@Override
public void afterConnectionClosed(WebSocketSession theSession, CloseStatus theStatus) throws Exception {
    super.afterConnectionClosed(theSession, theStatus);
    ourLog.info("Closing WebSocket connection from {}", theSession.getRemoteAddress());
}

From source file:com.navercorp.pinpoint.web.websocket.ActiveThreadCountHandler.java

@Override
protected void handleTextMessage(WebSocketSession webSocketSession, TextMessage message) throws Exception {
    logger.info("handleTextMessage. session:{}, remote:{}, message:{}.", webSocketSession,
            webSocketSession.getRemoteAddress(), message.getPayload());

    PinpointWebSocketMessage webSocketMessage = messageConverter.getWebSocketMessage(message.getPayload());
    PinpointWebSocketMessageType webSocketMessageType = webSocketMessage.getType();
    switch (webSocketMessageType) {
    case REQUEST:
        handleRequestMessage0(webSocketSession, (RequestMessage) webSocketMessage);
        break;//from www  . j a v a2s .co m
    case PONG:
        handlePongMessage0(webSocketSession, (PongMessage) webSocketMessage);
        break;
    default:
        logger.warn("Unexpected WebSocketMessageType received. messageType:{}.", webSocketMessageType);
    }

    // this method will be checked socket status.
    super.handleTextMessage(webSocketSession, message);
}

From source file:com.navercorp.pinpoint.web.websocket.ActiveThreadCountHandler.java

@Override
protected void handlePongMessage(WebSocketSession webSocketSession,
        org.springframework.web.socket.PongMessage message) throws Exception {
    logger.info("handlePongMessage. session:{}, remote:{}, message:{}.", webSocketSession,
            webSocketSession.getRemoteAddress(), message.getPayload());

    super.handlePongMessage(webSocketSession, message);
}

From source file:com.zb.app.websocket.server.WebSocketServerHandler.java

/**
 * session,???/*from  ww w  .j  a va  2  s  .c  o  m*/
 */
public void sessionOpened(WebSocketSession session) {
    log(session.getRemoteAddress() + " session,???");
    addSession(session);
}

From source file:com.zb.app.websocket.server.WebSocketServerHandler.java

/**
 * session,??/*from  w  w w  .  j  a v  a  2  s .  com*/
 */
public void sessionUpdate(WebSocketSession session) {
    log(session.getRemoteAddress() + " session,??");
    addSession(session);
}

From source file:com.github.mrstampy.gameboot.websocket.AbstractWebSocketProcessor.java

@Override
public <AGBM extends AbstractGameBootMessage> Response process(WebSocketSession session,
        GameBootMessageController controller, AGBM agbm) throws Exception {
    agbm.setSystemId(getSystemId(session));
    agbm.setTransport(Transport.WEB_SOCKET);
    agbm.setLocal((InetSocketAddress) session.getLocalAddress());
    agbm.setRemote((InetSocketAddress) session.getRemoteAddress());

    Response r = controller.process(agbm);
    processMappingKeys(r, session);//from  w  ww .j  a v  a 2 s .  co  m
    r.setSystemId(agbm.getSystemId());

    return r;
}

From source file:com.zb.app.websocket.server.WebSocketServerHandler.java

/**
 * session,???,????/*  www. ja v  a 2 s  . com*/
 */
public void pullTextMessage(WebSocketSession session, TextMessage message) {
    log(session.getRemoteAddress()
            + " session,???,????!");
    SocketMessage<String> socketMessage = new SocketMessage<String>(getClienInfo(session), message);
    ActionEnum action = socketMessage.getAction();
    switch (action) {
    case CLIENT_REGIST:
        SessionWrapper _sw = getSessionInfo(session);
        addSession(session);
        notifyNewClientConnectEvent(_sw.getWebUser(),
                new MessageMapper<SocketMessage<?>, IMessageHandler>(socketMessage));
        break;

    case CLIENT_CLOSED:
        sessionClosed(session);
        break;

    case CLIENT_RETURN_RESULT:
        SessionWrapper sessionWrapper = getSessionInfo(session);
        sessionWrapper.setSocketMessage(socketMessage);
        break;

    case CLIENT_SEND_MESSAGE:
        SessionWrapper sw = getSessionInfo(session);
        sw.pullMsg(socketMessage);
        notifyNewClientMessageEvent(sw.getWebUser(),
                new MessageMapper<SocketMessage<?>, IMessageHandler>(socketMessage));
        break;

    case CLIENT_HEARTBEAT:
        clientHeartbeat(socketMessage, session);
        break;

    case ERROR_FORMAT_MESSAGE:
        handleDataFormatError(socketMessage, session);
        break;

    default:
        throw new WebSocketUnSupportException("??");
    }
}

From source file:com.zb.app.websocket.server.WebSocketServerHandler.java

/**
 * session,????,???/*w w  w.  jav  a2 s  .c  o  m*/
 */
public void pushTextMessage(SessionWrapper sessionWrapper, final SocketMessage<String> socketMessage) {
    WebSocketSession session = sessionWrapper.getSocketSession();
    log(session.getRemoteAddress()
            + " session,????,???");
    ActionEnum action = socketMessage.getAction();
    switch (action) {
    case SERVER_SEND_MESSAGE:
        sessionWrapper.pushMsg(socketMessage, new IMessageCallback() {

            @Override
            public void doAction(SessionWrapper sw) {
                sw.pullMsg(socketMessage);
                notifyNewClientMessageEvent(sw.getWebUser(),
                        new MessageMapper<SocketMessage<?>, IMessageHandler>(socketMessage));
            }
        });
        break;

    case SERVER_CLOSED:
        sessionClosed(session);
        break;

    case SERVER_HEARTBEAT:
        clientHeartbeat(socketMessage, session);
        break;

    case ERROR_FORMAT_MESSAGE:
        break;

    default:
        throw new WebSocketUnSupportException("??");
    }
}