Search in sources :

Example 6 with RpcClientResult

use of io.nuls.kernel.model.RpcClientResult in project nuls by nuls-io.

the class CallContractProcessor method execute.

@Override
public CommandResult execute(String[] args) {
    ContractCall form = paramsData.get();
    if (null == form) {
        form = getContractCall(args);
    }
    if (null == form) {
        return CommandResult.getFailed("parameter error.");
    }
    String sender = form.getSender();
    RpcClientResult res = CommandHelper.getPassword(sender, restFul);
    if (!res.isSuccess()) {
        return CommandResult.getFailed(res);
    }
    String password = (String) res.getData();
    res = getContractCallArgsJson();
    if (!res.isSuccess()) {
        return CommandResult.getFailed(res);
    }
    Object[] contractArgs = (Object[]) res.getData();
    Map<String, Object> parameters = new HashMap<>();
    parameters.put("sender", sender);
    parameters.put("gasLimit", form.getGasLimit());
    parameters.put("price", form.getPrice());
    parameters.put("password", password);
    parameters.put("remark", form.getRemark());
    parameters.put("contractAddress", form.getContractAddress());
    parameters.put("value", form.getValue());
    parameters.put("methodName", form.getMethodName());
    parameters.put("methodDesc", form.getMethodDesc());
    parameters.put("args", contractArgs);
    RpcClientResult result = restFul.post("/contract/call", parameters);
    if (result.isFailed()) {
        return CommandResult.getFailed(result);
    }
    return CommandResult.getResult(result);
}
Also used : HashMap(java.util.HashMap) RpcClientResult(io.nuls.kernel.model.RpcClientResult) ContractCall(io.nuls.contract.rpc.form.ContractCall)

Example 7 with RpcClientResult

use of io.nuls.kernel.model.RpcClientResult in project nuls by nuls-io.

the class DeleteContractProcessor method execute.

@Override
public CommandResult execute(String[] args) {
    String sender = args[1];
    if (StringUtils.isBlank(sender)) {
        return CommandResult.getFailed(KernelErrorCode.PARAMETER_ERROR.getMsg());
    }
    String password = CommandHelper.getPwd();
    /**
     * assemble request body JSON
     */
    Map<String, Object> parameters = new HashMap<>(3);
    parameters.put("sender", args[1]);
    parameters.put("contractAddress", args[2]);
    parameters.put("password", password);
    String url = "/contract/delete";
    RpcClientResult result = restFulUtils.post(url, parameters);
    if (result.isFailed()) {
        return CommandResult.getFailed(result);
    }
    return CommandResult.getResult(result);
}
Also used : HashMap(java.util.HashMap) RpcClientResult(io.nuls.kernel.model.RpcClientResult)

Example 8 with RpcClientResult

use of io.nuls.kernel.model.RpcClientResult in project nuls by nuls-io.

the class GetContractBalanceProcessor method execute.

@Override
public CommandResult execute(String[] args) {
    String address = args[1];
    if (StringUtils.isBlank(address)) {
        return CommandResult.getFailed(KernelErrorCode.PARAMETER_ERROR.getMsg());
    }
    String url = "/contract/balance/" + address;
    RpcClientResult result = restFul.get(url, null);
    if (result.isFailed()) {
        return CommandResult.getFailed(result);
    }
    /**
     * assemble display data info
     */
    Map<String, Object> data = (Map) result.getData();
    /**
     * convert balance unit Na to NULS
     * the result balance unit is Na
     */
    data.put("balance", CommandHelper.naToNuls(Long.valueOf(data.get("balance").toString())));
    return CommandResult.getResult(result);
}
Also used : RpcClientResult(io.nuls.kernel.model.RpcClientResult) Map(java.util.Map)

Example 9 with RpcClientResult

use of io.nuls.kernel.model.RpcClientResult in project nuls by nuls-io.

the class GetContractInfoProcessor method execute.

@Override
public CommandResult execute(String[] args) {
    String address = args[1];
    if (StringUtils.isBlank(address)) {
        return CommandResult.getFailed(KernelErrorCode.PARAMETER_ERROR.getMsg());
    }
    String url = "/contract/info/" + address;
    RpcClientResult result = restFul.get(url, null);
    if (result.isFailed()) {
        return CommandResult.getFailed(result);
    }
    // Map<String, Object> dataMap = (Map) map.get("data");
    return CommandResult.getResult(result);
}
Also used : RpcClientResult(io.nuls.kernel.model.RpcClientResult)

Example 10 with RpcClientResult

use of io.nuls.kernel.model.RpcClientResult in project nuls by nuls-io.

the class GetContractTxProcessor method execute.

@Override
public CommandResult execute(String[] args) {
    String hash = args[1];
    if (StringUtils.isBlank(hash)) {
        return CommandResult.getFailed(KernelErrorCode.PARAMETER_ERROR.getMsg());
    }
    RpcClientResult result = restFul.get("/contract/tx/" + hash, null);
    if (result.isFailed()) {
        return CommandResult.getFailed(result);
    }
    Map<String, Object> map = (Map) result.getData();
    map.put("fee", CommandHelper.naToNuls(map.get("fee")));
    map.put("value", CommandHelper.naToNuls(map.get("value")));
    map.put("time", DateUtil.convertDate(new Date((Long) map.get("time"))));
    map.put("status", statusExplain((Integer) map.get("status")));
    map.put("type", CommandHelper.txTypeExplain((Integer) map.get("type")));
    List<Map<String, Object>> inputs = (List<Map<String, Object>>) map.get("inputs");
    for (Map<String, Object> input : inputs) {
        input.put("value", CommandHelper.naToNuls(input.get("value")));
    }
    map.put("inputs", inputs);
    List<Map<String, Object>> outputs = (List<Map<String, Object>>) map.get("outputs");
    for (Map<String, Object> output : outputs) {
        output.put("value", CommandHelper.naToNuls(output.get("value")));
        output.put("status", statusExplainForOutPut((Integer) output.get("status")));
    }
    map.put("outputs", outputs);
    Map<String, Object> txDataMap = (Map) map.get("txData");
    if (txDataMap != null) {
        Map<String, Object> dataMap = (Map) txDataMap.get("data");
        if (dataMap != null) {
            dataMap.put("value", CommandHelper.naToNuls(dataMap.get("value")));
            dataMap.put("price", CommandHelper.naToNuls(dataMap.get("price")));
        }
    }
    Map<String, Object> contractResultMap = (Map) map.get("contractResult");
    if (contractResultMap != null) {
        contractResultMap.put("totalFee", CommandHelper.naToNuls(contractResultMap.get("totalFee")));
        contractResultMap.put("txSizeFee", CommandHelper.naToNuls(contractResultMap.get("txSizeFee")));
        contractResultMap.put("actualContractFee", CommandHelper.naToNuls(contractResultMap.get("actualContractFee")));
        contractResultMap.put("refundFee", CommandHelper.naToNuls(contractResultMap.get("refundFee")));
        contractResultMap.put("value", CommandHelper.naToNuls(contractResultMap.get("value")));
        contractResultMap.put("price", CommandHelper.naToNuls(contractResultMap.get("price")));
        contractResultMap.put("balance", CommandHelper.naToNuls(contractResultMap.get("balance")));
    }
    result.setData(map);
    return CommandResult.getResult(result);
}
Also used : RpcClientResult(io.nuls.kernel.model.RpcClientResult) List(java.util.List) Map(java.util.Map) Date(java.util.Date)

Aggregations

RpcClientResult (io.nuls.kernel.model.RpcClientResult)88 HashMap (java.util.HashMap)49 Map (java.util.Map)24 Date (java.util.Date)14 List (java.util.List)14 Result (io.nuls.kernel.model.Result)7 InputDto (io.nuls.accout.ledger.rpc.dto.InputDto)5 GET (javax.ws.rs.GET)5 Path (javax.ws.rs.Path)5 Produces (javax.ws.rs.Produces)5 ApiOperation (io.swagger.annotations.ApiOperation)4 ApiResponses (io.swagger.annotations.ApiResponses)4 NulsException (io.nuls.kernel.exception.NulsException)3 Na (io.nuls.kernel.model.Na)3 Node (io.nuls.network.model.Node)3 Test (org.junit.Test)3 RandomSeedDTO (io.nuls.consensus.poc.rpc.model.RandomSeedDTO)2 Coin (io.nuls.kernel.model.Coin)2 IOException (java.io.IOException)2 AccountKeyStoreDto (io.nuls.account.rpc.model.AccountKeyStoreDto)1