本文整理汇总了Golang中github.com/eris-ltd/eris-pm/util.PreProcess函数的典型用法代码示例。如果您正苦于以下问题:Golang PreProcess函数的具体用法?Golang PreProcess怎么用?Golang PreProcess使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了PreProcess函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: SendJob
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)
}
开发者ID:benjaminbollen,项目名称:eris-pm,代码行数:33,代码来源:jobs_transact.go
示例2: RebondJob
func RebondJob(rebond *definitions.Rebond, do *definitions.Do) (string, error) {
// Process Variables
rebond.Account, _ = util.PreProcess(rebond.Account, do)
rebond.Height, _ = util.PreProcess(rebond.Height, do)
// Use defaults
rebond.Account = useDefault(rebond.Account, do.Package.Account)
// Don't use pubKey if account override
var oldKey string
if rebond.Account != do.Package.Account {
oldKey = do.PublicKey
do.PublicKey = ""
}
// Formulate tx
logger.Infof("Rebond Transaction =>\t\t%s:%s\n", rebond.Account, rebond.Height)
tx, err := core.Rebond(rebond.Account, rebond.Height)
if err != nil {
logger.Errorf("ERROR =>\n")
return "", err
}
// Don't use pubKey if account override
if rebond.Account != do.Package.Account {
do.PublicKey = oldKey
}
// Sign, broadcast, display
return txFinalize(do, tx, rebond.Wait)
}
开发者ID:benjaminbollen,项目名称:eris-pm,代码行数:31,代码来源:jobs_transact.go
示例3: BondJob
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)
}
开发者ID:eris-ltd,项目名称:eris-pm,代码行数:26,代码来源:jobs_transact.go
示例4: QueryContractJob
func QueryContractJob(query *definitions.QueryContract, do *definitions.Do) (string, error) {
// Preprocess variables. We don't preprocess data as it is processed by ReadAbiFormulateCall
query.Source, _ = util.PreProcess(query.Source, do)
query.Destination, _ = util.PreProcess(query.Destination, do)
// Set the from and the to
fromAddrBytes, err := hex.DecodeString(query.Source)
if err != nil {
return "", err
}
toAddrBytes, err := hex.DecodeString(query.Destination)
if err != nil {
return "", err
}
// Get the packed data from the ABI functions
data, err := util.ReadAbiFormulateCall(query.Destination, query.Data, do)
if err != nil {
return "", err
}
dataBytes, err := hex.DecodeString(data)
if err != nil {
return "", err
}
// Call the client
client := cclient.NewClient(do.Chain, "HTTP")
retrn, err := client.Call(fromAddrBytes, toAddrBytes, dataBytes)
if err != nil {
return "", err
}
// Preprocess return
result, err := util.FormatOutput([]string{"return"}, 0, retrn)
if err != nil {
return "", err
}
result, err = strconv.Unquote(result)
if err != nil {
return "", err
}
// Formally process the return
logger.Debugf("Decoding Raw Result =>\t\t%s\n", result)
result, err = util.ReadAndDecodeContractReturn(query.Destination, query.Data, result, do)
if err != nil {
return "", err
}
// Finalize
logger.Printf("Return Value =>\t\t\t%s\n", result)
return result, nil
}
开发者ID:benjaminbollen,项目名称:eris-pm,代码行数:53,代码来源:jobs_test_jobs.go
示例5: QueryNameJob
func QueryNameJob(query *definitions.QueryName, do *definitions.Do) (string, error) {
// Preprocess variables
query.Name, _ = util.PreProcess(query.Name, do)
query.Field, _ = util.PreProcess(query.Field, do)
// Peform query
logger.Infof("Querying Name =>\t\t%s:%s\n", query.Name, query.Field)
result, err := util.NamesInfo(query.Name, query.Field, do)
if err != nil {
return "", err
}
logger.Printf("Return Value =>\t\t\t%s\n", result)
return result, nil
}
开发者ID:benjaminbollen,项目名称:eris-pm,代码行数:15,代码来源:jobs_test_jobs.go
示例6: SetAccountJob
func SetAccountJob(account *definitions.Account, do *definitions.Do) (string, error) {
var result string
var err error
// Preprocess
account.Address, _ = util.PreProcess(account.Address, do)
// Set the Account in the Package & Announce
do.Package.Account = account.Address
log.WithField("=>", do.Package.Account).Info("Setting Account")
// Set the public key from eris-keys
keys.DaemonAddr = do.Signer
log.WithField("from", keys.DaemonAddr).Info("Getting Public Key")
do.PublicKey, err = keys.Call("pub", map[string]string{"addr": do.Package.Account, "name": ""})
if _, ok := err.(keys.ErrConnectionRefused); ok {
keys.ExitConnectErr(err)
}
if err != nil {
return util.KeysErrorHandler(do, err)
}
// Set result and return
result = account.Address
return result, nil
}
开发者ID:eris-ltd,项目名称:eris-pm,代码行数:27,代码来源:jobs_util.go
示例7: SetValJob
func SetValJob(set *definitions.Set, do *definitions.Do) (string, error) {
var result string
set.Value, _ = util.PreProcess(set.Value, do)
logger.Infof("Setting Variable =>\t\t%s\n", set.Value)
result = set.Value
return result, nil
}
开发者ID:benjaminbollen,项目名称:eris-pm,代码行数:7,代码来源:jobs_util.go
示例8: QueryAccountJob
func QueryAccountJob(query *definitions.QueryAccount, do *definitions.Do) (string, error) {
// Preprocess variables
query.Account, _ = util.PreProcess(query.Account, do)
query.Field, _ = util.PreProcess(query.Field, do)
// Perform Query
logger.Infof("Querying Account =>\t\t%s:%s\n", query.Account, query.Field)
result, err := util.AccountsInfo(query.Account, query.Field, do)
if err != nil {
return "", err
}
// Result
logger.Printf("Return Value =>\t\t\t%s\n", result)
return result, nil
}
开发者ID:benjaminbollen,项目名称:eris-pm,代码行数:16,代码来源:jobs_test_jobs.go
示例9: SetValJob
func SetValJob(set *definitions.Set, do *definitions.Do) (string, error) {
var result string
set.Value, _ = util.PreProcess(set.Value, do)
log.WithField("=>", set.Value).Info("Setting Variable")
result = set.Value
return result, nil
}
开发者ID:eris-ltd,项目名称:eris-pm,代码行数:7,代码来源:jobs_util.go
示例10: registerNameTx
// Runs an individual nametx.
func registerNameTx(name *definitions.RegisterName, do *definitions.Do) (string, error) {
// Process Variables
name.Source, _ = util.PreProcess(name.Source, do)
name.Name, _ = util.PreProcess(name.Name, do)
name.Data, _ = util.PreProcess(name.Data, do)
name.Amount, _ = util.PreProcess(name.Amount, do)
name.Fee, _ = util.PreProcess(name.Fee, do)
// Set Defaults
name.Source = useDefault(name.Source, do.Package.Account)
name.Fee = useDefault(name.Fee, do.DefaultFee)
name.Amount = useDefault(name.Amount, do.DefaultAmount)
// Don't use pubKey if account override
var oldKey string
if name.Source != do.Package.Account {
oldKey = do.PublicKey
do.PublicKey = ""
}
// Formulate tx
log.WithFields(log.Fields{
"name": name.Name,
"data": name.Data,
"amount": name.Amount,
}).Info("NameReg Transaction")
erisNodeClient := client.NewErisNodeClient(do.Chain)
erisKeyClient := keys.NewErisKeyClient(do.Signer)
tx, err := core.Name(erisNodeClient, erisKeyClient, do.PublicKey, name.Source, name.Amount, name.Nonce, name.Fee, name.Name, name.Data)
if err != nil {
return util.MintChainErrorHandler(do, err)
}
// Don't use pubKey if account override
if name.Source != do.Package.Account {
do.PublicKey = oldKey
}
// Sign, broadcast, display
return txFinalize(do, tx, name.Wait)
}
开发者ID:eris-ltd,项目名称:eris-pm,代码行数:43,代码来源:jobs_transact.go
示例11: BondJob
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)
}
开发者ID:benjaminbollen,项目名称:eris-pm,代码行数:21,代码来源:jobs_transact.go
示例12: QueryAccountJob
func QueryAccountJob(query *definitions.QueryAccount, do *definitions.Do) (string, error) {
// Preprocess variables
query.Account, _ = util.PreProcess(query.Account, do)
query.Field, _ = util.PreProcess(query.Field, do)
// Perform Query
arg := fmt.Sprintf("%s:%s", query.Account, query.Field)
log.WithField("=>", arg).Info("Querying Account")
result, err := util.AccountsInfo(query.Account, query.Field, do)
if err != nil {
return "", err
}
// Result
if result != "" {
log.WithField("=>", result).Warn("Return Value")
} else {
log.Debug("No return.")
}
return result, nil
}
开发者ID:eris-ltd,项目名称:eris-pm,代码行数:22,代码来源:jobs_test_jobs.go
示例13: QueryNameJob
func QueryNameJob(query *definitions.QueryName, do *definitions.Do) (string, error) {
// Preprocess variables
query.Name, _ = util.PreProcess(query.Name, do)
query.Field, _ = util.PreProcess(query.Field, do)
// Peform query
log.WithFields(log.Fields{
"name": query.Name,
"field": query.Field,
}).Info("Querying")
result, err := util.NamesInfo(query.Name, query.Field, do)
if err != nil {
return "", err
}
if result != "" {
log.WithField("=>", result).Warn("Return Value")
} else {
log.Debug("No return.")
}
return result, nil
}
开发者ID:eris-ltd,项目名称:eris-pm,代码行数:22,代码来源:jobs_test_jobs.go
示例14: SendJob
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)
}
开发者ID:eris-ltd,项目名称:eris-pm,代码行数:39,代码来源:jobs_transact.go
示例15: RebondJob
func RebondJob(rebond *definitions.Rebond, do *definitions.Do) (string, error) {
// Process Variables
var err error
rebond.Account, err = util.PreProcess(rebond.Account, do)
rebond.Height, err = util.PreProcess(rebond.Height, do)
if err != nil {
return "", err
}
// Use defaults
rebond.Account = useDefault(rebond.Account, do.Package.Account)
// Don't use pubKey if account override
var oldKey string
if rebond.Account != do.Package.Account {
oldKey = do.PublicKey
do.PublicKey = ""
}
// Formulate tx
log.WithFields(log.Fields{
"account": rebond.Account,
"height": rebond.Height,
}).Info("Rebond Transaction")
tx, err := core.Rebond(rebond.Account, rebond.Height)
if err != nil {
return util.MintChainErrorHandler(do, err)
}
// Don't use pubKey if account override
if rebond.Account != do.Package.Account {
do.PublicKey = oldKey
}
// Sign, broadcast, display
return txFinalize(do, tx, rebond.Wait)
}
开发者ID:eris-ltd,项目名称:eris-pm,代码行数:38,代码来源:jobs_transact.go
示例16: registerNameTx
// Runs an individual nametx.
func registerNameTx(name *definitions.RegisterName, do *definitions.Do) (string, error) {
// Process Variables
name.Source, _ = util.PreProcess(name.Source, do)
name.Name, _ = util.PreProcess(name.Name, do)
name.Data, _ = util.PreProcess(name.Data, do)
name.Amount, _ = util.PreProcess(name.Amount, do)
name.Fee, _ = util.PreProcess(name.Fee, do)
// Set Defaults
name.Source = useDefault(name.Source, do.Package.Account)
name.Fee = useDefault(name.Fee, do.DefaultFee)
name.Amount = useDefault(name.Amount, do.DefaultAmount)
// Don't use pubKey if account override
var oldKey string
if name.Source != do.Package.Account {
oldKey = do.PublicKey
do.PublicKey = ""
}
// Formulate tx
logger.Infof("NameReg Transaction =>\t\t%s:%s:%s\n", name.Name, name.Data, name.Amount)
tx, err := core.Name(do.Chain, do.Signer, do.PublicKey, name.Source, name.Amount, name.Nonce, name.Fee, name.Name, name.Data)
if err != nil {
logger.Errorf("ERROR =>\n")
return "", err
}
// Don't use pubKey if account override
if name.Source != do.Package.Account {
do.PublicKey = oldKey
}
// Sign, broadcast, display
return txFinalize(do, tx, name.Wait)
}
开发者ID:benjaminbollen,项目名称:eris-pm,代码行数:37,代码来源:jobs_transact.go
示例17: PermissionJob
func PermissionJob(perm *definitions.Permission, do *definitions.Do) (string, error) {
// Process Variables
perm.Source, _ = util.PreProcess(perm.Source, do)
perm.Action, _ = util.PreProcess(perm.Action, do)
perm.PermissionFlag, _ = util.PreProcess(perm.PermissionFlag, do)
perm.Value, _ = util.PreProcess(perm.Value, do)
perm.Target, _ = util.PreProcess(perm.Target, do)
perm.Role, _ = util.PreProcess(perm.Role, do)
// Set defaults
perm.Source = useDefault(perm.Source, do.Package.Account)
log.Debug("Target: ", perm.Target)
log.Debug("Marmots Deny: ", perm.Role)
log.Debug("Action: ", perm.Action)
// Populate the transaction appropriately
var args []string
switch perm.Action {
case "set_global":
args = []string{perm.PermissionFlag, perm.Value}
case "set_base":
args = []string{perm.Target, perm.PermissionFlag, perm.Value}
case "unset_base":
args = []string{perm.Target, perm.PermissionFlag}
case "add_role", "rm_role":
args = []string{perm.Target, perm.Role}
}
// Don't use pubKey if account override
var oldKey string
if perm.Source != do.Package.Account {
oldKey = do.PublicKey
do.PublicKey = ""
}
// Formulate tx
arg := fmt.Sprintf("%s:%s", args[0], args[1])
log.WithField(perm.Action, arg).Info("Setting Permissions")
erisNodeClient := client.NewErisNodeClient(do.Chain)
erisKeyClient := keys.NewErisKeyClient(do.Signer)
tx, err := core.Permissions(erisNodeClient, erisKeyClient, do.PublicKey, perm.Source, perm.Nonce, perm.Action, args)
if err != nil {
return util.MintChainErrorHandler(do, err)
}
log.Debug("What are the args returned in transaction: ", tx.PermArgs)
// Don't use pubKey if account override
if perm.Source != do.Package.Account {
do.PublicKey = oldKey
}
// Sign, broadcast, display
return txFinalize(do, tx, perm.Wait)
}
开发者ID:eris-ltd,项目名称:eris-pm,代码行数:56,代码来源:jobs_transact.go
示例18: QueryValsJob
func QueryValsJob(query *definitions.QueryVals, do *definitions.Do) (string, error) {
var result string
// Preprocess variables
query.Field, _ = util.PreProcess(query.Field, do)
// Peform query
logger.Infof("Querying Vals =>\t\t%s\n", query.Field)
result, err := util.ValidatorsInfo(query.Field, do)
if err != nil {
return "", err
}
logger.Printf("Return Value =>\t\t\t%s\n", result)
return result, nil
}
开发者ID:benjaminbollen,项目名称:eris-pm,代码行数:16,代码来源:jobs_test_jobs.go
示例19: QueryValsJob
func QueryValsJob(query *definitions.QueryVals, do *definitions.Do) (string, error) {
var result string
// Preprocess variables
query.Field, _ = util.PreProcess(query.Field, do)
// Peform query
log.WithField("=>", query.Field).Info("Querying Vals")
result, err := util.ValidatorsInfo(query.Field, do)
if err != nil {
return "", err
}
if result != "" {
log.WithField("=>", result).Warn("Return Value")
} else {
log.Debug("No return.")
}
return result, nil
}
开发者ID:eris-ltd,项目名称:eris-pm,代码行数:20,代码来源:jobs_test_jobs.go
示例20: PermissionJob
func PermissionJob(perm *definitions.Permission, do *definitions.Do) (string, error) {
// Process Variables
perm.Source, _ = util.PreProcess(perm.Source, do)
perm.Action, _ = util.PreProcess(perm.Action, do)
perm.PermissionFlag, _ = util.PreProcess(perm.PermissionFlag, do)
perm.Value, _ = util.PreProcess(perm.Value, do)
perm.Target, _ = util.PreProcess(perm.Target, do)
perm.Role, _ = util.PreProcess(perm.Role, do)
// Set defaults
perm.Source = useDefault(perm.Source, do.Package.Account)
// Populate the transaction appropriately
var args []string
switch perm.Action {
case "set_global":
args = []string{perm.PermissionFlag, perm.Value}
case "set_base":
args = []string{perm.Target, perm.PermissionFlag, perm.Value}
case "unset_base":
args = []string{perm.Target, perm.PermissionFlag}
case "add_role", "rm_role":
args = []string{perm.Target, perm.Role}
}
// Don't use pubKey if account override
var oldKey string
if perm.Source != do.Package.Account {
oldKey = do.PublicKey
do.PublicKey = ""
}
// Formulate tx
logger.Infof("Setting Permissions =>\t\t%s:%v\n", perm.Action, args)
tx, err := core.Permissions(do.Chain, do.Signer, do.PublicKey, perm.Source, perm.Nonce, perm.Action, args)
if err != nil {
logger.Errorf("ERROR =>\n")
return "", err
}
// Don't use pubKey if account override
if perm.Source != do.Package.Account {
do.PublicKey = oldKey
}
// Sign, broadcast, display
return txFinalize(do, tx, perm.Wait)
}
开发者ID:benjaminbollen,项目名称:eris-pm,代码行数:48,代码来源:jobs_transact.go
注:本文中的github.com/eris-ltd/eris-pm/util.PreProcess函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论