use of io.nuls.kernel.model.RpcClientResult in project nuls by nuls-io.
the class ContractTxTest method deleteContract.
@Test
public void deleteContract() {
List<InputDto> utxos = loadUTXOs();
String url = "/contract/sdk/delete";
String sender = this.sender;
String contractAddress = "NseDkRagNCj8kNE6JRPB55i5bZuAeKtf";
Map<String, Object> paramsMap = new HashMap<>();
paramsMap.put("sender", sender);
paramsMap.put("contractAddress", contractAddress);
paramsMap.put("remark", "");
paramsMap.put("utxos", utxos);
try {
logger.info("{}", JSONUtils.obj2json(paramsMap));
RpcClientResult result = restFul.post(url, paramsMap);
logger.info("result {}", result);
} catch (Exception e) {
e.printStackTrace();
}
}
use of io.nuls.kernel.model.RpcClientResult in project nuls by nuls-io.
the class CreateContractProcessor method createContractArgs.
private RpcClientResult createContractArgs(String contractCode) {
Map<String, Object> parameters = new HashMap<>();
parameters.put("contractCode", contractCode);
RpcClientResult result = restFul.post("/contract/constructor", parameters);
if (result.isSuccess()) {
RpcClientResult rpcClientResult = new RpcClientResult();
rpcClientResult.setSuccess(true);
try {
Map<String, Object> map = (Map) result.getData();
Map<String, Object> constructorMap = (Map) map.get("constructor");
List<Object> argsList = (List) constructorMap.get("args");
Object[] argsObj;
if (argsList.size() > 0) {
String argsListStr = JSONUtils.obj2PrettyJson(argsList);
// 再次交互输入构造参数
String argsJson = getArgsJson(argsListStr);
argsObj = parseArgsJson(argsJson);
} else {
argsObj = new Object[0];
}
rpcClientResult.setData(argsObj);
} catch (Exception e) {
e.printStackTrace();
rpcClientResult.setSuccess(false);
}
return rpcClientResult;
}
return result;
}
use of io.nuls.kernel.model.RpcClientResult in project nuls by nuls-io.
the class GetContractAddressValidProcessor 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/" + address;
RpcClientResult result = restFulUtils.get(url, null);
if (result.isFailed()) {
return CommandResult.getFailed(result);
}
return CommandResult.getResult(result);
}
use of io.nuls.kernel.model.RpcClientResult in project nuls by nuls-io.
the class GetContractResultProcessor 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/result/" + hash, null);
if (result.isFailed()) {
return CommandResult.getFailed(result);
}
Map<String, Object> map = (Map) result.getData();
Map<String, Object> dataMap = (Map) map.get("data");
if (dataMap != null) {
dataMap.put("totalFee", CommandHelper.naToNuls(dataMap.get("totalFee")));
dataMap.put("txSizeFee", CommandHelper.naToNuls(dataMap.get("txSizeFee")));
dataMap.put("actualContractFee", CommandHelper.naToNuls(dataMap.get("actualContractFee")));
dataMap.put("refundFee", CommandHelper.naToNuls(dataMap.get("refundFee")));
dataMap.put("value", CommandHelper.naToNuls(dataMap.get("value")));
dataMap.put("price", CommandHelper.naToNuls(dataMap.get("price")));
dataMap.put("balance", CommandHelper.naToNuls(dataMap.get("balance")));
}
result.setData(dataMap);
return CommandResult.getResult(result);
}
use of io.nuls.kernel.model.RpcClientResult in project nuls by nuls-io.
the class GetTokenBalanceProcessor method execute.
@Override
public CommandResult execute(String[] args) {
String contractAddress = args[1].trim();
String address = args[2].trim();
String url = "/contract/balance/token/" + contractAddress + "/" + address;
RpcClientResult result = restFul.get(url, null);
if (result.isFailed()) {
return CommandResult.getFailed(result);
}
Map<String, Object> data = (Map) result.getData();
data.put("amount", CommandHelper.tokenRecovery(valueOf(data.get("amount")), (Integer) data.get("decimals")));
data.put("status", statusExplain((Integer) data.get("status")));
data.remove("decimals");
data.remove("blockHeight");
return CommandResult.getResult(result);
}
Aggregations