public class DefaultSocket extends Object implements Socket
Socket
Socket.STATUS
Modifier and Type | Field and Description |
---|---|
protected List<FunctionWrapper> |
functions |
protected Options |
options |
protected Request |
request |
protected SocketRuntime |
socketRuntime |
protected Transport |
transportInUse |
Constructor and Description |
---|
DefaultSocket(Options options) |
Modifier and Type | Method and Description |
---|---|
protected void |
addFunction(long timeout,
TimeUnit tu) |
void |
close()
Close this Socket, asynchronously.
|
protected void |
closeRuntime(boolean async) |
protected Socket |
connect(com.ning.http.client.RequestBuilder r,
List<Transport> transports,
long timeout,
TimeUnit tu) |
SocketRuntime |
createRuntime(DefaultFuture future,
Options options,
List<FunctionWrapper> functions) |
Future |
fire(Object data)
Send data to the remote Server.
|
protected List<Transport> |
getTransport(com.ning.http.client.RequestBuilder r,
Request request) |
protected SocketRuntime |
internalSocket() |
Socket |
on(Event event,
Function<?> function)
|
Socket |
on(Function<? extends Object> function)
Associate a
Function with the Socket. |
Socket |
on(String functionName,
Function<? extends Object> function)
Associate a
Function with the Socket. |
Socket |
open(Request request)
Connect to the remote Server using the
Request 's information. |
Socket |
open(Request request,
long timeout,
TimeUnit tu)
Connect to the remote Server using the
Request 's information, will timeout if the connection failed to open
within a certain time. |
protected Request |
request() |
Socket.STATUS |
status()
Return the
Socket.STATUS of this Socket. |
protected Request request
protected SocketRuntime socketRuntime
protected final List<FunctionWrapper> functions
protected Transport transportInUse
protected final Options options
public DefaultSocket(Options options)
public Future fire(Object data) throws IOException
Encoder
, and then send to the server.
The server's response will be delivered to the set of defined Function
using the opened Transport
, e.g for
Request.TRANSPORT.WEBSOCKET
, the same connection will be re-used and, for others transports, the suspended connection.fire
in interface Socket
data
- object to sendFuture
IOException
public Socket on(String functionName, Function<? extends Object> function)
Function
with the Socket. When a response is received, the library will try to associated
the decoded message (decoded by Decoder
) to the defined type of the Function
. The default messages
are defined by Event
but handling of custom message can be done using a FunctionResolver
public Socket open(Request request) throws IOException
Socket
Request
's information.open
in interface Socket
request
- a Request
IOException
- in case the connect fails or a network failure occurs.public Socket open(Request request, long timeout, TimeUnit tu) throws IOException
Request
's information, will timeout if the connection failed to open
within a certain time.open
in interface Socket
request
- a Request
timeout
- the maximum time to waittu
- the time unit of the timeout argumentIOException
- in case the connect fails or a network failure occurs.protected Socket connect(com.ning.http.client.RequestBuilder r, List<Transport> transports, long timeout, TimeUnit tu) throws IOException
IOException
protected void addFunction(long timeout, TimeUnit tu)
public void close()
protected void closeRuntime(boolean async)
public Socket.STATUS status()
Socket
Socket.STATUS
of this Socket.protected SocketRuntime internalSocket()
protected List<Transport> getTransport(com.ning.http.client.RequestBuilder r, Request request) throws IOException
IOException
protected Request request()
public SocketRuntime createRuntime(DefaultFuture future, Options options, List<FunctionWrapper> functions)
Copyright © 2015. All Rights Reserved.