You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
common-gcube-calls/src/main/java/org/gcube/common/calls/interceptors/CalledMethodInterceptor.java

30 lines
890 B
Java

package org.gcube.common.calls.interceptors;
import org.gcube.common.authorization.library.provider.CalledMethodProvider;
import org.gcube.common.calls.Call;
import org.gcube.common.calls.Interceptor;
import org.gcube.common.calls.Request;
import org.gcube.common.calls.Response;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class CalledMethodInterceptor implements Interceptor {
private Logger logger = LoggerFactory.getLogger(CalledMethodInterceptor.class);
public static final String calledMethodHeader="gcube-method";
@Override
public void handleRequest(Request request, Call call) {
String calledMethod = CalledMethodProvider.instance.get();
request.addHeader(calledMethodHeader, calledMethod);
logger.trace("called method set in the header is "+calledMethod);
}
@Override
public void handleResponse(Response context, Call callContext) {}
}