Skip to content
Snippets Groups Projects
Main.java 1.65 KiB
Newer Older
Spotlight Deveaux's avatar
Hai
Spotlight Deveaux committed
/**
 * @author Spotlight
 * @date Saturday, December 12th, 2015
 * @version 0.1.1
 * @category Spigot
 * @category Plugins
 * @license MIT
 */
package io.github.packserver.RegPlug;

import java.io.IOException;
Spotlight Deveaux's avatar
Spotlight Deveaux committed
import java.io.InputStream;
Spotlight Deveaux's avatar
Hai
Spotlight Deveaux committed
import java.util.logging.Level;
import java.util.logging.Logger;
Spotlight Deveaux's avatar
Spotlight Deveaux committed

import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.YamlConfiguration;
Spotlight Deveaux's avatar
Spotlight Deveaux committed
import org.bukkit.event.Listener;
Spotlight Deveaux's avatar
Hai
Spotlight Deveaux committed
import org.bukkit.plugin.java.JavaPlugin;

Spotlight Deveaux's avatar
Spotlight Deveaux committed
public class Main extends JavaPlugin implements Listener {
Spotlight Deveaux's avatar
Hai
Spotlight Deveaux committed

Spotlight Deveaux's avatar
Spotlight Deveaux committed
    /**
     * Global debug mode
     */
    static Boolean DEBUG;
Spotlight Deveaux's avatar
Spotlight Deveaux committed
    /**
     * Plugin instance
     */
    static Main plugin;
Spotlight Deveaux's avatar
Hai
Spotlight Deveaux committed

Spotlight Deveaux's avatar
Spotlight Deveaux committed
    /**
     * Fired when plugin is first enabled
     */
Spotlight Deveaux's avatar
Hai
Spotlight Deveaux committed
    @Override
    public void onEnable() {
Spotlight Deveaux's avatar
Spotlight Deveaux committed
        // Create plugin instance and hand it to plugin
        plugin = this;
        // Try to run websocket server
Spotlight Deveaux's avatar
Hai
Spotlight Deveaux committed
        try {
            WebsocketServer.runServer();
        } catch (InterruptedException | IOException ex) {
            Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
        }
Spotlight Deveaux's avatar
Spotlight Deveaux committed
        // Debug mode
        // Find if we are in debug mode or not
        InputStream in = getClass().getResourceAsStream("/config.yml");
        FileConfiguration config = YamlConfiguration.loadConfiguration(in);
        DEBUG = config.getBoolean("debug");
    }

    /**
     * Fired when plugin is disabled
     */
    @Override
    public void onDisable() {
        try {
            WebsocketServer.server.stop();
        } catch (IOException | InterruptedException ex) {
            Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
        }
Spotlight Deveaux's avatar
Hai
Spotlight Deveaux committed
    }
}