Use request scoped store to transfer UriInfo

This commit is contained in:
René Pfeuffer
2018-06-15 08:46:21 +02:00
parent 06bbeeb636
commit 8a8858407d
8 changed files with 91 additions and 20 deletions

View File

@@ -0,0 +1,24 @@
package sonia.scm.api.rest;
import sonia.scm.api.v2.resources.UriInfoStore;
import javax.inject.Inject;
import javax.ws.rs.container.ContainerRequestContext;
import javax.ws.rs.container.ContainerRequestFilter;
import javax.ws.rs.ext.Provider;
@Provider
public class UriInfoFilter implements ContainerRequestFilter {
private final javax.inject.Provider<UriInfoStore> storeProvider;
@Inject
public UriInfoFilter(javax.inject.Provider<UriInfoStore> storeProvider) {
this.storeProvider = storeProvider;
}
@Override
public void filter(ContainerRequestContext requestContext) {
storeProvider.get().set(requestContext.getUriInfo());
}
}