use of io.nuls.accout.ledger.rpc.form.TransferForm in project nuls by nuls-io.
the class TransferProcessor method getTransferForm.
private TransferForm getTransferForm(String[] args) {
TransferForm form = null;
Long amount = null;
try {
Na na = Na.parseNuls(args[3]);
if (na != null) {
amount = na.getValue();
form = new TransferForm();
} else {
return null;
}
} catch (Exception e) {
return null;
}
switch(args.length) {
case 4:
form.setAddress(args[1]);
form.setToAddress(args[2]);
form.setAmount(amount);
break;
case 5:
form.setAddress(args[1]);
form.setToAddress(args[2]);
form.setAmount(amount);
form.setRemark(args[4]);
break;
}
return form;
}
use of io.nuls.accout.ledger.rpc.form.TransferForm in project nuls by nuls-io.
the class TransferProcessor method argsValidate.
@Override
public boolean argsValidate(String[] args) {
boolean result;
do {
int length = args.length;
if (length != 4 && length != 5) {
result = false;
break;
}
if (!CommandHelper.checkArgsIsNull(args)) {
result = false;
break;
}
if (!StringUtils.isNuls(args[3])) {
result = false;
break;
}
TransferForm form = getTransferForm(args);
if (null == form) {
result = false;
break;
}
paramsData.set(form);
result = StringUtils.isNotBlank(form.getToAddress());
if (!result) {
break;
}
result = form.getAmount() > 0;
} while (false);
return result;
}
use of io.nuls.accout.ledger.rpc.form.TransferForm in project nuls by nuls-io.
the class TransferProcessor method execute.
@Override
public CommandResult execute(String[] args) {
TransferForm form = paramsData.get();
if (null == form) {
form = getTransferForm(args);
}
String address = form.getAddress();
RpcClientResult res = CommandHelper.getPassword(address, restFul);
if (!res.isSuccess()) {
return CommandResult.getFailed(res);
}
String password = (String) res.getData();
Map<String, Object> parameters = new HashMap<>();
parameters.put("address", form.getAddress());
parameters.put("toAddress", form.getToAddress());
parameters.put("password", password);
parameters.put("amount", form.getAmount());
parameters.put("remark", form.getRemark());
RpcClientResult result = restFul.post("/accountledger/transfer", parameters);
if (result.isFailed()) {
return CommandResult.getFailed(result);
}
return CommandResult.getResult(CommandResult.dataTransformValue(result));
}
Aggregations