package io.emax.cosigner.admin.cli; import io.emax.cosigner.admin.AdminConnector; import io.emax.cosigner.api.core.Server; import io.emax.cosigner.common.Json; import java.util.HashMap; public class AdminApplication { /** * ListNodes AddNode SetClusterKey GetClusterKey SetLocation. */ /** * Command line interface that provides basic access to the library. */ public static void main(String[] args) { if (args.length < 1) { System.out.println("Usage: <interfaceMethod> <argument> <argument> ..."); System.out.println("Available methods:"); System.out.println("\tListNodes()"); System.out.println("\tAddNode(Server)"); System.out.println("\t\tServer: See results from ListNodes"); System.out.println("\tGetClusterKey()"); System.out.println("\tSetClusterKey(key)"); System.out.println("\tSetLocation(URIString)"); System.out.println("\tLoadEthToken(TokenSymbol)"); System.out.println("\tGetConfigurations()"); System.out.println("\tGetChainHeight(Currency)"); System.out.println("\tGetLastBlockTime(Currency)"); return; } AdminConnector adminConnection = new AdminConnector(); Server server; String stringInput = ""; switch (args[0]) { case "ListNodes": System.out.println(adminConnection.listNodes()); break; case "AddNode": if (args.length >= 2) { stringInput = args[1]; } server = (Server) Json.objectifyString(Server.class, stringInput); System.out.println(adminConnection.addNode(server)); break; case "GetClusterKey": System.out.println(adminConnection.getClusterKey()); break; case "SetClusterKey": if (args.length >= 2) { stringInput = args[1]; } adminConnection.setClusterKey(stringInput); System.out.println("Set the cluster key"); break; case "SetLocation": if (args.length >= 2) { stringInput = args[1]; } adminConnection.setServerLocation(stringInput); System.out.println("Set the server location"); break; case "GetConfigurations": System.out.println(Json.stringifyObject(HashMap.class, adminConnection.getConfigurations())); break; case "LoadEthToken": if (args.length >= 2) { stringInput = args[1]; } adminConnection.loadEthToken(stringInput); System.out.println("Loaded eth token [" + stringInput + "]"); break; case "GetChainHeight": if (args.length >= 2) { stringInput = args[1]; } System.out.println(adminConnection.getBlockchainHeight(stringInput)); break; case "GetLastBlockTime": if (args.length >= 2) { stringInput = args[1]; } System.out.println(adminConnection.getLastBlockTime(stringInput)); break; default: System.out.println("Method not valid or not supported yet"); } } }