Search in sources :

Example 1 with TransferForm

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;
}
Also used : Na(io.nuls.kernel.model.Na) TransferForm(io.nuls.accout.ledger.rpc.form.TransferForm)

Example 2 with TransferForm

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;
}
Also used : TransferForm(io.nuls.accout.ledger.rpc.form.TransferForm)

Example 3 with TransferForm

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));
}
Also used : HashMap(java.util.HashMap) RpcClientResult(io.nuls.kernel.model.RpcClientResult) TransferForm(io.nuls.accout.ledger.rpc.form.TransferForm)

Aggregations

TransferForm (io.nuls.accout.ledger.rpc.form.TransferForm)3 Na (io.nuls.kernel.model.Na)1 RpcClientResult (io.nuls.kernel.model.RpcClientResult)1 HashMap (java.util.HashMap)1