@Override
 public void onDisable() {
   Bukkit.getLogger().info("Disabling");
   try {
     utils.setOffline();
   } catch (SQLException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
   }
 }
 private void initialiseVariables() throws SQLException {
   portals = new HashMap<String, Portal>();
   sql = new SQL(url, database, port, username, password);
   motd = Bukkit.getMotd();
   utils = new Utilities(this);
   try {
     utils.setMOTD();
   } catch (SQLException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
   }
   if (usingSigns) {
     AllSigns = new HashSet<BungeeSign>();
     servers = utils.getServers();
     signFormats = utils.getSignFormats();
     signs = utils.loadSigns();
   }
   if (usingPortals) {
     portals = utils.loadPortals();
   }
   if (usingVault) {
     usingVault = setupChat();
   }
 }
  @Override
  public void onEnable() {
    log = Bukkit.getServer().getConsoleSender();
    log.sendMessage(ChatColor.DARK_GREEN + "========BungeeSuite Enabling========");
    log.sendMessage(ChatColor.GREEN + "- Loading Config");
    loadConfig();
    log.sendMessage(ChatColor.GREEN + "- Initialising Variables");
    try {
      initialiseVariables();
    } catch (SQLException e1) {
      // TODO Auto-generated catch block
      e1.printStackTrace();
    }

    log.sendMessage(ChatColor.GREEN + "- Registering Plugin Channels");
    registerPluginChannels();
    log.sendMessage(ChatColor.GREEN + "- Registering Listeners");
    registerListeners();
    try {
      utils.setOnline();
    } catch (SQLException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    }
    if (usingSigns) {
      try {
        BukkitTask task = new SignHandler(this).runTaskTimer(this, 100, signUpdatePeriod);
      } catch (IllegalArgumentException | IllegalStateException | SQLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
      }
    }
    if (dynamicMOTD) {
      BukkitTask updateMOTD =
          new MOTDUpdater(this).runTaskTimerAsynchronously(this, 100, MOTDUpdatePeriod);
    }
  }