Package fitnesse.responders.editing

Source Code of fitnesse.responders.editing.ContentFilterResponder

package fitnesse.responders.editing;

import fitnesse.FitNesseContext;
import fitnesse.Responder;
import fitnesse.html.template.HtmlPage;
import fitnesse.html.template.PageTitle;
import fitnesse.http.Request;
import fitnesse.http.Response;
import fitnesse.http.SimpleResponse;
import fitnesse.wiki.PathParser;

public class ContentFilterResponder implements Responder {

  private final ContentFilter contentFilter;

  public ContentFilterResponder(ContentFilter contentFilter) {
    this.contentFilter = contentFilter;
  }

  @Override
  public Response makeResponse(FitNesseContext context, Request request) throws Exception {
    String resource = request.getResource();
    String content = (String) request.getInput(EditResponder.CONTENT_INPUT_NAME);

    if (!contentFilter.isContentAcceptable(content, resource))
      return makeBannedContentResponse(context, resource);
    return null;
  }

  private Response makeBannedContentResponse(FitNesseContext context, String resource) {
    SimpleResponse response = new SimpleResponse();
    HtmlPage html = context.pageFactory.newPage();
    html.setTitle("Edit " + resource);
    html.setPageTitle(new PageTitle("Banned Content", PathParser.parse(resource)));
    html.setMainTemplate("bannedPage.vm");
    response.setContent(html.html());
    return response;
  }

}
TOP

Related Classes of fitnesse.responders.editing.ContentFilterResponder

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.