package com.github.dreamhead.moco.handler;
import com.github.dreamhead.moco.HttpRequest;
import com.github.dreamhead.moco.Request;
import com.github.dreamhead.moco.model.MessageContent;
import com.google.common.net.MediaType;
import static com.github.dreamhead.moco.util.Jsons.toJson;
public final class JsonResponseHandler extends AbstractContentResponseHandler {
private final MessageContent content;
private final Object pojo;
public JsonResponseHandler(final Object pojo) {
this.pojo = pojo;
this.content = MessageContent.content().withContent(toJson(pojo)).build();
}
public Object getPojo() {
return pojo;
}
@Override
protected MessageContent responseContent(final Request request) {
return content;
}
@Override
protected MediaType getContentType(final HttpRequest request) {
return MediaType.create("application", "json").withCharset(content.getCharset());
}
}