From 321dac44eba6b00b4e9bf94be287b4477a1fd443 Mon Sep 17 00:00:00 2001 From: Aaron Coburn Date: Tue, 9 May 2023 03:43:25 -0400 Subject: [PATCH] JCL-341: Omit Accept Turtle header when reading non-RDF resources (#445) --- .../main/java/com/inrupt/client/solid/SolidClient.java | 4 +++- .../com/inrupt/client/solid/SolidMockHttpService.java | 8 ++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/solid/src/main/java/com/inrupt/client/solid/SolidClient.java b/solid/src/main/java/com/inrupt/client/solid/SolidClient.java index 2a64c677f2a..97eda0906bf 100644 --- a/solid/src/main/java/com/inrupt/client/solid/SolidClient.java +++ b/solid/src/main/java/com/inrupt/client/solid/SolidClient.java @@ -123,7 +123,9 @@ public CompletionStage read(final URI identifier, final decorateHeaders(builder, defaultHeaders); decorateHeaders(builder, headers); - builder.setHeader(ACCEPT, TEXT_TURTLE); + if (RDFSource.class.isAssignableFrom(clazz)) { + builder.setHeader(ACCEPT, TEXT_TURTLE); + } defaultHeaders.firstValue(USER_AGENT).ifPresent(agent -> builder.setHeader(USER_AGENT, agent)); headers.firstValue(USER_AGENT).ifPresent(agent -> builder.setHeader(USER_AGENT, agent)); diff --git a/solid/src/test/java/com/inrupt/client/solid/SolidMockHttpService.java b/solid/src/test/java/com/inrupt/client/solid/SolidMockHttpService.java index c0dc24d3620..d1f015e5443 100644 --- a/solid/src/test/java/com/inrupt/client/solid/SolidMockHttpService.java +++ b/solid/src/test/java/com/inrupt/client/solid/SolidMockHttpService.java @@ -159,6 +159,14 @@ private void setupMocks() { .withStatus(204))); wireMockServer.stubFor(get(urlEqualTo("/binary")) + .atPriority(1) + .withHeader("User-Agent", equalTo(USER_AGENT)) + .withHeader("Accept", containing("text/turtle")) + .willReturn(aResponse() + .withStatus(406))); + + wireMockServer.stubFor(get(urlEqualTo("/binary")) + .atPriority(2) .withHeader("User-Agent", equalTo(USER_AGENT)) .willReturn(aResponse() .withStatus(200)