package net.i2p.router;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
/**
* Simple command line access to various utilities.
* Not a public API. Subject to change.
* Apps and plugins should use specific classes.
*
* @since 0.9.25
*/
public class CommandLine extends net.i2p.util.CommandLine {
protected static final List<String> RCLASSES = Arrays.asList(new String[] {
"net.i2p.data.router.RouterInfo",
"net.i2p.data.router.RouterKeyGenerator",
"net.i2p.router.MultiRouter",
"net.i2p.router.Router",
"net.i2p.router.RouterLaunch",
"net.i2p.router.RouterVersion",
"net.i2p.router.naming.BlockfileNamingService",
"net.i2p.router.peermanager.ProfileOrganizer",
"net.i2p.router.tasks.CryptoChecker",
"net.i2p.router.time.NtpClient",
"net.i2p.router.transport.GeoIPv6",
"net.i2p.router.transport.udp.MTU",
"net.i2p.router.transport.UPnP"
});
protected CommandLine() {}
public static void main(String args[]) {
List<String> classes = new ArrayList<String>(RCLASSES.size() + CLASSES.size());
classes.addAll(RCLASSES);
classes.addAll(CLASSES);
if (args.length > 0) {
exec(args, classes);
}
usage(classes);
System.exit(1);
}
private static void usage(List<String> classes) {
System.err.println("I2P Router version " + RouterVersion.FULL_VERSION + '\n' +
"USAGE: java -jar /path/to/router.jar command [args]");
printCommands(classes);
}
}