6394ba5840a8e0fc6da9273955bbb0199d4d94b1
[oam/tr069-adapter.git] / netconf-server / src / main / java / org / commscope / tr069adapter / netconf / boot / NetConfServiceBooter.java
1 /*\r
2  * ============LICENSE_START========================================================================\r
3  * ONAP : tr-069-adapter\r
4  * =================================================================================================\r
5  * Copyright (C) 2020 CommScope Inc Intellectual Property.\r
6  * =================================================================================================\r
7  * This tr-069-adapter software file is distributed by CommScope Inc under the Apache License,\r
8  * Version 2.0 (the "License"); you may not use this file except in compliance with the License. You\r
9  * may obtain a copy of the License at\r
10  *\r
11  * http://www.apache.org/licenses/LICENSE-2.0\r
12  *\r
13  * This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,\r
14  * either express or implied. See the License for the specific language governing permissions and\r
15  * limitations under the License.\r
16  * ===============LICENSE_END=======================================================================\r
17  */\r
18 \r
19 package org.commscope.tr069adapter.netconf.boot;\r
20 \r
21 import org.commscope.tr069adapter.netconf.server.NetConfServerManagerImpl;\r
22 import org.springframework.boot.SpringApplication;\r
23 import org.springframework.boot.autoconfigure.SpringBootApplication;\r
24 import org.springframework.boot.autoconfigure.domain.EntityScan;\r
25 import org.springframework.context.ApplicationContext;\r
26 import org.springframework.context.annotation.ComponentScan;\r
27 import org.springframework.data.jpa.repository.config.EnableJpaRepositories;\r
28 import org.springframework.retry.annotation.EnableRetry;\r
29 \r
30 @SpringBootApplication\r
31 @ComponentScan({"org.commscope.tr069adapter.netconf", "org.opendaylight.netconf.test", "org.commscope.tr069adapter.common"})\r
32 @EnableJpaRepositories("org.commscope.tr069adapter.netconf.dao")\r
33 @EntityScan("org.commscope.tr069adapter.netconf.entity")\r
34 @EnableRetry\r
35 public class NetConfServiceBooter {\r
36 \r
37   private static ApplicationContext appContext;\r
38 \r
39   public static void main(String[] args) {\r
40     if (args != null)\r
41       appContext = SpringApplication.run(NetConfServiceBooter.class, args);\r
42     NetConfServerManagerImpl serverManager =\r
43         NetConfServiceBooter.getApplicationContext().getBean(NetConfServerManagerImpl.class);\r
44     serverManager.restartServers(); // restart all netconf servers during startup.\r
45   }\r
46 \r
47   public static ApplicationContext getApplicationContext() {\r
48     return appContext;\r
49   }\r
50 }\r