diff options
Diffstat (limited to 'mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandler/filters/RequestUriFilter.java')
-rw-r--r-- | mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandler/filters/RequestUriFilter.java | 49 |
1 files changed, 26 insertions, 23 deletions
diff --git a/mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandler/filters/RequestUriFilter.java b/mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandler/filters/RequestUriFilter.java index 91ab580b07..a3ff1ab95d 100644 --- a/mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandler/filters/RequestUriFilter.java +++ b/mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandler/filters/RequestUriFilter.java @@ -22,37 +22,40 @@ package org.onap.so.apihandler.filters; import java.io.IOException; import java.net.URI; - import javax.ws.rs.container.ContainerRequestContext; import javax.ws.rs.container.ContainerRequestFilter; import javax.ws.rs.container.PreMatching; import javax.ws.rs.core.UriInfo; - import org.onap.so.apihandlerinfra.Constants; @PreMatching public class RequestUriFilter implements ContainerRequestFilter { - private String requestURI; - @Override - public void filter(ContainerRequestContext context) throws IOException { - UriInfo uriInfo = context.getUriInfo(); - URI baseURI = uriInfo.getBaseUri(); - requestURI = uriInfo.getPath(); - - if(requestURI.contains("onap/so/infra/serviceInstances")){ - requestURI = requestURI.replaceFirst("serviceInstances", "serviceInstantiation"); - if(!requestURI.contains(Constants.SERVICE_INSTANCE_PATH)){ - //Adds /serviceInstances after the version provided in the URI - requestURI = new StringBuilder(requestURI).insert(requestURI.indexOf(Constants.SERVICE_INSTANTIATION_PATH) + 24, Constants.SERVICE_INSTANCE_PATH).toString(); - } - requestURI = baseURI + requestURI; - URI uri = URI.create(requestURI); - context.setRequestUri(uri); - } - } - public String getRequestUri(){ - return requestURI; - } + private String requestURI; + + @Override + public void filter(ContainerRequestContext context) throws IOException { + UriInfo uriInfo = context.getUriInfo(); + URI baseURI = uriInfo.getBaseUri(); + requestURI = uriInfo.getPath(); + + if (requestURI.contains("onap/so/infra/serviceInstances")) { + requestURI = requestURI.replaceFirst("serviceInstances", "serviceInstantiation"); + if (!requestURI.contains(Constants.SERVICE_INSTANCE_PATH)) { + // Adds /serviceInstances after the version provided in the URI + requestURI = new StringBuilder(requestURI) + .insert(requestURI.indexOf(Constants.SERVICE_INSTANTIATION_PATH) + 24, + Constants.SERVICE_INSTANCE_PATH) + .toString(); + } + requestURI = baseURI + requestURI; + URI uri = URI.create(requestURI); + context.setRequestUri(uri); + } + } + + public String getRequestUri() { + return requestURI; + } } |