package com.github.catvod.server; import com.github.catvod.crawler.SpiderDebug; public class Server { private Nano nano; private int port; private static class Loader { static volatile Server INSTANCE = new Server(); } public static Server get() { return Loader.INSTANCE; } public Server() { this.port = 9978; } public int getPort() { return port; } public String getAddress() { return getAddress(false); } public String getAddress(int tab) { return getAddress(false) + "?tab=" + tab; } public String getAddress(String path) { return getAddress(true) + path; } public String getAddress(boolean local) { return "http://" + (local ? "127.0.0.1" : "127.0.0.1") + ":" + getPort(); } public void start() { if (nano != null) return; do { try { nano = new Nano(port); // Proxy.set(port); nano.start(); System.out.println("server start at:" + port); break; } catch (Exception e) { ++port; nano.stop(); nano = null; } } while (port < 9999); } public void stop() { if (nano != null) nano.stop(); nano = null; } }