| Modifier and Type | Method and Description |
|---|---|
void |
byContent(Closure<?> closure)
Groovy friendly overload of
Context.byContent(Action). |
void |
byMethod(Closure<?> closure)
Groovy friendly overload of
Context.byMethod(Action). |
static GroovyContext |
from(Context ctx)
Creates a Groovy context from a context.
|
GroovyContext |
getContext()
Returns this.
|
default GroovyContext |
header(java.lang.CharSequence name,
java.lang.Object... values)
Sets a response header.
|
void |
onClose(Closure<?> closure)
Adds a request close handler.
|
byContent, byMethod, clientError, error, file, getAllPathTokens, getDirectChannelAccess, getExecution, getFileSystemBinding, getPathBinding, getPathTokens, getRequest, getResponse, getServerConfig, header, insert, insert, lastModified, lastModified, next, next, notFound, onClose, parse, parse, parse, parse, parse, parse, redirect, redirect, redirect, redirect, redirect, redirect, renderstatic GroovyContext from(Context ctx)
ctx - the actual contextGroovyContext getContext()
getContext in interface Contextvoid byMethod(@DelegatesTo(value=GroovyByMethodSpec.class,strategy=1) Closure<?> closure) throws java.lang.Exception
Context.byMethod(Action).
import ratpack.groovy.test.handling.GroovyRequestFixture
import static ratpack.groovy.Groovy.groovyHandler
def handler = groovyHandler {
byMethod {
def message = "hello!"
get {
render "$message from GET request"
}
post {
render "$message from POST request"
}
}
}
def result = GroovyRequestFixture.handle(handler) {
method "get"
}
assert result.rendered(CharSequence) == "hello! from GET request"
result = GroovyRequestFixture.handle(handler) {
method "post"
}
assert result.rendered(CharSequence) == "hello! from POST request"
closure - defines the action to take for different HTTP methodsjava.lang.Exception - any thrown by the closurevoid byContent(@DelegatesTo(value=GroovyByContentSpec.class,strategy=1) Closure<?> closure) throws java.lang.Exception
Context.byContent(Action).
import ratpack.groovy.test.handling.GroovyRequestFixture
import static ratpack.groovy.Groovy.groovyHandler
def handler = groovyHandler {
byContent {
def message = "hello!"
json {
render "{\"msg\": \"$message\"}"
}
html {
render "<p>$message</p>"
}
}
}
def result = GroovyRequestFixture.handle(handler) {
header("Accept", "application/json");
}
assert result.rendered(CharSequence) == "{\"msg\": \"hello!\"}"
assert result.headers.get("content-type") == "application/json"
result = GroovyRequestFixture.handle(handler) {
header("Accept", "text/plain; q=1.0, text/html; q=0.8, application/json; q=0.7");
}
assert result.rendered(CharSequence) == "<p>hello!</p>";
assert result.headers.get("content-type") == "text/html;charset=UTF-8";
closure - defines the action to take for the different content typesjava.lang.Exception - any thrown by the closurevoid onClose(@DelegatesTo(value=RequestOutcome.class,strategy=1) Closure<?> closure)
closure - A closure to call when the request is closeddefault GroovyContext header(java.lang.CharSequence name, java.lang.Object... values)
Any previously set values for the header will be removed.
Shorthand for getResponse().getHeaders().set(CharSequence, Iterable).
header in interface Contextname - the name of the header to setvalues - the header valuesthisMutableHeaders.set(CharSequence, Iterable)