b465792285fb9af576afb0067174d05f439737b7
[integration/csit.git] / plans / so / integration-etsi-testing / so-simulators / vnfm-simulator / vnfm-service / src / main / java / org / onap / so / svnfm / simulator / config / ApplicationConfig.java
1 package org.onap.so.svnfm.simulator.config;
2
3 import java.util.Arrays;
4 import org.onap.so.svnfm.simulator.constants.Constant;
5 import org.springframework.beans.factory.annotation.Autowired;
6 import org.springframework.beans.factory.annotation.Value;
7 import org.springframework.boot.ApplicationArguments;
8 import org.springframework.boot.ApplicationRunner;
9 import org.springframework.cache.Cache;
10 import org.springframework.cache.CacheManager;
11 import org.springframework.cache.concurrent.ConcurrentMapCache;
12 import org.springframework.cache.support.SimpleCacheManager;
13 import org.springframework.context.annotation.Bean;
14 import org.springframework.core.env.Environment;
15 import org.springframework.stereotype.Component;
16
17 @Component
18 public class ApplicationConfig implements ApplicationRunner {
19
20     private static final String PORT = "local.server.port";
21
22     @Value("${server.dns.name:so-vnfm-simulator.onap}")
23     private String serverDnsName;
24
25     @Value("${server.request.grant.auth:oauth}")
26     private String grantAuth;
27
28     @Autowired
29     private Environment environment;
30
31     private String baseUrl;
32
33     @Override
34     public void run(final ApplicationArguments args) throws Exception {
35         baseUrl = "http://" + serverDnsName + ":" + environment.getProperty(PORT);
36     }
37
38     public String getBaseUrl() {
39         return baseUrl;
40     }
41
42     public String getGrantAuth() {
43         return grantAuth;
44     }
45
46     @Bean
47     public CacheManager cacheManager() {
48         final Cache inlineResponse201 = new ConcurrentMapCache(Constant.IN_LINE_RESPONSE_201_CACHE);
49         final SimpleCacheManager manager = new SimpleCacheManager();
50         manager.setCaches(Arrays.asList(inlineResponse201));
51         return manager;
52     }
53 }