package org.simpleframework.demo.template; import static org.simpleframework.http.Protocol.CONTENT_TYPE; import static org.simpleframework.http.Status.OK; import java.io.PrintStream; import org.simpleframework.demo.http.resource.Resource; import org.simpleframework.http.Request; import org.simpleframework.http.Response; public class TemplateResource implements Resource { private final TemplateContext context; private final Template template; private final String type; public TemplateResource(Template template, TemplateContext context, String type) { this.template = template; this.context = context; this.type = type; } @Override public void handle(Request request, Response response) throws Throwable { PrintStream output = response.getPrintStream(); String text = template.render(context); response.setStatus(OK); response.setValue(CONTENT_TYPE, type); output.print(text); output.close(); } }