/* * Copyright (c) 2017 univento.eu - All rights reserved * You are not allowed to use, distribute or modify this code */ package eu.univento.commons; import eu.univento.commons.configuration.ConfigurationHandler; import eu.univento.commons.database.DatabaseManager; import eu.univento.commons.logging.LoggingHandler; import eu.univento.commons.messaging.MessageHandler; import eu.univento.commons.messaging.MessagingManager; import eu.univento.commons.player.statistics.GameStatistics; import io.vertx.core.Vertx; import lombok.Getter; /** * @author joethei * @version 1.1 */ @Getter public class Commons { private static Commons commons; private DatabaseManager databaseManager; private MessagingManager messagingManager; private ConfigurationHandler configurationHandler; private LoggingHandler loggingHandler; private Vertx vertx; private GameStatistics gameStatistics; public Commons() { commons = this; vertx = Vertx.vertx(); configurationHandler = new ConfigurationHandler(); messagingManager = new MessagingManager(); databaseManager = new DatabaseManager(); loggingHandler = new LoggingHandler(); gameStatistics = new GameStatistics(); Thread.setDefaultUncaughtExceptionHandler((t, e) -> MessageHandler.sendMessage("log.Exceptions", e.getMessage())); } public void shutdown() { vertx.close(); } public static Commons getCommons() { return commons; } }