use of io.nuls.kernel.model.RpcClientResult in project nuls by nuls-io.
the class ContractTxTest method create.
@Test
public void create() {
List<InputDto> utxos = loadUTXOs();
String sender = this.sender;
String url = "/contract/sdk/create";
long gasLimit = 27043L;
Long price = 25L;
StringBuilder stringBuilder = new StringBuilder();
try {
// 构造一个BufferedReader类来读取文件
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(ClassLoader.getSystemResourceAsStream("vote-contract-hex.txt")));
String buf = null;
while ((buf = bufferedReader.readLine()) != null) {
stringBuilder.append(buf);
}
bufferedReader.close();
} catch (Exception e) {
e.printStackTrace();
}
String contractCode = stringBuilder.toString();
Object[] args = { 100_0000_0000L };
String remark = "";
Map<String, Object> paramsMap = new HashMap<>();
paramsMap.put("sender", sender);
paramsMap.put("contractCode", contractCode);
paramsMap.put("gasLimit", gasLimit);
paramsMap.put("price", price);
paramsMap.put("args", args);
paramsMap.put("utxos", utxos);
try {
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 VMContext method getRandomSeed.
public String getRandomSeed(long startHeight, long endHeight, String algorithm) {
RpcClientResult seedByCount = randomSeedResource.getSeedByHeight(startHeight, endHeight, algorithm);
if (seedByCount.isFailed()) {
Log.error(seedByCount.toString());
return null;
}
RandomSeedDTO dto = (RandomSeedDTO) seedByCount.getData();
return dto.getSeed();
}
use of io.nuls.kernel.model.RpcClientResult in project nuls by nuls-io.
the class GetBlockHeaderListProcessor method execute.
@Override
public CommandResult execute(String[] args) {
int pageNumber = Integer.parseInt(args[1]);
int pageSize = Integer.parseInt(args[2]);
Map<String, Object> parameters = new HashMap<>();
parameters.put("pageNumber", pageNumber);
parameters.put("pageSize", pageSize);
RpcClientResult result = restFul.get("", parameters);
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 CreateContractProcessor method execute.
@Override
public CommandResult execute(String[] args) {
ContractCreate form = paramsData.get();
if (null == form) {
form = getContractCreate(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();
String contractCode = form.getContractCode();
res = createContractArgs(contractCode);
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("contractCode", form.getContractCode());
parameters.put("args", contractArgs);
RpcClientResult result = restFul.post("/contract/create", parameters);
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 GetContractConstructorProcessor method execute.
@Override
public CommandResult execute(String[] args) {
String code = args[1];
if (StringUtils.isBlank(code)) {
return CommandResult.getFailed(KernelErrorCode.PARAMETER_ERROR.getMsg());
}
/**
* assemble request body JSON
*/
Map<String, Object> parameters = new HashMap<>();
parameters.put("contractCode", code);
String url = "/contract/constructor";
RpcClientResult result = restFulUtils.post(url, parameters);
if (result.isFailed()) {
return CommandResult.getFailed(result);
}
return CommandResult.getResult(result);
}
Aggregations