org.atmosphere.wasync
Class RequestBuilder<T extends RequestBuilder<T>>

java.lang.Object
  extended by org.atmosphere.wasync.RequestBuilder<T>
Direct Known Subclasses:
AtmosphereRequest.AtmosphereRequestBuilder, DefaultRequestBuilder

public abstract class RequestBuilder<T extends RequestBuilder<T>>
extends Object

Construct a Request

Author:
jeanfrancois Arcand

Field Summary
protected  List<Decoder<?,?>> decoders
           
protected  Class<T> derived
           
protected  List<Encoder<?,?>> encoders
           
protected  Map<String,Collection<String>> headers
           
protected  Request.METHOD method
           
protected  Map<String,List<String>> queryString
           
protected  FunctionResolver resolver
           
protected  List<Request.TRANSPORT> transports
           
protected  String uri
           
 
Constructor Summary
protected RequestBuilder(Class<T> derived)
           
 
Method Summary
abstract  Request build()
           
 T decoder(Decoder d)
          Add a Decoder.
 List<Decoder<?,?>> decoders()
           
 T encoder(Encoder e)
          Add an Encoder.
 List<Encoder<?,?>> encoders()
           
 T header(String name, String value)
          Add a header.
 Map<String,Collection<String>> headers()
           
 Request.METHOD method()
           
 T method(Request.METHOD method)
          The method to use for connecting tho the remote server.
 Map<String,List<String>> queryString()
           
 T queryString(String name, String value)
          Add a query param.
 FunctionResolver resolver()
           
 T resolver(FunctionResolver resolver)
          Add a FunctionResolver
 T transport(Request.TRANSPORT t)
          The Request.TRANSPORT to use.
 List<Request.TRANSPORT> transports()
           
 String uri()
           
 T uri(String uri)
          The URI to connect to.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

transports

protected final List<Request.TRANSPORT> transports

method

protected Request.METHOD method

uri

protected String uri

encoders

protected final List<Encoder<?,?>> encoders

decoders

protected final List<Decoder<?,?>> decoders

headers

protected final Map<String,Collection<String>> headers

queryString

protected final Map<String,List<String>> queryString

resolver

protected FunctionResolver resolver

derived

protected final Class<T extends RequestBuilder<T>> derived
Constructor Detail

RequestBuilder

protected RequestBuilder(Class<T> derived)
Method Detail

transport

public T transport(Request.TRANSPORT t)
The Request.TRANSPORT to use. This method can be invoked several time and the library will loop over the list until one Request.TRANSPORT succeed.

Parameters:
t -
Returns:
this

method

public T method(Request.METHOD method)
The method to use for connecting tho the remote server. It is recommended to always use Request.METHOD.GET

Parameters:
method -
Returns:
this

uri

public T uri(String uri)
The URI to connect to.

Parameters:
uri - a uri to connect to
Returns:
this

encoder

public T encoder(Encoder e)
Add an Encoder. Several Encoder can be added and will be invoked the order they were added.

Parameters:
e - an Encoder
Returns:
this

decoder

public T decoder(Decoder d)
Add a Decoder. Several Decoder can be added and will be invoked the order they were added.

Parameters:
d - a Decoder
Returns:
this

header

public T header(String name,
                String value)
Add a header.

Parameters:
name - header name
value - header value
Returns:
this

queryString

public T queryString(String name,
                     String value)
Add a query param.

Parameters:
name - header name
value - header value
Returns:
this

resolver

public T resolver(FunctionResolver resolver)
Add a FunctionResolver

Parameters:
resolver - a FunctionResolver
Returns:
this

build

public abstract Request build()

transports

public List<Request.TRANSPORT> transports()

method

public Request.METHOD method()

headers

public Map<String,Collection<String>> headers()

queryString

public Map<String,List<String>> queryString()

encoders

public List<Encoder<?,?>> encoders()

decoders

public List<Decoder<?,?>> decoders()

uri

public String uri()

resolver

public FunctionResolver resolver()


Copyright © 2013. All Rights Reserved.