This is an automated email from the ASF dual-hosted git repository.

andy pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/jena.git

commit b00841e72b50061172d653dbe9ee37e7337376c4
Author: Andy Seaborne <[email protected]>
AuthorDate: Wed Nov 27 16:49:37 2024 +0000

    Rename Responses.doResponseBoolean; code tidy
---
 .../jena/fuseki/servlets/ResponseResultSet.java    |  2 +-
 .../org/apache/jena/fuseki/servlets/Responses.java | 48 ++++++++++++----------
 .../jena/fuseki/servlets/SPARQLQueryProcessor.java |  2 +-
 3 files changed, 29 insertions(+), 23 deletions(-)

diff --git 
a/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/servlets/ResponseResultSet.java
 
b/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/servlets/ResponseResultSet.java
index 51a51c4dfa..054dde3252 100644
--- 
a/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/servlets/ResponseResultSet.java
+++ 
b/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/servlets/ResponseResultSet.java
@@ -31,7 +31,7 @@ import org.apache.jena.sparql.exec.RowSet;
 public class ResponseResultSet
 {
     public static void doResponseResultSet(HttpAction action, Boolean 
booleanResult) {
-        Responses.doResponseResultSet(action, booleanResult);
+        Responses.doResponseBoolean(action, booleanResult);
     }
 
     public static void doResponseResultSet(HttpAction action, ResultSet 
resultSet, Prologue qPrologue) {
diff --git 
a/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/servlets/Responses.java
 
b/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/servlets/Responses.java
index a0943fdb6f..018a6290a0 100644
--- 
a/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/servlets/Responses.java
+++ 
b/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/servlets/Responses.java
@@ -149,7 +149,7 @@ public class Responses
         // Jetty closes the stream if it is a gzip stream.
     }
 
-    public static void doResponseResultSet(HttpAction action, Boolean 
booleanResult) {
+    public static void doResponseBoolean(HttpAction action, Boolean 
booleanResult) {
         ResponseResults.doResponseResultSet$(action, null, booleanResult, 
null, DEF.rsOfferBoolean);
     }
 
@@ -231,23 +231,28 @@ public class Responses
             String charset = charsetUTF8;
             String jsonCallback = null;
 
-            if ( Objects.equals(serializationType, contentTypeResultsXML) ) {
-                charset = null;
-                if ( stylesheetURL != null )
-                    cxt.set(RowSetWriterXML.xmlStylesheet, stylesheetURL);
-            }
-            if ( Objects.equals(serializationType, contentTypeResultsJSON) ) {
-                jsonCallback = paramCallback(action.getRequest());
-            }
-            if (Objects.equals(serializationType, 
WebContent.contentTypeResultsThrift) ) {
-                if ( booleanResult != null )
-                    ServletOps.errorBadRequest("Can't write a boolean result 
in thrift");
-                charset = null;
-            }
-            if (Objects.equals(serializationType, 
WebContent.contentTypeResultsProtobuf) ) {
-                if ( booleanResult != null )
-                    ServletOps.errorBadRequest("Can't write a boolean result 
in protobuf");
-                charset = null;
+            switch(serializationType) {
+                case contentTypeResultsXML-> {
+                    // XML controls the character set
+                    charset = null;
+                    if ( stylesheetURL != null )
+                        cxt.set(RowSetWriterXML.xmlStylesheet, stylesheetURL);
+                }
+                case contentTypeResultsJSON -> {
+                    // JSON is always UTF-8.
+                    // charset = null;
+                    jsonCallback = paramCallback(action.getRequest());
+                }
+                case contentTypeResultsThrift -> {
+                    if ( booleanResult != null )
+                        ServletOps.errorBadRequest("Can't write a boolean 
result in thrift");
+                    charset = null;
+                }
+                case contentTypeResultsProtobuf -> {
+                    if ( booleanResult != null )
+                        ServletOps.errorBadRequest("Can't write a boolean 
result in protobuf");
+                    charset = null;
+                }
             }
 
             // Finally, the general case
@@ -509,12 +514,13 @@ public class Responses
         // Stop caching (not that ?queryString URLs are cached anyway)
         if ( true )
             ServletOps.setNoCache(action);
-        // See: http://www.w3.org/International/O-HTTP-charset.html
         if ( contentType != null ) {
-            if ( charset != null && !isXML(contentType) )
+            if ( charset != null && !isXML(contentType) ) {
+                // Doing it ourselves means it is logged for "verbose"
                 contentType = contentType + "; charset=" + charset;
-            action.log.trace("Content-Type for response: " + contentType);
+            }
             action.setResponseContentType(contentType);
+            action.log.trace("Content-Type for response: " + contentType);
         }
     }
 
diff --git 
a/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/servlets/SPARQLQueryProcessor.java
 
b/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/servlets/SPARQLQueryProcessor.java
index b9600b03ad..6d527f18ee 100644
--- 
a/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/servlets/SPARQLQueryProcessor.java
+++ 
b/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/servlets/SPARQLQueryProcessor.java
@@ -440,7 +440,7 @@ public abstract class SPARQLQueryProcessor extends 
ActionService
             // DESCRIBE results are graphs
             Responses.doResponseGraph(action, result.graph());
         else if ( result.isBoolean() )
-            Responses.doResponseResultSet(action, result.booleanResult());
+            Responses.doResponseBoolean(action, result.booleanResult());
         else if ( result.isJson() )
             Responses.doResponseJson(action, result.jsonItems());
         else

Reply via email to