From a59f009b9577353215d75ea0d37b8a94ab1a64c0 Mon Sep 17 00:00:00 2001 From: James Agnew Date: Fri, 18 Oct 2024 19:14:03 -0400 Subject: [PATCH] Revert "Added support for HTTP HEAD against metadata endpoint (#6152)" (#6387) This reverts commit 3e715665a154458050ab1d24cc412cee50d0b997. --- .../7_6_0/6152-add-support-for-head-request.yaml | 4 ---- .../server/method/ConformanceMethodBinding.java | 5 ++--- .../method/ConformanceMethodBindingTest.java | 14 -------------- 3 files changed, 2 insertions(+), 21 deletions(-) delete mode 100644 hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/changelog/7_6_0/6152-add-support-for-head-request.yaml diff --git a/hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/changelog/7_6_0/6152-add-support-for-head-request.yaml b/hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/changelog/7_6_0/6152-add-support-for-head-request.yaml deleted file mode 100644 index cd591ba56c7..00000000000 --- a/hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/changelog/7_6_0/6152-add-support-for-head-request.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -type: add -issue: 6152 -title: "Added the option to do HTTP HEAD requests against /metadata. Thanks to Jens Villadsen (@jkiddo) for the contribution!" diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ConformanceMethodBinding.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ConformanceMethodBinding.java index f9bc3bacec2..c45988fe4c8 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ConformanceMethodBinding.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ConformanceMethodBinding.java @@ -220,12 +220,11 @@ public class ConformanceMethodBinding extends BaseResourceReturningMethodBinding } if ("metadata".equals(theRequest.getOperation())) { - if (theRequest.getRequestType() == RequestTypeEnum.GET - || theRequest.getRequestType() == RequestTypeEnum.HEAD) { + if (theRequest.getRequestType() == RequestTypeEnum.GET) { return MethodMatchEnum.EXACT; } throw new MethodNotAllowedException( - Msg.code(388) + "/metadata request must use HTTP GET or HTTP HEAD", RequestTypeEnum.GET); + Msg.code(388) + "/metadata request must use HTTP GET", RequestTypeEnum.GET); } return MethodMatchEnum.NONE; diff --git a/hapi-fhir-server/src/test/java/ca/uhn/fhir/rest/server/method/ConformanceMethodBindingTest.java b/hapi-fhir-server/src/test/java/ca/uhn/fhir/rest/server/method/ConformanceMethodBindingTest.java index 09239f5ad12..08d465a99cf 100644 --- a/hapi-fhir-server/src/test/java/ca/uhn/fhir/rest/server/method/ConformanceMethodBindingTest.java +++ b/hapi-fhir-server/src/test/java/ca/uhn/fhir/rest/server/method/ConformanceMethodBindingTest.java @@ -3,7 +3,6 @@ package ca.uhn.fhir.rest.server.method; import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.rest.annotation.Metadata; import ca.uhn.fhir.rest.api.Constants; -import ca.uhn.fhir.rest.api.RequestTypeEnum; import ca.uhn.fhir.rest.api.server.IRestfulServer; import ca.uhn.fhir.rest.api.server.RequestDetails; import ca.uhn.fhir.rest.server.servlet.ServletRequestDetails; @@ -19,7 +18,6 @@ import org.mockito.junit.jupiter.MockitoExtension; import java.lang.reflect.Method; -import static org.junit.jupiter.api.Assertions.assertEquals; import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.RETURNS_DEEP_STUBS; import static org.mockito.Mockito.mock; @@ -108,18 +106,6 @@ public class ConformanceMethodBindingTest { verify(provider, times(2)).getServerConformance(any(), any()); } - @Test - public void invokeServer_metadata() { - - RequestDetails requestDetails = mySrd; - when(requestDetails.getOperation()).thenReturn("metadata"); - when(requestDetails.getRequestType()).thenReturn(RequestTypeEnum.GET); - assertEquals(conformanceMethodBinding.incomingServerRequestMatchesMethod(requestDetails), MethodMatchEnum.EXACT); - when(requestDetails.getRequestType()).thenReturn(RequestTypeEnum.HEAD); - assertEquals(conformanceMethodBinding.incomingServerRequestMatchesMethod(requestDetails), MethodMatchEnum.EXACT); - - } - @SuppressWarnings("unused") static class TestResourceProvider {