org.atmosphere.websocket
Interface WebSocketProtocol

All Known Implementing Classes:
EchoProtocol, SimpleHttpProtocol, WebSocketHandler

public interface WebSocketProtocol

A WebSocket based protocol implementation. Implement this class to process WebSockets messages and dispatch it to Atmosphere or any consumer of WebSocket message.

Author:
Jeanfrancois Arcand

Method Summary
 void configure(AtmosphereConfig config)
          Allow an implementation to query the AtmosphereConfig of init-param, etc.
 void onClose(WebSocket webSocket)
          Invoked when a WebSocket is closed
 void onError(WebSocket webSocket, WebSocketProcessor.WebSocketException t)
          Invoked when an error occurs.
 List<AtmosphereRequest> onMessage(WebSocket webSocket, byte[] data, int offset, int length)
          Parse the WebSocket message, and delegate the processing to the AtmosphereFramework.asyncSupport or to any existing technology.
 List<AtmosphereRequest> onMessage(WebSocket webSocket, String data)
          Parse the WebSocket message, and delegate the processing to the AtmosphereFramework.asyncSupport or to any existing technology.
 void onOpen(WebSocket webSocket)
          Invoked when a WebSocket is opened
 

Method Detail

configure

void configure(AtmosphereConfig config)
Allow an implementation to query the AtmosphereConfig of init-param, etc.

Parameters:
config - AtmosphereConfig

onMessage

List<AtmosphereRequest> onMessage(WebSocket webSocket,
                                  String data)
Parse the WebSocket message, and delegate the processing to the AtmosphereFramework.asyncSupport or to any existing technology. Invoking AtmosphereFramework.asyncSupport will delegate the request processing to the AtmosphereHandler implementation. Returning null means this implementation will handle itself the processing/dispatching of the WebSocket's request;
As an example, this is how Websocket messages are delegated to the Jersey runtime.

Parameters:
webSocket - The WebSocket connection
data - The Websocket message
Returns:
A list of AtmosphereResource, or null if the request won't be dispatched.

onMessage

List<AtmosphereRequest> onMessage(WebSocket webSocket,
                                  byte[] data,
                                  int offset,
                                  int length)
Parse the WebSocket message, and delegate the processing to the AtmosphereFramework.asyncSupport or to any existing technology. Invoking AtmosphereFramework.asyncSupport will delegate the request processing to the AtmosphereHandler implementation. Returning null means this implementation will handle itself the processing/dispatching of the WebSocket's request;
As an example, this is how Websocket messages are delegated to the Jersey runtime.

Parameters:
webSocket - The WebSocket connection
offset - offset message index
length - length of the message.
Returns:
A list of AtmosphereResource, or null if the request won't be dispatched.

onOpen

void onOpen(WebSocket webSocket)
Invoked when a WebSocket is opened

Parameters:
webSocket - WebSocket

onClose

void onClose(WebSocket webSocket)
Invoked when a WebSocket is closed

Parameters:
webSocket - WebSocket

onError

void onError(WebSocket webSocket,
             WebSocketProcessor.WebSocketException t)
Invoked when an error occurs.

Parameters:
webSocket - WebSocket
t - a WebSocketProcessor.WebSocketException


Copyright © 2012. All Rights Reserved.