package com.yoghurt.crypto.transactions.server; import java.io.IOException; import java.util.Properties; import javax.servlet.ServletContextEvent; import javax.servlet.ServletContextListener; import javax.servlet.annotation.WebListener; import com.yoghurt.crypto.transactions.server.servlets.BlockchainRetrievalFactory; import com.yoghurt.crypto.transactions.server.servlets.config.AuthenticatedConfigProvider; import com.yoghurt.crypto.transactions.server.servlets.config.ConfigFactory; import com.yoghurt.crypto.transactions.server.servlets.config.ConfigFactory.ConfigPropertiesRetriever; @WebListener public class ApplicationStartupContextListener implements ServletContextListener { @Override public void contextInitialized(final ServletContextEvent sce) { final AuthenticatedConfigProvider configProvider = new AuthenticatedConfigProvider(); Properties props; try { props = configProvider.getProperties(); } catch (final IOException e) { System.out.println("Could not find properties. No application config can be set."); e.printStackTrace(); return; } final ConfigPropertiesRetriever retriever = ConfigFactory.create(props); BlockchainRetrievalFactory.set(retriever.getSystemConfig()); } @Override public void contextDestroyed(final ServletContextEvent sce) { // No-op here } }