67 lines
1.3 KiB
Java
67 lines
1.3 KiB
Java
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;
|
|
}
|
|
}
|