aboutsummaryrefslogtreecommitdiffstats
path: root/container-search
diff options
context:
space:
mode:
authorMorten Tokle <mortent@verizonmedia.com>2021-04-22 14:52:26 +0200
committerMorten Tokle <mortent@verizonmedia.com>2021-04-22 14:52:26 +0200
commitcd91e6cd80ab56a12d99a0940d38f8ee8286fd7b (patch)
tree377e2882c682a4b886bd09f533740c7301679ced /container-search
parent4c46d92474745467a53eb53336fd4c5c162b2375 (diff)
Provide standard mapping
Diffstat (limited to 'container-search')
-rw-r--r--container-search/src/main/java/com/yahoo/search/handler/SearchHandler.java24
1 files changed, 7 insertions, 17 deletions
diff --git a/container-search/src/main/java/com/yahoo/search/handler/SearchHandler.java b/container-search/src/main/java/com/yahoo/search/handler/SearchHandler.java
index e7c5511f259..65dc1052a78 100644
--- a/container-search/src/main/java/com/yahoo/search/handler/SearchHandler.java
+++ b/container-search/src/main/java/com/yahoo/search/handler/SearchHandler.java
@@ -11,6 +11,7 @@ import com.yahoo.container.QrSearchersConfig;
import com.yahoo.container.core.ChainsConfig;
import com.yahoo.container.core.ContainerHttpConfig;
import com.yahoo.container.handler.threadpool.ContainerThreadPool;
+import com.yahoo.container.jdisc.HttpMethodAclMapping;
import com.yahoo.container.jdisc.HttpRequest;
import com.yahoo.container.jdisc.HttpResponse;
import com.yahoo.container.jdisc.LoggingRequestHandler;
@@ -106,7 +107,8 @@ public class SearchHandler extends LoggingRequestHandler {
private final AtomicLong numRequestsLeftToTrace;
- private final static RequestHandlerSpec REQUEST_HANDLER_SPEC = RequestHandlerSpec.builder().withAclMapping(SearchHandler::mapRequestToAction).build();
+ private final static RequestHandlerSpec REQUEST_HANDLER_SPEC = RequestHandlerSpec.builder()
+ .withAclMapping(SearchHandler.aclRequestMapper()).build();
private final class MeanConnections implements Callback {
@@ -641,22 +643,10 @@ public class SearchHandler extends LoggingRequestHandler {
return REQUEST_HANDLER_SPEC;
}
- private static AclMapping.Action mapRequestToAction(RequestView requestMeta) {
- switch (requestMeta.method()){
- case GET:
- case POST:
- case HEAD:
- case OPTIONS:
- return AclMapping.Action.READ;
- case PUT:
- case DELETE:
- case CONNECT:
- case TRACE:
- case PATCH:
- return AclMapping.Action.WRITE;
- default:
- throw new IllegalArgumentException("Illegal method " + requestMeta.method());
- }
+ private static AclMapping aclRequestMapper() {
+ return HttpMethodAclMapping.standard()
+ .override(com.yahoo.jdisc.http.HttpRequest.Method.POST, AclMapping.Action.READ)
+ .build();
}
}