org.webbitserver.rest
Class Rest

java.lang.Object
  extended by org.webbitserver.rest.Rest

public class Rest
extends Object

Sinatra-style API around Webbit. Useful for defining RESTful APIs. Paths are defined according to the uritemplate specification.


Field Summary
static String URI_TEMPLATE_VARIABLES
           
 
Constructor Summary
Rest(org.webbitserver.WebServer webServer)
           
Rest(org.webbitserver.WebServer webServer, UriTemplateProcessor uriTemplateProcessor)
           
 
Method Summary
 Rest DELETE(String uriTemplate, org.webbitserver.HttpHandler httpHandler)
           
 Rest GET(String uriTemplate, org.webbitserver.EventSourceHandler eventSourceHandler)
           
 Rest GET(String uriTemplate, org.webbitserver.EventSourceHandler eventSourceHandler, org.webbitserver.WebSocketHandler webSocketHandler)
           
 Rest GET(String uriTemplate, org.webbitserver.HttpHandler httpHandler)
           
 Rest GET(String uriTemplate, org.webbitserver.HttpHandler httpHandler, org.webbitserver.EventSourceHandler eventSourceHandler)
           
 Rest GET(String uriTemplate, org.webbitserver.HttpHandler httpHandler, org.webbitserver.EventSourceHandler eventSourceHandler, org.webbitserver.WebSocketHandler webSocketHandler)
           
 Rest GET(String uriTemplate, org.webbitserver.HttpHandler httpHandler, org.webbitserver.WebSocketHandler webSocketHandler)
           
 Rest GET(String uriTemplate, org.webbitserver.WebSocketHandler webSocketHandler)
           
 Rest HEAD(String uriTemplate, org.webbitserver.HttpHandler httpHandler)
           
static Integer intParam(org.webbitserver.HttpRequest request, String name)
           
static Object param(org.webbitserver.HttpRequest request, String name)
          Get the resolved URI-template variables associated with request.
static Map<String,Object> params(org.webbitserver.HttpRequest request)
          Get the resolved URI-template variables associated with request.
 Rest POST(String uriTemplate, org.webbitserver.HttpHandler httpHandler)
           
 Rest PUT(String uriTemplate, org.webbitserver.HttpHandler httpHandler)
           
 void redirect(org.webbitserver.HttpResponse response, String uri)
           
 void redirect(org.webbitserver.HttpResponse response, String uriTemplate, Map<String,Object> parameters)
          Perform a 302 Redirect
 void redirect(org.webbitserver.HttpResponse response, String uriTemplate, String... keyValuePairs)
          Perform a 302 Redirect
static String stringParam(org.webbitserver.HttpRequest request, String name)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

URI_TEMPLATE_VARIABLES

public static final String URI_TEMPLATE_VARIABLES
See Also:
Constant Field Values
Constructor Detail

Rest

public Rest(org.webbitserver.WebServer webServer)

Rest

public Rest(org.webbitserver.WebServer webServer,
            UriTemplateProcessor uriTemplateProcessor)
Method Detail

GET

public Rest GET(String uriTemplate,
                org.webbitserver.HttpHandler httpHandler)

GET

public Rest GET(String uriTemplate,
                org.webbitserver.EventSourceHandler eventSourceHandler)

GET

public Rest GET(String uriTemplate,
                org.webbitserver.WebSocketHandler webSocketHandler)

GET

public Rest GET(String uriTemplate,
                org.webbitserver.HttpHandler httpHandler,
                org.webbitserver.EventSourceHandler eventSourceHandler)

GET

public Rest GET(String uriTemplate,
                org.webbitserver.HttpHandler httpHandler,
                org.webbitserver.WebSocketHandler webSocketHandler)

GET

public Rest GET(String uriTemplate,
                org.webbitserver.EventSourceHandler eventSourceHandler,
                org.webbitserver.WebSocketHandler webSocketHandler)

GET

public Rest GET(String uriTemplate,
                org.webbitserver.HttpHandler httpHandler,
                org.webbitserver.EventSourceHandler eventSourceHandler,
                org.webbitserver.WebSocketHandler webSocketHandler)

PUT

public Rest PUT(String uriTemplate,
                org.webbitserver.HttpHandler httpHandler)

POST

public Rest POST(String uriTemplate,
                 org.webbitserver.HttpHandler httpHandler)

DELETE

public Rest DELETE(String uriTemplate,
                   org.webbitserver.HttpHandler httpHandler)

HEAD

public Rest HEAD(String uriTemplate,
                 org.webbitserver.HttpHandler httpHandler)

param

public static Object param(org.webbitserver.HttpRequest request,
                           String name)
Get the resolved URI-template variables associated with request.

Parameters:
request - the request holding the params
name - named segment from the uri-template
Returns:
the parameter value

stringParam

public static String stringParam(org.webbitserver.HttpRequest request,
                                 String name)

intParam

public static Integer intParam(org.webbitserver.HttpRequest request,
                               String name)

params

public static Map<String,Object> params(org.webbitserver.HttpRequest request)
Get the resolved URI-template variables associated with request.

Parameters:
request - the request holding the params
Returns:
an object with all resolved variables

redirect

public void redirect(org.webbitserver.HttpResponse response,
                     String uriTemplate,
                     String... keyValuePairs)
Perform a 302 Redirect

Parameters:
response - the response to redirect
uriTemplate - where to redirect
keyValuePairs - Example: ["name", "Mickey", "pet", "Pluto"]

redirect

public void redirect(org.webbitserver.HttpResponse response,
                     String uriTemplate,
                     Map<String,Object> parameters)
Perform a 302 Redirect

Parameters:
response - the response to redirect
uriTemplate - where to redirect
parameters - Example: {"name": "Mickey", "pet": "Pluto"}

redirect

public void redirect(org.webbitserver.HttpResponse response,
                     String uri)


Copyright © 2012. All Rights Reserved.