Repository: marmotta
Updated Branches:
  refs/heads/master fc246cc6f -> 6a10c48c1


Revert "#marmotta-606"

This reverts commit fc246cc6f09adceafaffbdfa36d70d414233b586.


Project: http://git-wip-us.apache.org/repos/asf/marmotta/repo
Commit: http://git-wip-us.apache.org/repos/asf/marmotta/commit/6a10c48c
Tree: http://git-wip-us.apache.org/repos/asf/marmotta/tree/6a10c48c
Diff: http://git-wip-us.apache.org/repos/asf/marmotta/diff/6a10c48c

Branch: refs/heads/master
Commit: 6a10c48c1349a517e1f1d35669c99747af2ee4b6
Parents: fc246cc
Author: Sergio Fernández <[email protected]>
Authored: Tue Apr 7 10:37:12 2015 +0200
Committer: Sergio Fernández <[email protected]>
Committed: Tue Apr 7 10:37:12 2015 +0200

----------------------------------------------------------------------
 .../commons/http/MarmottaHttpUtils.java         | 34 --------------------
 .../sparql/webservices/SparqlWebService.java    | 19 ++++-------
 2 files changed, 6 insertions(+), 47 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/marmotta/blob/6a10c48c/commons/marmotta-commons/src/main/java/org/apache/marmotta/commons/http/MarmottaHttpUtils.java
----------------------------------------------------------------------
diff --git 
a/commons/marmotta-commons/src/main/java/org/apache/marmotta/commons/http/MarmottaHttpUtils.java
 
b/commons/marmotta-commons/src/main/java/org/apache/marmotta/commons/http/MarmottaHttpUtils.java
index 102c991..199dde9 100644
--- 
a/commons/marmotta-commons/src/main/java/org/apache/marmotta/commons/http/MarmottaHttpUtils.java
+++ 
b/commons/marmotta-commons/src/main/java/org/apache/marmotta/commons/http/MarmottaHttpUtils.java
@@ -18,54 +18,20 @@
 package org.apache.marmotta.commons.http;
 
 import org.apache.commons.lang3.StringUtils;
-
 import org.openrdf.query.resultio.QueryResultFormat;
 
 import java.nio.charset.Charset;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
-import java.util.Enumeration;
 import java.util.List;
 
-import javax.servlet.http.HttpServletRequest;
-
 /**
  * Add file description here!
  * <p/>
  * Author: Sebastian Schaffert
  */
 public class MarmottaHttpUtils {
-    public static final String ACCEPT = "Accept";
-    /**
-     * A utility method for parsing Content-Type and Accept header
-     * @param request the {@link HttpServletRequest} provided
-     * @return An ordered list of {@link ContentType} elements
-     */
-    public static List<ContentType> parseAcceptHeader(HttpServletRequest 
request) {
-        Enumeration<String> acceptHeaderStrings = request.getHeaders(ACCEPT);
-        return parseAcceptHeader(acceptHeaderStrings);
-    }
-    /**
-     * A utility method for parsing Content-Type out of the provided Accept 
headers. 
-     * 
-     * @param request the {@link HttpServletRequest} provided
-     * @return An ordered list of {@link ContentType} elements.
-     * @see HttpServletRequest#getHeaders(String)
-     */
-    public static List<ContentType> parseAcceptHeader(Enumeration<String> 
acceptHeaderStrings) {
-        List<ContentType> contentTypes = new ArrayList<>();
-        while ( acceptHeaderStrings.hasMoreElements() ) {
-            ContentType contentType = 
parseContentType(acceptHeaderStrings.nextElement());
-            if ( contentType != null ) {
-                contentTypes.add(contentType);
-            }
-        }
-        //
-        Collections.sort(contentTypes);
-        
-        return contentTypes;
-    }
 
     /**
      * A utility method for parsing HTTP Content-Type and Accept header, 
taking into account different parameters that

http://git-wip-us.apache.org/repos/asf/marmotta/blob/6a10c48c/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/webservices/SparqlWebService.java
----------------------------------------------------------------------
diff --git 
a/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/webservices/SparqlWebService.java
 
b/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/webservices/SparqlWebService.java
index 6db8476..3fde761 100644
--- 
a/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/webservices/SparqlWebService.java
+++ 
b/platform/marmotta-sparql/src/main/java/org/apache/marmotta/platform/sparql/webservices/SparqlWebService.java
@@ -232,12 +232,8 @@ public class SparqlWebService {
      */
        private Response select(String query, String resultType, 
HttpServletRequest request) {
                try {
-                   // MARMOTTA-606 - check all "Accept" Headers, not only the 
first one
-                   List<ContentType> acceptedTypes = 
MarmottaHttpUtils.parseAcceptHeader(request.getHeaders(ACCEPT));
                String acceptHeader = 
StringUtils.defaultString(request.getHeader(ACCEPT), "");
                if (StringUtils.isBlank(query)) { //empty query
-                   // combine the list of accepted types to search for HTML 
header 
-                   acceptHeader = StringUtils.join(acceptedTypes, ",");
                    if (acceptHeader.contains("html")) {
                        return Response.seeOther(new 
URI(configurationService.getServerUri() + "sparql/admin/squebi.html")).build();
                    } else {
@@ -246,14 +242,13 @@ public class SparqlWebService {
                } else {
                        //query duck typing
                        QueryType queryType = 
sparqlService.getQueryType(QueryLanguage.SPARQL, query);
-                       // List<ContentType> acceptedTypes;
+                       List<ContentType> acceptedTypes;
                        List<ContentType> offeredTypes;
                        if (resultType != null) {
                                acceptedTypes = 
MarmottaHttpUtils.parseAcceptHeader(resultType);
-                       } 
-//                     else {
-//                             acceptedTypes = 
MarmottaHttpUtils.parseAcceptHeader(acceptHeader);
-//                     }
+                       } else {
+                               acceptedTypes = 
MarmottaHttpUtils.parseAcceptHeader(acceptHeader);
+                       }
                        if (QueryType.TUPLE.equals(queryType)) {
                                offeredTypes  = 
MarmottaHttpUtils.parseQueryResultFormatList(TupleQueryResultWriterRegistry.getInstance().getKeys());
                        } else if (QueryType.BOOL.equals(queryType)) {
@@ -394,8 +389,7 @@ public class SparqlWebService {
                 return Response.ok().build();
             } else {
                 if (resultType == null) {
-                    // MARMOTTA-606: Check all provdes accept headers, not 
only the first one
-                    List<ContentType> acceptedTypes = 
MarmottaHttpUtils.parseAcceptHeader(request.getHeaders(ACCEPT));
+                    List<ContentType> acceptedTypes = 
MarmottaHttpUtils.parseAcceptHeader(request.getHeader(ACCEPT));
                     List<ContentType> offeredTypes = 
MarmottaHttpUtils.parseStringList(Lists.newArrayList("*/*", "text/html"));
                     ContentType bestType = 
MarmottaHttpUtils.bestContentType(offeredTypes, acceptedTypes);
                     if (bestType != null) {
@@ -470,8 +464,7 @@ public class SparqlWebService {
         if (StringUtils.isBlank(request.getHeader(ACCEPT))) {
             acceptedTypes = 
Collections.singletonList(MarmottaHttpUtils.parseContentType(RDFXML.getDefaultMIMEType()));
         } else {
-            // MARMOTTA-606 - retrieve all headers instead of the first one 
-            acceptedTypes = 
MarmottaHttpUtils.parseAcceptHeader(request.getHeaders(ACCEPT));
+            acceptedTypes = 
MarmottaHttpUtils.parseAcceptHeader(request.getHeader(ACCEPT));
         }
         
         ContentType _bestType = null;

Reply via email to