func BondJob(bond *definitions.Bond, do *definitions.Do) (string, error) { // Process Variables bond.Account, _ = util.PreProcess(bond.Account, do) bond.Amount, _ = util.PreProcess(bond.Amount, do) bond.PublicKey, _ = util.PreProcess(bond.PublicKey, do) // Use Defaults bond.Account = useDefault(bond.Account, do.Package.Account) do.PublicKey = useDefault(do.PublicKey, bond.PublicKey) // Formulate tx log.WithFields(log.Fields{ "public key": do.PublicKey, "amount": bond.Amount, }).Infof("Bond Transaction") erisNodeClient := client.NewErisNodeClient(do.Chain) erisKeyClient := keys.NewErisKeyClient(do.Signer) tx, err := core.Bond(erisNodeClient, erisKeyClient, do.PublicKey, bond.Account, bond.Amount, bond.Nonce) if err != nil { return util.MintChainErrorHandler(do, err) } // Sign, broadcast, display return txFinalize(do, tx, bond.Wait) }
func BondJob(bond *definitions.Bond, do *definitions.Do) (string, error) { // Process Variables bond.Account, _ = util.PreProcess(bond.Account, do) bond.Amount, _ = util.PreProcess(bond.Amount, do) bond.PublicKey, _ = util.PreProcess(bond.PublicKey, do) // Use Defaults bond.Account = useDefault(bond.Account, do.Package.Account) do.PublicKey = useDefault(do.PublicKey, bond.PublicKey) // Formulate tx logger.Infof("Bond Transaction =>\t\t%s:%s\n", do.PublicKey, bond.Amount) tx, err := core.Bond(do.Chain, do.Signer, do.PublicKey, bond.Account, bond.Amount, bond.Nonce) if err != nil { logger.Errorf("ERROR =>\n") return "", err } // Sign, broadcast, display return txFinalize(do, tx, bond.Wait) }