Summary Table

Categories Total Count
PII 0
URL 0
DNS 0
EKL 0
IP 0
PORT 0
VsID 0
CF 0
AI 0
VPD 0
PL 0
Other 0

File Content

package gov.va.vamf.scheduling.varutility.config;


import gov.va.vamf.scheduling.varutility.security.JwtAuthUserKeyFilter;
import gov.va.vamf.scheduling.varutility.serializer.JSONJAXBContextResolver;
import gov.va.vamf.security.v1.filters.JwtAuthResourceFilter;
import gov.va.vamf.security.v1.filters.JwtAuthRoleFilter;
import org.glassfish.jersey.logging.LoggingFeature;
import org.glassfish.jersey.jackson.JacksonFeature;
import org.glassfish.jersey.server.ResourceConfig;
import org.glassfish.jersey.server.spring.scope.RequestContextFilter;

import javax.ws.rs.Priorities;

public class VarUtilityServicesConfig extends ResourceConfig {

String[] packages = {
"gov.va.vamf.scheduling.varutility",
"io.swagger.jaxrs.listing"
};

public VarUtilityServicesConfig() {

register(JacksonFeature.class);
register(JSONJAXBContextResolver.class);
register(RequestContextFilter.class);
register(LoggingFeature.class);
register(JwtAuthResourceFilter.class);
register(JwtAuthRoleFilter.class);
// Set priority to higher than 1000 to guarantee Jwt present
register(JwtAuthUserKeyFilter.class, Priorities.AUTHORIZATION);
packages(packages);
}
}