Package de.fuberlin.wiwiss.pubby.negotiation

Examples of de.fuberlin.wiwiss.pubby.negotiation.MediaRangeSpec


  }
 
  private void doResponseModel() throws IOException {
    response.addHeader("Vary", "Accept");
    ContentTypeNegotiator negotiator = PubbyNegotiator.getDataNegotiator();
    MediaRangeSpec bestMatch = negotiator.getBestMatch(
        request.getHeader("Accept"), request.getHeader("User-Agent"));
    if (bestMatch == null) {
      response.setStatus(406);
      response.setContentType("text/plain");
      ServletOutputStream out = response.getOutputStream();
      out.println("406 Not Acceptable: The requested data format is not supported.");
      out.println("Supported formats are RDF/XML, Turtle, N3, and N-Triples.");
      return;
    }
    response.setContentType(bestMatch.getMediaType());
    getWriter(bestMatch.getMediaType()).write(model, response);
    response.getOutputStream().flush();
    }
View Full Code Here


    // We don't provide a 303 service for those, only browsable pages.
    if (!controller.isHosted()) return false;

    response.addHeader("Vary", "Accept, User-Agent");
    ContentTypeNegotiator negotiator = PubbyNegotiator.getPubbyNegotiator();
    MediaRangeSpec bestMatch = negotiator.getBestMatch(
        request.getHeader("Accept"), request.getHeader("User-Agent"));
    if (bestMatch == null) {
      response.setStatus(406);
      response.setContentType("text/plain");
      response.getOutputStream().println(
          "406 Not Acceptable: The requested data format is not supported. " +
          "Only HTML and RDF are available.");
      return true;
    }
   
    response.setStatus(303);
    response.setContentType("text/plain");
    String location;
    if ("text/html".equals(bestMatch.getMediaType())) {
      location = controller.getPageURL();
    } else {
      location = controller.getDataURL();
    }
    response.addHeader("Location", IRIEncoder.toURI(location));
View Full Code Here

            mimeType=req.getHeader("accept");
            negotiatedContent=true;
        }
        mediaType=db.mediaTypes.get(mimeType);
        if(mediaType==null) { // never seen this mimeType before
            MediaRangeSpec mrs=db.conneg.getBestMatch(mimeType);
            if(mrs!=null)
                mediaType=mrs.getMediaType();
            else
                mediaType="";
            db.mediaTypes.put(mimeType, mediaType);
        }
        servletLog.info("mimeType="+mimeType+" and "+"mediaType="+mediaType+" from IP="+req.getRemoteAddr());
View Full Code Here

    dDescPrefixes.putAll(datasetMetadataTemplate.getNsPrefixMap());
    dDesc.setNsPrefixes(dDescPrefixes);

    // decide whether to serve RDF or HTML
    ContentTypeNegotiator negotiator = PubbyNegotiator.getPubbyNegotiator();
    MediaRangeSpec bestMatch = negotiator.getBestMatch(
        request.getHeader("Accept"), request.getHeader("User-Agent"));
    if (bestMatch == null) {
      response.setStatus(406);
      response.setContentType("text/plain");
      response.getOutputStream().println(
          "406 Not Acceptable: The requested data format is not supported. "
              + "Only HTML and RDF are available.");
      return;
    }

    if ("text/html".equals(bestMatch.getMediaType())) {
      // render HTML response
      VelocityWrapper velocity = new VelocityWrapper(this, request,
          response);
      Context context = velocity.getContext();
      // context.put("classmap_links", classMapLinks);
View Full Code Here

  public VelocityEngine getEngine() {
    return engine;
  }

  public void mergeTemplateXHTML(String templateName) {
    MediaRangeSpec bestMatch = xhtmlNegotiator.getBestMatch(
        request.getHeader("Accept"), request.getHeader("User-Agent"));
    response.addHeader("Content-Type", bestMatch != null ? bestMatch.getMediaType() : TEXTHTML_CONTENTTYPE);
    response.addHeader("Vary", "Accept, User-Agent");

    response.addHeader("Cache-Control", "no-cache");
    response.addHeader("Pragma", "no-cache");
    try {
View Full Code Here

      return;
    }

    response.addHeader("Vary", "Accept, User-Agent");
    ContentTypeNegotiator negotiator = PubbyNegotiator.getPubbyNegotiator();
    MediaRangeSpec bestMatch = negotiator.getBestMatch(
        request.getHeader("Accept"), request.getHeader("User-Agent"));
    if (bestMatch == null) {
      response.setStatus(406);
      response.setContentType("text/plain");
      response.getOutputStream().println(
          "406 Not Acceptable: The requested data format is not supported. " +
          "Only HTML and RDF are available.");
      return;
    }
   
    response.setStatus(303);
    response.setContentType("text/plain");
    String location;
    if ("text/html".equals(bestMatch.getMediaType())) {
      location = server.pageURL(serviceStem, relativeResourceURI);
    } else {
      location = server.dataURL(serviceStem, relativeResourceURI);
    }
    response.addHeader("Location", location);
View Full Code Here

  }
 
  private void doResponseModel() throws IOException {
    response.addHeader("Vary", "Accept");
    ContentTypeNegotiator negotiator = PubbyNegotiator.getDataNegotiator();
    MediaRangeSpec bestMatch = negotiator.getBestMatch(
        request.getHeader("Accept"), request.getHeader("User-Agent"));
    if (bestMatch == null) {
      response.setStatus(406);
      response.setContentType("text/plain");
      ServletOutputStream out = response.getOutputStream();
      out.println("406 Not Acceptable: The requested data format is not supported.");
      out.println("Supported formats are RDF/XML, Turtle, N3, and N-Triples.");
      return;
    }
    response.setContentType(bestMatch.getMediaType());
    getWriter(bestMatch.getMediaType()).write(model, response);
    response.getOutputStream().flush();
    }
View Full Code Here

TOP

Related Classes of de.fuberlin.wiwiss.pubby.negotiation.MediaRangeSpec

Copyright © 2018 www.massapicom. 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.