import org.springframework.boot.autoconfigure.data.cassandra.CassandraDataAutoConfiguration;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
-//import org.springframework.boot.web.support.SpringBootServletInitializer;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
-import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.DependsOn;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.web.context.request.RequestContextListener;
-@SpringBootApplication(scanBasePackages = { "org.onap.music.rest" })
+@SpringBootApplication(scanBasePackages = { "org.onap.music.rest"})
@EnableAutoConfiguration(exclude = { CassandraDataAutoConfiguration.class })
@ComponentScan(value = { "org.onap.music" })
@EnableScheduling
public class MusicApplication extends SpringBootServletInitializer {
+ private static final String KEYSPACE_PATTERN = "/v2/keyspaces/*";
+ private static final String LOCKS_PATTERN = "/v2/locks/*";
+ private static final String Q_PATTERN = "/v2/priorityq/*";
+
@Autowired
private PropertiesLoader propertyLoader;
private EELFLoggerDelegate logger = EELFLoggerDelegate.getLogger(MusicApplication.class);
+
public static void main(String[] args) {
- System.setProperty("AFT_DME2_CLIENT_IGNORE_SSL_CONFIG", "false");
- System.setProperty("AFT_DME2_CLIENT_KEYSTORE", "/opt/app/music/etc/truststore2018.jks");
- System.setProperty("AFT_DME2_CLIENT_KEYSTORE_PASSWORD", "changeit");
- System.setProperty("AFT_DME2_CLIENT_SSL_INCLUDE_PROTOCOLS", "TLSv1.1,TLSv1.2");
new MusicApplication().configure(new SpringApplicationBuilder(MusicApplication.class)).run(args);
}
propertyLoader.loadProperties();
}
- @Autowired
- private ApplicationContext appContext;
@Bean
@DependsOn("loadProperties")
propertyLoader.loadProperties();
if (MusicUtil.getIsCadi()) {
PropAccess propAccess = propAccess();
- CadiAuthFilter cadiFilter = new CadiAuthFilter(propAccess);
-
- return cadiFilter;
+ return new CadiAuthFilter(propAccess);
} else {
return (ServletRequest request, ServletResponse response, FilterChain chain) -> {
// do nothing for now.
FilterRegistrationBean<Filter> frb = new FilterRegistrationBean<>();
frb.setFilter(new MusicLoggingServletFilter());
frb.addUrlPatterns(
- "/v2/keyspaces/*",
- "/v2/locks/*",
- "/v2/priorityq/*"
+ KEYSPACE_PATTERN,
+ LOCKS_PATTERN,
+ Q_PATTERN
);
frb.setName("logFilter");
frb.setOrder(1);
return frb;
}
-
@Bean
@DependsOn("loadProperties")
logger.info("cadiFilterRegistration called for cadi filter..");
FilterRegistrationBean<Filter> frb = new FilterRegistrationBean<>();
frb.setFilter(cadiFilter());
-
- // The Following Patterns are used to control what APIs will be secure
- // TODO: Make this a configurable item. Build this from an array?
if (MusicUtil.getIsCadi()) {
frb.addUrlPatterns(
- "/v2/keyspaces/*",
- "/v2/locks/*",
- "/v2/priorityq/*"
+ KEYSPACE_PATTERN,
+ LOCKS_PATTERN,
+ Q_PATTERN
);
} else {
frb.addUrlPatterns("/v0/test");
if (MusicUtil.getIsCadi()) {
frb.addUrlPatterns(
- "/v2/keyspaces/*",
- "/v2/locks/*",
- "/v2/priorityq/*"
- );
+ KEYSPACE_PATTERN,
+ LOCKS_PATTERN,
+ Q_PATTERN
+ );
} else {
frb.addUrlPatterns("/v0/test");
}
public Filter cadiMusicAuthFilter() throws ServletException {
propertyLoader.loadProperties();
if (MusicUtil.getIsCadi()) {
- MusicAuthorizationFilter authFilter = new MusicAuthorizationFilter();
- return authFilter;
+ return new MusicAuthorizationFilter();
} else {
return (ServletRequest request, ServletResponse response, FilterChain chain) -> {
// do nothing for now.
public RequestContextListener requestContextListener() {
return new RequestContextListener();
}
-}
\ No newline at end of file
+}