func SendJob(send *definitions.Send, do *definitions.Do) (string, error) { // Process Variables send.Source, _ = util.PreProcess(send.Source, do) send.Destination, _ = util.PreProcess(send.Destination, do) send.Amount, _ = util.PreProcess(send.Amount, do) // Use Default send.Source = useDefault(send.Source, do.Package.Account) // Don't use pubKey if account override var oldKey string if send.Source != do.Package.Account { oldKey = do.PublicKey do.PublicKey = "" } // Formulate tx logger.Infof("Sending Transaction =>\t\t%s:%s:%s\n", send.Source, send.Destination, send.Amount) tx, err := core.Send(do.Chain, do.Signer, do.PublicKey, send.Source, send.Destination, send.Amount, send.Nonce) if err != nil { logger.Errorf("ERROR =>\n") return "", err } // Don't use pubKey if account override if send.Source != do.Package.Account { do.PublicKey = oldKey } // Sign, broadcast, display return txFinalize(do, tx, send.Wait) }
func SendJob(send *definitions.Send, do *definitions.Do) (string, error) { // Process Variables send.Source, _ = util.PreProcess(send.Source, do) send.Destination, _ = util.PreProcess(send.Destination, do) send.Amount, _ = util.PreProcess(send.Amount, do) // Use Default send.Source = useDefault(send.Source, do.Package.Account) // Don't use pubKey if account override var oldKey string if send.Source != do.Package.Account { oldKey = do.PublicKey do.PublicKey = "" } // Formulate tx log.WithFields(log.Fields{ "source": send.Source, "destination": send.Destination, "amount": send.Amount, }).Info("Sending Transaction") erisNodeClient := client.NewErisNodeClient(do.Chain) erisKeyClient := keys.NewErisKeyClient(do.Signer) tx, err := core.Send(erisNodeClient, erisKeyClient, do.PublicKey, send.Source, send.Destination, send.Amount, send.Nonce) if err != nil { return util.MintChainErrorHandler(do, err) } // Don't use pubKey if account override if send.Source != do.Package.Account { do.PublicKey = oldKey } // Sign, broadcast, display return txFinalize(do, tx, send.Wait) }