Skip to content

Commit

Permalink
Add error responses to ResponseBuilder
Browse files Browse the repository at this point in the history
  • Loading branch information
rchodava committed Mar 2, 2016
1 parent a079ca3 commit 47e5927
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,15 @@
* @author Ravi Chodavarapu (rchodava@gmail.com)
*/
public interface ResponseBuilder {
Observable<Response> badRequest();
Observable<Response> badRequest(String content);
<T> ResponseBuilder header(String name, T value);
Observable<Response> internalServerError();
Observable<Response> internalServerError(String content);
Observable<Response> noContent();
Observable<Response> notFound();
Observable<Response> ok();
Observable<Response> ok(String content);
Observable<Response> unauthorized();
Observable<Response> unauthorized(String content);
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,32 @@
public class ResponseBuilderImpl implements ResponseBuilder {
private final Map<String, String> headers = new HashMap<>();

@Override
public Observable<Response> badRequest() {
return Observable.just(new ResponseImpl(Status.BAD_REQUEST, headers));
}

@Override
public Observable<Response> badRequest(String content) {
return Observable.just(new ResponseImpl(Status.BAD_REQUEST, headers, new ValueEntity(new StringValue(content))));
}

@Override
public <T> ResponseBuilder header(String name, T value) {
headers.put(name, value.toString());
return this;
}

@Override
public Observable<Response> internalServerError() {
return Observable.just(new ResponseImpl(Status.INTERNAL_SERVER_ERROR, headers));
}

@Override
public Observable<Response> internalServerError(String content) {
return Observable.just(new ResponseImpl(Status.INTERNAL_SERVER_ERROR, headers, new ValueEntity(new StringValue(content))));
}

@Override
public Observable<Response> noContent() {
return Observable.just(new ResponseImpl(Status.NO_CONTENT, headers));
Expand All @@ -45,4 +65,9 @@ public Observable<Response> ok(String content) {
public Observable<Response> unauthorized() {
return Observable.just(new ResponseImpl(Status.UNAUTHORIZED, headers));
}

@Override
public Observable<Response> unauthorized(String content) {
return Observable.just(new ResponseImpl(Status.UNAUTHORIZED, headers, new ValueEntity(new StringValue(content))));
}
}

0 comments on commit 47e5927

Please sign in to comment.