2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
20 * ECOMP is a trademark and service mark of AT&T Intellectual Property.
22 package org.onap.aai.interceptors;
26 import javax.servlet.http.HttpServletRequest;
27 import javax.servlet.http.HttpServletResponse;
29 import org.onap.aai.logging.LoggingContext;
31 import ajsc.beans.interceptors.AjscInterceptor;
33 public class PreAaiAjscInterceptor implements AjscInterceptor {
34 private final static String TARGET_ENTITY = "aai-traversal";
36 private static class LazyAaiAjscInterceptor {
37 public static final PreAaiAjscInterceptor INSTANCE = new PreAaiAjscInterceptor();
40 public static PreAaiAjscInterceptor getInstance() {
41 return LazyAaiAjscInterceptor.INSTANCE;
45 public boolean allowOrReject(HttpServletRequest req, HttpServletResponse resp, Map<?, ?> paramMap)
48 LoggingContext.init();
50 String serviceName = req.getMethod() + " " + req.getRequestURI().toString();
51 LoggingContext.partnerName(req.getHeader("X-FromAppId"));
52 String queryStr = req.getQueryString();
53 if ( queryStr != null ) {
54 serviceName = serviceName + "?" + queryStr;
56 LoggingContext.serviceName(serviceName);
57 LoggingContext.targetEntity(TARGET_ENTITY);
58 LoggingContext.targetServiceName("allowOrReject");
59 LoggingContext.requestId(req.getHeader("X-TransactionId"));
60 LoggingContext.successStatusFields();