All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.progressoft.brix.domino.api.server.response.VertxResponseContext Maven / Gradle / Ivy

The newest version!
package com.progressoft.brix.domino.api.server.response;

import com.progressoft.brix.domino.api.shared.request.ResponseBean;
import io.vertx.core.json.Json;
import io.vertx.ext.web.RoutingContext;

public class VertxResponseContext implements ResponseContext {

    private final RoutingContext routingContext;

    public VertxResponseContext(RoutingContext routingContext) {
        this.routingContext = routingContext;
    }

    @Override
    public ResponseContext putHeader(String name, String value) {
        routingContext.response().putHeader(name, value);
        return this;
    }

    @Override
    public ResponseContext putHeader(String name, Iterable values) {
        routingContext.response().putHeader(name, values);
        return this;
    }

    @Override
    public ResponseContext statusCode(int statusCode) {
        routingContext.response().setStatusCode(statusCode);
        return this;
    }

    @Override
    public void end() {
        routingContext.response().end();
    }

    @Override
    public void end(S body) {
        end(Json.encode(body));
    }

    @Override
    public void end(String body) {
        routingContext.response().end(body);
    }
}