[POLICY-73] replace openecomp for policy-engine
[policy/engine.git] / ONAP-PDP-REST / src / main / java / org / onap / policy / pdp / rest / config / PDPRestInitializer.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP-PDP-REST
4  * ================================================================================
5  * Copyright (C) 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
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
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=========================================================
19  */
20 package org.onap.policy.pdp.rest.config;
21
22 import javax.servlet.MultipartConfigElement;
23 import javax.servlet.ServletContext;
24 import javax.servlet.ServletException;
25 import javax.servlet.ServletRegistration;
26
27 import org.onap.policy.common.logging.eelf.PolicyLogger;
28 import org.springframework.web.WebApplicationInitializer;
29 import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;
30 import org.springframework.web.servlet.DispatcherServlet;
31
32 /**
33  * PDP REST API configuration initialization.
34  * 
35  * @version 0.1
36  */
37 public class PDPRestInitializer implements WebApplicationInitializer {
38         @Override
39         public void onStartup(ServletContext container) throws ServletException {
40                 PolicyLogger.info("PDP-REST Application Initialization Started... ");
41                 AnnotationConfigWebApplicationContext ctx = new AnnotationConfigWebApplicationContext();
42                 ctx.register(PDPRestConfig.class);
43                 ctx.setServletContext(container);
44                 ctx.refresh();
45                 ServletRegistration.Dynamic servlet = container.addServlet(
46                                 "dispatcher", new DispatcherServlet(ctx));
47                 servlet.setLoadOnStartup(1);
48                 servlet.addMapping("/api/*");
49                 servlet.setMultipartConfig(ctx.getBean(MultipartConfigElement.class));
50         }
51 }