*/
protected Server prepareErrorServer(final int code)
throws Exception
{
if (code == 403) {
final Server result = Server.withPort(0);
result.serve("/release/").withBehaviours(new S3ResponseHeadersBehaviour(),
new DeliverBehaviour(404, "application/xml", NO_SUCH_KEY_RESPONSE));
result.serve("/*").withBehaviours(new S3ResponseHeadersBehaviour(),
new DeliverBehaviour(403, "application/xml", ACCESS_DENIED_RESPONSE));
return result;
}
else if (code == 404) {
final Server result = Server.withPort(0);
result.serve("/release/").withBehaviours(new S3ResponseHeadersBehaviour(),
new DeliverBehaviour(404, "application/xml", NO_SUCH_KEY_RESPONSE));
result.serve("/*").withBehaviours(new S3ResponseHeadersBehaviour(),
new DeliverBehaviour(404, "application/xml", NO_SUCH_KEY_RESPONSE_ROOT));
return result;
}
else if (code == 500) {
final Server result = Server.withPort(0);
result.serve("/release/").withBehaviours(new S3ResponseHeadersBehaviour(),
new DeliverBehaviour(404, "application/xml", NO_SUCH_KEY_RESPONSE));
result.serve("/*").withBehaviours(new S3ResponseHeadersBehaviour(),
new DeliverBehaviour(500, "application/xml", INTERNAL_ERROR_RESPONSE));
return result;
}
else {
throw new IllegalArgumentException("Code " + code + " not supported!");