Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
plugin
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
link33
plugin
Commits
1ad3a042
Unverified
Commit
1ad3a042
authored
Sep 10, 2019
by
vipwzw
Committed by
GitHub
Sep 10, 2019
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #624 from linj-disanbo/retrieve-support-more-assets
Retrieve support more assets
parents
dfac9364
ba56fc97
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
241 additions
and
63 deletions
+241
-63
chain33.para.toml
chain33.para.toml
+1
-0
retrieve.go
plugin/dapp/retrieve/cmd/retrieve.go
+26
-1
exec_del_local.go
plugin/dapp/retrieve/executor/exec_del_local.go
+15
-4
exec_local.go
plugin/dapp/retrieve/executor/exec_local.go
+21
-4
query.go
plugin/dapp/retrieve/executor/query.go
+29
-0
retrieve.go
plugin/dapp/retrieve/executor/retrieve.go
+14
-1
retrievedb.go
plugin/dapp/retrieve/executor/retrievedb.go
+42
-1
retrieve.proto
plugin/dapp/retrieve/proto/retrieve.proto
+3
-0
tx.go
plugin/dapp/retrieve/rpc/tx.go
+10
-3
const.go
plugin/dapp/retrieve/types/const.go
+3
-0
retrieve.pb.go
plugin/dapp/retrieve/types/retrieve.pb.go
+75
-48
types.go
plugin/dapp/retrieve/types/types.go
+2
-1
No files found.
chain33.para.toml
View file @
1ad3a042
...
...
@@ -224,6 +224,7 @@ ForkTicketVrf =0
[fork.sub.retrieve]
Enable
=
0
ForkRetrive
=
0
ForkRetriveAsset
=
0
[fork.sub.hashlock]
Enable
=
0
...
...
plugin/dapp/retrieve/cmd/retrieve.go
View file @
1ad3a042
...
...
@@ -107,6 +107,19 @@ func addRetrieveCmdFlags(cmd *cobra.Command) {
cmd
.
Flags
()
.
Float64P
(
"fee"
,
"f"
,
defaultFee
,
"sign address"
)
}
func
addPerformCmdFlags
(
cmd
*
cobra
.
Command
)
{
cmd
.
Flags
()
.
StringP
(
"backup"
,
"b"
,
""
,
"backup address"
)
cmd
.
MarkFlagRequired
(
"backup"
)
cmd
.
Flags
()
.
StringP
(
"default"
,
"t"
,
""
,
"default address"
)
cmd
.
MarkFlagRequired
(
"default"
)
cmd
.
Flags
()
.
StringArrayP
(
"exec"
,
"e"
,
[]
string
{},
"asset exec"
)
cmd
.
Flags
()
.
StringArrayP
(
"symbol"
,
"s"
,
[]
string
{},
"asset symbol"
)
defaultFee
:=
float64
(
types
.
GInt
(
"MinFee"
))
/
float64
(
types
.
Coin
)
cmd
.
Flags
()
.
Float64P
(
"fee"
,
"f"
,
defaultFee
,
"sign address"
)
}
func
prepareCmd
(
cmd
*
cobra
.
Command
,
args
[]
string
)
{
rpcLaddr
,
_
:=
cmd
.
Flags
()
.
GetString
(
"rpc_laddr"
)
backup
,
_
:=
cmd
.
Flags
()
.
GetString
(
"backup"
)
...
...
@@ -130,7 +143,7 @@ func PerformCmd() *cobra.Command {
Short
:
"Perform the retrieve"
,
Run
:
performCmd
,
}
add
Retrieve
CmdFlags
(
cmd
)
add
Perform
CmdFlags
(
cmd
)
return
cmd
}
...
...
@@ -140,12 +153,24 @@ func performCmd(cmd *cobra.Command, args []string) {
defaultAddr
,
_
:=
cmd
.
Flags
()
.
GetString
(
"default"
)
fee
,
_
:=
cmd
.
Flags
()
.
GetFloat64
(
"fee"
)
execs
,
_
:=
cmd
.
Flags
()
.
GetStringArray
(
"exec"
)
symbols
,
_
:=
cmd
.
Flags
()
.
GetStringArray
(
"symbol"
)
feeInt64
:=
int64
(
fee
*
types
.
InputPrecision
)
*
types
.
Multiple1E4
params
:=
rpc
.
RetrievePerformTx
{
BackupAddr
:
backup
,
DefaultAddr
:
defaultAddr
,
Assets
:
[]
rpc
.
Asset
{},
Fee
:
feeInt64
,
}
if
len
(
execs
)
!=
len
(
symbols
)
{
fmt
.
Printf
(
"exec count must equal to symbol count
\n
"
)
return
}
for
i
:=
0
;
i
<
len
(
execs
);
i
++
{
params
.
Assets
=
append
(
params
.
Assets
,
rpc
.
Asset
{
Exec
:
execs
[
i
],
Symbol
:
symbols
[
0
]})
}
ctx
:=
jsonrpc
.
NewRPCCtx
(
rpcLaddr
,
"retrieve.CreateRawRetrievePerformTx"
,
params
,
nil
)
ctx
.
RunWithoutMarshal
()
}
...
...
plugin/dapp/retrieve/executor/exec_del_local.go
View file @
1ad3a042
...
...
@@ -53,7 +53,7 @@ func (c *Retrieve) ExecDelLocal_Backup(backup *rt.BackupRetrieve, tx *types.Tran
set
:=
&
types
.
LocalDBSet
{}
rlog
.
Debug
(
"Retrieve ExecDelLocal_Backup"
)
info
:=
rt
.
RetrieveQuery
{
BackupAddress
:
backup
.
BackupAddress
,
DefaultAddress
:
backup
.
DefaultAddress
,
DelayPeriod
:
backup
.
DelayPeriod
,
PrepareTime
:
zeroPrepareTime
,
RemainTime
:
zeroRemainTime
,
Status
:
retrieveBackup
}
info
:=
createRetrieve
(
backup
.
BackupAddress
,
backup
.
DefaultAddress
,
retrieveBackup
)
kv
,
err
:=
DelRetrieveInfo
(
&
info
,
retrieveBackup
,
c
.
GetLocalDB
())
if
err
!=
nil
{
return
set
,
nil
...
...
@@ -71,7 +71,7 @@ func (c *Retrieve) ExecDelLocal_Prepare(pre *rt.PrepareRetrieve, tx *types.Trans
set
:=
&
types
.
LocalDBSet
{}
rlog
.
Debug
(
"Retrieve ExecDelLocal_Prepare"
)
info
:=
rt
.
RetrieveQuery
{
BackupAddress
:
pre
.
BackupAddress
,
DefaultAddress
:
pre
.
DefaultAddress
,
DelayPeriod
:
zeroDelay
,
PrepareTime
:
c
.
GetBlockTime
(),
RemainTime
:
zeroRemainTime
,
Status
:
retrievePrepare
}
info
:=
createRetrieve
(
pre
.
BackupAddress
,
pre
.
DefaultAddress
,
retrievePrepare
)
kv
,
err
:=
DelRetrieveInfo
(
&
info
,
retrievePrepare
,
c
.
GetLocalDB
())
if
err
!=
nil
{
return
set
,
nil
...
...
@@ -89,12 +89,23 @@ func (c *Retrieve) ExecDelLocal_Perform(perf *rt.PerformRetrieve, tx *types.Tran
set
:=
&
types
.
LocalDBSet
{}
rlog
.
Debug
(
"Retrieve ExecDelLocal_Perform"
)
info
:=
rt
.
RetrieveQuery
{
BackupAddress
:
perf
.
BackupAddress
,
DefaultAddress
:
perf
.
DefaultAddress
,
DelayPeriod
:
zeroDelay
,
PrepareTime
:
zeroPrepareTime
,
RemainTime
:
zeroRemainTime
,
Status
:
retrievePerform
}
info
:=
createRetrieve
(
perf
.
BackupAddress
,
perf
.
DefaultAddress
,
retrievePerform
)
kv
,
err
:=
DelRetrieveInfo
(
&
info
,
retrievePerform
,
c
.
GetLocalDB
())
if
err
!=
nil
{
return
set
,
nil
}
if
types
.
IsDappFork
(
c
.
GetHeight
(),
rt
.
RetrieveX
,
rt
.
ForkRetriveAssetX
)
{
if
len
(
perf
.
Assets
)
==
0
{
perf
.
Assets
=
append
(
perf
.
Assets
,
&
types
.
Asset
{
Exec
:
"coins"
,
Symbol
:
types
.
GetCoinSymbol
()})
}
}
for
_
,
asset
:=
range
perf
.
Assets
{
kv
:=
&
types
.
KeyValue
{
Key
:
calcRetrieveAssetKey
(
info
.
BackupAddress
,
info
.
DefaultAddress
,
asset
.
Exec
,
asset
.
Symbol
),
Value
:
nil
}
c
.
GetLocalDB
()
.
Set
(
kv
.
Key
,
kv
.
Value
)
set
.
KV
=
append
(
set
.
KV
,
kv
)
}
if
kv
!=
nil
{
set
.
KV
=
append
(
set
.
KV
,
kv
)
}
...
...
@@ -107,7 +118,7 @@ func (c *Retrieve) ExecDelLocal_Cancel(cancel *rt.CancelRetrieve, tx *types.Tran
set
:=
&
types
.
LocalDBSet
{}
rlog
.
Debug
(
"Retrieve ExecDelLocal_Cancel"
)
info
:=
rt
.
RetrieveQuery
{
BackupAddress
:
cancel
.
BackupAddress
,
DefaultAddress
:
cancel
.
DefaultAddress
,
DelayPeriod
:
zeroDelay
,
PrepareTime
:
zeroPrepareTime
,
RemainTime
:
zeroRemainTime
,
Status
:
retrieveCancel
}
info
:=
createRetrieve
(
cancel
.
BackupAddress
,
cancel
.
DefaultAddress
,
retrieveCancel
)
kv
,
err
:=
DelRetrieveInfo
(
&
info
,
retrieveCancel
,
c
.
GetLocalDB
())
if
err
!=
nil
{
return
set
,
nil
...
...
plugin/dapp/retrieve/executor/exec_local.go
View file @
1ad3a042
...
...
@@ -10,6 +10,10 @@ import (
rt
"github.com/33cn/plugin/plugin/dapp/retrieve/types"
)
func
createRetrieve
(
backupAddress
,
defaultAddress
string
,
status
int32
)
rt
.
RetrieveQuery
{
return
rt
.
RetrieveQuery
{
BackupAddress
:
backupAddress
,
DefaultAddress
:
defaultAddress
,
DelayPeriod
:
zeroDelay
,
PrepareTime
:
zeroPrepareTime
,
RemainTime
:
zeroRemainTime
,
Status
:
status
}
}
// SaveRetrieveInfo local
func
SaveRetrieveInfo
(
info
*
rt
.
RetrieveQuery
,
Status
int64
,
db
dbm
.
KVDB
)
(
*
types
.
KeyValue
,
error
)
{
rlog
.
Debug
(
"Retrieve SaveRetrieveInfo"
,
"backupaddr"
,
info
.
BackupAddress
,
"defaddr"
,
info
.
DefaultAddress
)
...
...
@@ -55,7 +59,8 @@ func SaveRetrieveInfo(info *rt.RetrieveQuery, Status int64, db dbm.KVDB) (*types
func
(
c
*
Retrieve
)
ExecLocal_Backup
(
backup
*
rt
.
BackupRetrieve
,
tx
*
types
.
Transaction
,
receiptData
*
types
.
ReceiptData
,
index
int
)
(
*
types
.
LocalDBSet
,
error
)
{
set
:=
&
types
.
LocalDBSet
{}
rlog
.
Debug
(
"Retrieve ExecLocal_Backup"
)
info
:=
rt
.
RetrieveQuery
{
BackupAddress
:
backup
.
BackupAddress
,
DefaultAddress
:
backup
.
DefaultAddress
,
DelayPeriod
:
backup
.
DelayPeriod
,
PrepareTime
:
zeroPrepareTime
,
RemainTime
:
zeroRemainTime
,
Status
:
retrieveBackup
}
info
:=
createRetrieve
(
backup
.
BackupAddress
,
backup
.
DefaultAddress
,
retrieveBackup
)
info
.
DelayPeriod
=
backup
.
DelayPeriod
kv
,
err
:=
SaveRetrieveInfo
(
&
info
,
retrieveBackup
,
c
.
GetLocalDB
())
if
err
!=
nil
{
return
set
,
nil
...
...
@@ -73,7 +78,8 @@ func (c *Retrieve) ExecLocal_Prepare(pre *rt.PrepareRetrieve, tx *types.Transact
set
:=
&
types
.
LocalDBSet
{}
rlog
.
Debug
(
"Retrieve ExecLocal_Prepare"
)
info
:=
rt
.
RetrieveQuery
{
BackupAddress
:
pre
.
BackupAddress
,
DefaultAddress
:
pre
.
DefaultAddress
,
DelayPeriod
:
zeroDelay
,
PrepareTime
:
zeroPrepareTime
,
RemainTime
:
zeroRemainTime
,
Status
:
retrievePrepare
}
info
:=
createRetrieve
(
pre
.
BackupAddress
,
pre
.
DefaultAddress
,
retrievePrepare
)
info
.
PrepareTime
=
c
.
GetBlockTime
()
kv
,
err
:=
SaveRetrieveInfo
(
&
info
,
retrievePrepare
,
c
.
GetLocalDB
())
if
err
!=
nil
{
return
set
,
nil
...
...
@@ -91,11 +97,22 @@ func (c *Retrieve) ExecLocal_Perform(perf *rt.PerformRetrieve, tx *types.Transac
set
:=
&
types
.
LocalDBSet
{}
rlog
.
Debug
(
"Retrieve ExecLocal_Perf"
)
info
:=
rt
.
RetrieveQuery
{
BackupAddress
:
perf
.
BackupAddress
,
DefaultAddress
:
perf
.
DefaultAddress
,
DelayPeriod
:
zeroDelay
,
PrepareTime
:
zeroPrepareTime
,
RemainTime
:
zeroRemainTime
,
Status
:
retrievePerform
}
info
:=
createRetrieve
(
perf
.
BackupAddress
,
perf
.
DefaultAddress
,
retrievePerform
)
kv
,
err
:=
SaveRetrieveInfo
(
&
info
,
retrievePerform
,
c
.
GetLocalDB
())
if
err
!=
nil
{
return
set
,
nil
}
if
types
.
IsDappFork
(
c
.
GetHeight
(),
rt
.
RetrieveX
,
rt
.
ForkRetriveAssetX
)
{
if
len
(
perf
.
Assets
)
==
0
{
perf
.
Assets
=
append
(
perf
.
Assets
,
&
types
.
Asset
{
Exec
:
"coins"
,
Symbol
:
types
.
GetCoinSymbol
()})
}
}
for
_
,
asset
:=
range
perf
.
Assets
{
value
:=
types
.
Encode
(
&
info
)
kv
:=
&
types
.
KeyValue
{
Key
:
calcRetrieveAssetKey
(
info
.
BackupAddress
,
info
.
DefaultAddress
,
asset
.
Exec
,
asset
.
Symbol
),
Value
:
value
}
c
.
GetLocalDB
()
.
Set
(
kv
.
Key
,
kv
.
Value
)
set
.
KV
=
append
(
set
.
KV
,
kv
)
}
if
kv
!=
nil
{
set
.
KV
=
append
(
set
.
KV
,
kv
)
...
...
@@ -109,7 +126,7 @@ func (c *Retrieve) ExecLocal_Cancel(cancel *rt.CancelRetrieve, tx *types.Transac
set
:=
&
types
.
LocalDBSet
{}
rlog
.
Debug
(
"Retrieve ExecLocal_Cancel"
)
info
:=
rt
.
RetrieveQuery
{
BackupAddress
:
cancel
.
BackupAddress
,
DefaultAddress
:
cancel
.
DefaultAddress
,
DelayPeriod
:
zeroDelay
,
PrepareTime
:
zeroPrepareTime
,
RemainTime
:
zeroRemainTime
,
Status
:
retrieveCancel
}
info
:=
createRetrieve
(
cancel
.
BackupAddress
,
cancel
.
DefaultAddress
,
retrieveCancel
)
kv
,
err
:=
SaveRetrieveInfo
(
&
info
,
retrieveCancel
,
c
.
GetLocalDB
())
if
err
!=
nil
{
return
set
,
nil
...
...
plugin/dapp/retrieve/executor/query.go
View file @
1ad3a042
...
...
@@ -5,6 +5,8 @@
package
executor
import
(
"fmt"
"github.com/33cn/chain33/types"
rt
"github.com/33cn/plugin/plugin/dapp/retrieve/types"
)
...
...
@@ -22,5 +24,32 @@ func (r *Retrieve) Query_GetRetrieveInfo(in *rt.ReqRetrieveInfo) (types.Message,
info
.
RemainTime
=
0
}
}
// 在指定asset 的情况下, 显示具体asset 的找回状态
if
info
.
Status
==
retrievePerform
&&
in
.
GetAssetExec
()
!=
""
{
// retrievePerform状态下,不存在有两种情况
// 1 还没找回, 2 fork 之前是没有coins 找回记录的
count
:=
r
.
GetLocalDB
()
.
PrefixCount
(
calcRetrieveAssetPrefix
(
in
.
BackupAddress
,
in
.
DefaultAddress
))
// 2 fork 之前是 没有coins 找回记录的, 相当于都找回了
if
count
==
0
{
return
info
,
nil
}
asset
,
_
:=
getRetrieveAsset
(
r
.
GetLocalDB
(),
in
.
BackupAddress
,
in
.
DefaultAddress
,
in
.
AssetExec
,
in
.
AssetSymbol
)
if
asset
!=
nil
{
return
asset
,
nil
}
// 1 还没找回
info
.
Status
=
retrievePrepare
info
.
RemainTime
=
zeroRemainTime
return
info
,
nil
}
return
info
,
nil
}
func
calcRetrieveAssetPrefix
(
backupAddr
,
defaultAddr
string
)
[]
byte
{
key
:=
fmt
.
Sprintf
(
"LODB-retrieve-backup-asset:%s:%s:"
,
backupAddr
,
defaultAddr
)
return
[]
byte
(
key
)
}
plugin/dapp/retrieve/executor/retrieve.go
View file @
1ad3a042
...
...
@@ -69,9 +69,22 @@ func calcRetrieveKey(backupAddr string, defaultAddr string) []byte {
return
[]
byte
(
key
)
}
func
calcRetrieveAssetKey
(
backupAddr
,
defaultAddr
,
assetExec
,
assetSymbol
string
)
[]
byte
{
key
:=
fmt
.
Sprintf
(
"LODB-retrieve-backup-asset:%s:%s:%s:%s"
,
backupAddr
,
defaultAddr
,
assetExec
,
assetSymbol
)
return
[]
byte
(
key
)
}
func
getRetrieveAsset
(
db
dbm
.
KVDB
,
backupAddr
,
defaultAddr
,
assetExec
,
assetSymbol
string
)
(
*
rt
.
RetrieveQuery
,
error
)
{
return
getRetrieve
(
db
,
calcRetrieveAssetKey
(
backupAddr
,
defaultAddr
,
assetExec
,
assetSymbol
))
}
func
getRetrieveInfo
(
db
dbm
.
KVDB
,
backupAddr
string
,
defaultAddr
string
)
(
*
rt
.
RetrieveQuery
,
error
)
{
return
getRetrieve
(
db
,
calcRetrieveKey
(
backupAddr
,
defaultAddr
))
}
func
getRetrieve
(
db
dbm
.
KVDB
,
key
[]
byte
)
(
*
rt
.
RetrieveQuery
,
error
)
{
info
:=
rt
.
RetrieveQuery
{}
retInfo
,
err
:=
db
.
Get
(
calcRetrieveKey
(
backupAddr
,
defaultAddr
)
)
retInfo
,
err
:=
db
.
Get
(
key
)
if
err
!=
nil
{
return
nil
,
err
}
...
...
plugin/dapp/retrieve/executor/retrievedb.go
View file @
1ad3a042
...
...
@@ -116,7 +116,7 @@ func (action *Action) RetrieveBackup(backupRet *rt.BackupRetrieve) (*types.Recei
var
receipt
*
types
.
Receipt
var
r
*
DB
var
newRetrieve
=
false
if
types
.
IsDappFork
(
action
.
height
,
rt
.
RetrieveX
,
"ForkRetrive"
)
{
if
types
.
IsDappFork
(
action
.
height
,
rt
.
RetrieveX
,
rt
.
ForkRetriveX
)
{
if
err
:=
address
.
CheckAddress
(
backupRet
.
BackupAddress
);
err
!=
nil
{
rlog
.
Debug
(
"retrieve checkaddress"
)
return
nil
,
err
...
...
@@ -203,6 +203,43 @@ func (action *Action) RetrievePrepare(preRet *rt.PrepareRetrieve) (*types.Receip
return
receipt
,
nil
}
// RetrievePerformAssets Action
func
(
action
*
Action
)
RetrievePerformAssets
(
perfRet
*
rt
.
PerformRetrieve
,
defaultAddress
string
)
(
*
types
.
Receipt
,
error
)
{
var
logs
[]
*
types
.
ReceiptLog
var
kv
[]
*
types
.
KeyValue
var
receipt
*
types
.
Receipt
// 兼容原来的找回, 在不指定的情况下,找回主币
if
len
(
perfRet
.
Assets
)
==
0
{
perfRet
.
Assets
=
append
(
perfRet
.
Assets
,
&
types
.
Asset
{
Exec
:
"coins"
,
Symbol
:
types
.
GetCoinSymbol
()})
//return nil, nil
}
for
_
,
asset
:=
range
perfRet
.
Assets
{
accdb
,
err
:=
account
.
NewAccountDB
(
asset
.
Exec
,
asset
.
Symbol
,
action
.
db
)
if
err
!=
nil
{
rlog
.
Error
(
"RetrievePerform"
,
"NewAccountDB"
,
err
)
return
nil
,
err
}
acc
:=
accdb
.
LoadExecAccount
(
defaultAddress
,
action
.
execaddr
)
rlog
.
Debug
(
"RetrievePerform"
,
"acc.Balance"
,
acc
.
Balance
)
if
acc
.
Balance
>
0
{
receipt
,
err
=
action
.
coinsAccount
.
ExecTransfer
(
defaultAddress
,
perfRet
.
BackupAddress
,
action
.
execaddr
,
acc
.
Balance
)
if
err
!=
nil
{
rlog
.
Debug
(
"RetrievePerform"
,
"ExecTransfer"
,
err
)
return
nil
,
err
}
logs
=
append
(
logs
,
receipt
.
Logs
...
)
kv
=
append
(
kv
,
receipt
.
KV
...
)
}
else
{
return
nil
,
rt
.
ErrRetrieveNoBalance
}
}
receipt
=
&
types
.
Receipt
{
Ty
:
types
.
ExecOk
,
KV
:
kv
,
Logs
:
logs
}
return
receipt
,
nil
}
// RetrievePerform Action
func
(
action
*
Action
)
RetrievePerform
(
perfRet
*
rt
.
PerformRetrieve
)
(
*
types
.
Receipt
,
error
)
{
var
logs
[]
*
types
.
ReceiptLog
...
...
@@ -239,6 +276,10 @@ func (action *Action) RetrievePerform(perfRet *rt.PerformRetrieve) (*types.Recei
return
nil
,
rt
.
ErrRetrievePeriodLimit
}
if
types
.
IsDappFork
(
action
.
height
,
rt
.
RetrieveX
,
rt
.
ForkRetriveAssetX
)
{
return
action
.
RetrievePerformAssets
(
perfRet
,
r
.
RetPara
[
index
]
.
DefaultAddress
)
}
acc
=
action
.
coinsAccount
.
LoadExecAccount
(
r
.
RetPara
[
index
]
.
DefaultAddress
,
action
.
execaddr
)
rlog
.
Debug
(
"RetrievePerform"
,
"acc.Balance"
,
acc
.
Balance
)
if
acc
.
Balance
>
0
{
...
...
plugin/dapp/retrieve/proto/retrieve.proto
View file @
1ad3a042
...
...
@@ -43,6 +43,7 @@ message PrepareRetrieve {
message
PerformRetrieve
{
string
backupAddress
=
1
;
string
defaultAddress
=
2
;
repeated
Asset
assets
=
3
;
}
message
CancelRetrieve
{
...
...
@@ -53,6 +54,8 @@ message CancelRetrieve {
message
ReqRetrieveInfo
{
string
backupAddress
=
1
;
string
defaultAddress
=
2
;
string
assetExec
=
3
;
string
assetSymbol
=
4
;
}
message
RetrieveQuery
{
...
...
plugin/dapp/retrieve/rpc/tx.go
View file @
1ad3a042
...
...
@@ -19,11 +19,18 @@ type RetrievePrepareTx struct {
Fee
int64
`json:"fee"`
}
// Asset Asset
type
Asset
struct
{
Exec
string
`json:"exec"`
Symbol
string
`json:"symbol"`
}
// RetrievePerformTx construction
type
RetrievePerformTx
struct
{
BackupAddr
string
`json:"backupAddr"`
DefaultAddr
string
`json:"defaultAddr"`
Fee
int64
`json:"fee"`
BackupAddr
string
`json:"backupAddr"`
DefaultAddr
string
`json:"defaultAddr"`
Assets
[]
Asset
`json:"assets"`
Fee
int64
`json:"fee"`
}
// RetrieveCancelTx construction
...
...
plugin/dapp/retrieve/types/const.go
View file @
1ad3a042
...
...
@@ -35,6 +35,9 @@ var (
"Backup"
:
RetrieveActionBackup
,
"Cancel"
:
RetrieveActionCancel
,
}
ForkRetriveAssetX
=
"ForkRetriveAsset"
ForkRetriveX
=
"ForkRetrive"
)
func
init
()
{
...
...
plugin/dapp/retrieve/types/retrieve.pb.go
View file @
1ad3a042
...
...
@@ -44,7 +44,7 @@ func (m *RetrievePara) Reset() { *m = RetrievePara{} }
func
(
m
*
RetrievePara
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
RetrievePara
)
ProtoMessage
()
{}
func
(
*
RetrievePara
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_retrieve_
2bd2296d20e0c70f
,
[]
int
{
0
}
return
fileDescriptor_retrieve_
7b99e170a1cce215
,
[]
int
{
0
}
}
func
(
m
*
RetrievePara
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_RetrievePara
.
Unmarshal
(
m
,
b
)
...
...
@@ -112,7 +112,7 @@ func (m *Retrieve) Reset() { *m = Retrieve{} }
func
(
m
*
Retrieve
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
Retrieve
)
ProtoMessage
()
{}
func
(
*
Retrieve
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_retrieve_
2bd2296d20e0c70f
,
[]
int
{
1
}
return
fileDescriptor_retrieve_
7b99e170a1cce215
,
[]
int
{
1
}
}
func
(
m
*
Retrieve
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_Retrieve
.
Unmarshal
(
m
,
b
)
...
...
@@ -163,7 +163,7 @@ func (m *RetrieveAction) Reset() { *m = RetrieveAction{} }
func
(
m
*
RetrieveAction
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
RetrieveAction
)
ProtoMessage
()
{}
func
(
*
RetrieveAction
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_retrieve_
2bd2296d20e0c70f
,
[]
int
{
2
}
return
fileDescriptor_retrieve_
7b99e170a1cce215
,
[]
int
{
2
}
}
func
(
m
*
RetrieveAction
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_RetrieveAction
.
Unmarshal
(
m
,
b
)
...
...
@@ -378,7 +378,7 @@ func (m *BackupRetrieve) Reset() { *m = BackupRetrieve{} }
func
(
m
*
BackupRetrieve
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
BackupRetrieve
)
ProtoMessage
()
{}
func
(
*
BackupRetrieve
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_retrieve_
2bd2296d20e0c70f
,
[]
int
{
3
}
return
fileDescriptor_retrieve_
7b99e170a1cce215
,
[]
int
{
3
}
}
func
(
m
*
BackupRetrieve
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_BackupRetrieve
.
Unmarshal
(
m
,
b
)
...
...
@@ -431,7 +431,7 @@ func (m *PrepareRetrieve) Reset() { *m = PrepareRetrieve{} }
func
(
m
*
PrepareRetrieve
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
PrepareRetrieve
)
ProtoMessage
()
{}
func
(
*
PrepareRetrieve
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_retrieve_
2bd2296d20e0c70f
,
[]
int
{
4
}
return
fileDescriptor_retrieve_
7b99e170a1cce215
,
[]
int
{
4
}
}
func
(
m
*
PrepareRetrieve
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_PrepareRetrieve
.
Unmarshal
(
m
,
b
)
...
...
@@ -466,18 +466,19 @@ func (m *PrepareRetrieve) GetDefaultAddress() string {
}
type
PerformRetrieve
struct
{
BackupAddress
string
`protobuf:"bytes,1,opt,name=backupAddress,proto3" json:"backupAddress,omitempty"`
DefaultAddress
string
`protobuf:"bytes,2,opt,name=defaultAddress,proto3" json:"defaultAddress,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
BackupAddress
string
`protobuf:"bytes,1,opt,name=backupAddress,proto3" json:"backupAddress,omitempty"`
DefaultAddress
string
`protobuf:"bytes,2,opt,name=defaultAddress,proto3" json:"defaultAddress,omitempty"`
Assets
[]
*
types
.
Asset
`protobuf:"bytes,3,rep,name=assets,proto3" json:"assets,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
func
(
m
*
PerformRetrieve
)
Reset
()
{
*
m
=
PerformRetrieve
{}
}
func
(
m
*
PerformRetrieve
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
PerformRetrieve
)
ProtoMessage
()
{}
func
(
*
PerformRetrieve
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_retrieve_
2bd2296d20e0c70f
,
[]
int
{
5
}
return
fileDescriptor_retrieve_
7b99e170a1cce215
,
[]
int
{
5
}
}
func
(
m
*
PerformRetrieve
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_PerformRetrieve
.
Unmarshal
(
m
,
b
)
...
...
@@ -511,6 +512,13 @@ func (m *PerformRetrieve) GetDefaultAddress() string {
return
""
}
func
(
m
*
PerformRetrieve
)
GetAssets
()
[]
*
types
.
Asset
{
if
m
!=
nil
{
return
m
.
Assets
}
return
nil
}
type
CancelRetrieve
struct
{
BackupAddress
string
`protobuf:"bytes,1,opt,name=backupAddress,proto3" json:"backupAddress,omitempty"`
DefaultAddress
string
`protobuf:"bytes,2,opt,name=defaultAddress,proto3" json:"defaultAddress,omitempty"`
...
...
@@ -523,7 +531,7 @@ func (m *CancelRetrieve) Reset() { *m = CancelRetrieve{} }
func
(
m
*
CancelRetrieve
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
CancelRetrieve
)
ProtoMessage
()
{}
func
(
*
CancelRetrieve
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_retrieve_
2bd2296d20e0c70f
,
[]
int
{
6
}
return
fileDescriptor_retrieve_
7b99e170a1cce215
,
[]
int
{
6
}
}
func
(
m
*
CancelRetrieve
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_CancelRetrieve
.
Unmarshal
(
m
,
b
)
...
...
@@ -560,6 +568,8 @@ func (m *CancelRetrieve) GetDefaultAddress() string {
type
ReqRetrieveInfo
struct
{
BackupAddress
string
`protobuf:"bytes,1,opt,name=backupAddress,proto3" json:"backupAddress,omitempty"`
DefaultAddress
string
`protobuf:"bytes,2,opt,name=defaultAddress,proto3" json:"defaultAddress,omitempty"`
AssetExec
string
`protobuf:"bytes,3,opt,name=assetExec,proto3" json:"assetExec,omitempty"`
AssetSymbol
string
`protobuf:"bytes,4,opt,name=assetSymbol,proto3" json:"assetSymbol,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
...
...
@@ -569,7 +579,7 @@ func (m *ReqRetrieveInfo) Reset() { *m = ReqRetrieveInfo{} }
func
(
m
*
ReqRetrieveInfo
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
ReqRetrieveInfo
)
ProtoMessage
()
{}
func
(
*
ReqRetrieveInfo
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_retrieve_
2bd2296d20e0c70f
,
[]
int
{
7
}
return
fileDescriptor_retrieve_
7b99e170a1cce215
,
[]
int
{
7
}
}
func
(
m
*
ReqRetrieveInfo
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_ReqRetrieveInfo
.
Unmarshal
(
m
,
b
)
...
...
@@ -603,6 +613,20 @@ func (m *ReqRetrieveInfo) GetDefaultAddress() string {
return
""
}
func
(
m
*
ReqRetrieveInfo
)
GetAssetExec
()
string
{
if
m
!=
nil
{
return
m
.
AssetExec
}
return
""
}
func
(
m
*
ReqRetrieveInfo
)
GetAssetSymbol
()
string
{
if
m
!=
nil
{
return
m
.
AssetSymbol
}
return
""
}
type
RetrieveQuery
struct
{
BackupAddress
string
`protobuf:"bytes,1,opt,name=backupAddress,proto3" json:"backupAddress,omitempty"`
DefaultAddress
string
`protobuf:"bytes,2,opt,name=defaultAddress,proto3" json:"defaultAddress,omitempty"`
...
...
@@ -619,7 +643,7 @@ func (m *RetrieveQuery) Reset() { *m = RetrieveQuery{} }
func
(
m
*
RetrieveQuery
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
RetrieveQuery
)
ProtoMessage
()
{}
func
(
*
RetrieveQuery
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_retrieve_
2bd2296d20e0c70f
,
[]
int
{
8
}
return
fileDescriptor_retrieve_
7b99e170a1cce215
,
[]
int
{
8
}
}
func
(
m
*
RetrieveQuery
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_RetrieveQuery
.
Unmarshal
(
m
,
b
)
...
...
@@ -864,38 +888,41 @@ var _Retrieve_serviceDesc = grpc.ServiceDesc{
Metadata
:
"retrieve.proto"
,
}
func
init
()
{
proto
.
RegisterFile
(
"retrieve.proto"
,
fileDescriptor_retrieve_2bd2296d20e0c70f
)
}
var
fileDescriptor_retrieve_2bd2296d20e0c70f
=
[]
byte
{
// 471 bytes of a gzipped FileDescriptorProto
0x1f
,
0x8b
,
0x08
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x02
,
0xff
,
0xbc
,
0x54
,
0xcd
,
0x6e
,
0xd3
,
0x40
,
0x10
,
0xee
,
0x3a
,
0xd8
,
0x29
,
0x13
,
0xea
,
0x8a
,
0x45
,
0x54
,
0x56
,
0x0f
,
0x95
,
0x65
,
0x21
,
0x94
,
0x0b
,
0x41
,
0x32
,
0xbc
,
0x40
,
0xcb
,
0x05
,
0x6e
,
0x61
,
0x55
,
0xae
,
0xa0
,
0xad
,
0x3d
,
0x41
,
0x16
,
0x8e
,
0x6d
,
0xd6
,
0xeb
,
0x0a
,
0xdf
,
0x78
,
0x26
,
0xde
,
0x86
,
0x0b
,
0x2f
,
0xc1
,
0x0b
,
0xa0
,
0xec
,
0x8f
,
0x58
,
0x07
,
0x47
,
0xca
,
0xc1
,
0xe2
,
0xe8
,
0xcf
,
0xdf
,
0xb7
,
0x33
,
0xfb
,
0xed
,
0xcc
,
0x07
,
0xa1
,
0x40
,
0x29
,
0x0a
,
0xbc
,
0xc7
,
0x55
,
0x23
,
0x6a
,
0x59
,
0x53
,
0x5f
,
0xf6
,
0x0d
,
0xb6
,
0x97
,
0x8f
,
0xa5
,
0xe0
,
0x55
,
0xcb
,
0x33
,
0x59
,
0xd4
,
0x95
,
0xfe
,
0x93
,
0xfc
,
0x20
,
0xf0
,
0x88
,
0x19
,
0xf2
,
0x9a
,
0x0b
,
0x4e
,
0x9f
,
0x43
,
0x98
,
0xe3
,
0x86
,
0x77
,
0xa5
,
0xbc
,
0xce
,
0x73
,
0x81
,
0x6d
,
0x1b
,
0x91
,
0x98
,
0x2c
,
0x1f
,
0xb2
,
0x3d
,
0x94
,
0x5e
,
0x40
,
0xd0
,
0x4a
,
0x2e
,
0xbb
,
0x36
,
0xf2
,
0x62
,
0xb2
,
0xf4
,
0x99
,
0xf9
,
0xa2
,
0x57
,
0x00
,
0x99
,
0x40
,
0x2e
,
0xf1
,
0xb6
,
0xd8
,
0x62
,
0x34
,
0x8b
,
0xc9
,
0x72
,
0xc6
,
0x1c
,
0x84
,
0xc6
,
0xb0
,
0x68
,
0x04
,
0x36
,
0x5c
,
0x68
,
0xc2
,
0x03
,
0x45
,
0x70
,
0xa1
,
0x1d
,
0x23
,
0xc7
,
0x92
,
0xf7
,
0x6b
,
0x14
,
0x45
,
0x9d
,
0x47
,
0xbe
,
0x66
,
0x38
,
0x50
,
0xf2
,
0x09
,
0x4e
,
0x6d
,
0xcf
,
0xf4
,
0x19
,
0x9c
,
0xdd
,
0xf1
,
0xec
,
0x4b
,
0xd7
,
0x0c
,
0xdb
,
0x1d
,
0x82
,
0xf4
,
0x05
,
0xcc
,
0x05
,
0xca
,
0xdd
,
0x05
,
0x23
,
0x2f
,
0x9e
,
0x2d
,
0x17
,
0xe9
,
0x93
,
0x95
,
0xb2
,
0x64
,
0xe5
,
0xde
,
0x9d
,
0x59
,
0x4e
,
0xf2
,
0x9b
,
0x40
,
0x68
,
0xff
,
0x5c
,
0x2b
,
0xbb
,
0x68
,
0x0a
,
0x73
,
0xd3
,
0xa4
,
0xaa
,
0xb0
,
0x48
,
0x2f
,
0xcc
,
0x09
,
0x6b
,
0x8d
,
0x5a
,
0xfa
,
0xdb
,
0x13
,
0x66
,
0x89
,
0x4a
,
0x83
,
0x62
,
0x53
,
0x8b
,
0xad
,
0x32
,
0xc9
,
0xd1
,
0x68
,
0x74
,
0xa0
,
0xd1
,
0x10
,
0x7d
,
0x09
,
0x81
,
0x6e
,
0x5d
,
0x79
,
0xb7
,
0x48
,
0x9f
,
0x1a
,
0xc9
,
0x8d
,
0x02
,
0x1d
,
0x85
,
0xa1
,
0xed
,
0x04
,
0x19
,
0xaf
,
0x32
,
0x2c
,
0x95
,
0x97
,
0x7f
,
0x05
,
0x6f
,
0x14
,
0xe8
,
0x0a
,
0x34
,
0x8d
,
0x86
,
0xe0
,
0xc9
,
0x5e
,
0xd9
,
0xea
,
0x33
,
0x4f
,
0xf6
,
0x37
,
0x73
,
0xf0
,
0xef
,
0x79
,
0xd9
,
0x61
,
0xf2
,
0x9d
,
0x40
,
0x38
,
0x2c
,
0x73
,
0xa4
,
0xbb
,
0xff
,
0xce
,
0x8c
,
0x37
,
0x3a
,
0x33
,
0x7b
,
0x2f
,
0x3b
,
0x1b
,
0x7b
,
0xd9
,
0xf3
,
0x3d
,
0x3f
,
0xa7
,
0x6d
,
0x41
,
0x15
,
0x18
,
0x9a
,
0x3f
,
0x71
,
0x81
,
0x8f
,
0x10
,
0x0e
,
0x9d
,
0x9f
,
0xfe
,
0x02
,
0x0c
,
0xbf
,
0xda
,
0xc3
,
0xdf
,
0x55
,
0x9b
,
0x7a
,
0xe2
,
0x02
,
0x3f
,
0x09
,
0x9c
,
0xd9
,
0xe3
,
0xdf
,
0x77
,
0x28
,
0xfa
,
0xff
,
0x3d
,
0x04
,
0x47
,
0x44
,
0xc4
,
0x15
,
0x80
,
0xc0
,
0x2d
,
0x2f
,
0x2a
,
0x45
,
0xd0
,
0x09
,
0xe1
,
0x20
,
0x4e
,
0x38
,
0x05
,
0x6e
,
0x38
,
0xa5
,
0xbf
,
0x08
,
0x9c
,
0xda
,
0x68
,
0xa4
,
0xaf
,
0x61
,
0x6e
,
0x66
,
0x8d
,
0x1e
,
0xd8
,
0xe5
,
0xcb
,
0x73
,
0x83
,
0x7f
,
0xa8
,
0xda
,
0xe2
,
0x73
,
0x75
,
0xfb
,
0x2d
,
0x39
,
0x51
,
0x2a
,
0xb3
,
0xaa
,
0x07
,
0xb6
,
0x79
,
0x4c
,
0x95
,
0x42
,
0xa0
,
0x37
,
0x8b
,
0x8e
,
0xef
,
0xf3
,
0x01
,
0x8d
,
0x9e
,
0x24
,
0x3a
,
0xbe
,
0xd2
,
0x23
,
0x9a
,
0xbb
,
0x40
,
0xa5
,
0xfa
,
0xab
,
0x3f
,
0x01
,
0x00
,
0x00
,
0xff
,
0xff
,
0x01
,
0x17
,
0x39
,
0x99
,
0x01
,
0x06
,
0x00
,
0x00
,
func
init
()
{
proto
.
RegisterFile
(
"retrieve.proto"
,
fileDescriptor_retrieve_7b99e170a1cce215
)
}
var
fileDescriptor_retrieve_7b99e170a1cce215
=
[]
byte
{
// 527 bytes of a gzipped FileDescriptorProto
0x1f
,
0x8b
,
0x08
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x02
,
0xff
,
0xbc
,
0x55
,
0xd1
,
0x6e
,
0xd3
,
0x30
,
0x14
,
0x9d
,
0x5b
,
0x9a
,
0xae
,
0xb7
,
0x5b
,
0x2a
,
0x8c
,
0x98
,
0xa2
,
0x09
,
0x4d
,
0x55
,
0x34
,
0xa1
,
0xbe
,
0x50
,
0xa4
,
0xc0
,
0x0f
,
0x74
,
0x08
,
0x09
,
0xde
,
0x8a
,
0x19
,
0xaf
,
0x20
,
0x37
,
0xb9
,
0x45
,
0x11
,
0x6d
,
0x12
,
0x6c
,
0x67
,
0x5a
,
0xde
,
0x78
,
0xe1
,
0x3b
,
0xf8
,
0x07
,
0xfe
,
0x86
,
0x17
,
0x7e
,
0x82
,
0x1f
,
0x40
,
0xb1
,
0x1d
,
0xcd
,
0x29
,
0xa9
,
0xb4
,
0x87
,
0x8a
,
0xc7
,
0x1c
,
0x9f
,
0x63
,
0xdf
,
0x7b
,
0xee
,
0xed
,
0x29
,
0xf8
,
0x02
,
0x95
,
0x48
,
0xf1
,
0x06
,
0xe7
,
0x85
,
0xc8
,
0x55
,
0x4e
,
0x07
,
0xaa
,
0x2a
,
0x50
,
0x9e
,
0x3f
,
0x54
,
0x82
,
0x67
,
0x92
,
0xc7
,
0x2a
,
0xcd
,
0x33
,
0x73
,
0x12
,
0xfe
,
0x24
,
0x70
,
0xc2
,
0x2c
,
0x79
,
0xc9
,
0x05
,
0xa7
,
0x4f
,
0xc1
,
0x4f
,
0x70
,
0xcd
,
0xcb
,
0x8d
,
0x5a
,
0x24
,
0x89
,
0x40
,
0x29
,
0x03
,
0x32
,
0x25
,
0xb3
,
0x11
,
0xdb
,
0x41
,
0xe9
,
0x19
,
0x78
,
0x52
,
0x71
,
0x55
,
0xca
,
0xa0
,
0x37
,
0x25
,
0xb3
,
0x01
,
0xb3
,
0x5f
,
0xf4
,
0x02
,
0x20
,
0x16
,
0xc8
,
0x15
,
0x5e
,
0xa7
,
0x5b
,
0x0c
,
0xfa
,
0x53
,
0x32
,
0xeb
,
0x33
,
0x07
,
0xa1
,
0x53
,
0x18
,
0x17
,
0x02
,
0x0b
,
0x2e
,
0x0c
,
0xe1
,
0x81
,
0x26
,
0xb8
,
0x50
,
0xcd
,
0x48
,
0x70
,
0xc3
,
0xab
,
0x25
,
0x8a
,
0x34
,
0x4f
,
0x82
,
0x81
,
0x61
,
0x38
,
0x50
,
0xf8
,
0x09
,
0x8e
,
0x9b
,
0x9a
,
0xe9
,
0x25
,
0x9c
,
0xae
,
0x78
,
0xfc
,
0xa5
,
0x2c
,
0xda
,
0xe5
,
0xb6
,
0x41
,
0xfa
,
0x0c
,
0x86
,
0x02
,
0x55
,
0xdd
,
0x60
,
0xd0
,
0x9b
,
0xf6
,
0x67
,
0xe3
,
0xe8
,
0xd1
,
0x5c
,
0x5b
,
0x32
,
0x77
,
0x7b
,
0x67
,
0x0d
,
0x27
,
0xfc
,
0x43
,
0xc0
,
0x6f
,
0x4e
,
0x16
,
0xda
,
0x2e
,
0x1a
,
0xc1
,
0xd0
,
0x16
,
0xa9
,
0x5f
,
0x18
,
0x47
,
0x67
,
0xf6
,
0x86
,
0xa5
,
0x41
,
0x1b
,
0xfa
,
0x9b
,
0x23
,
0xd6
,
0x10
,
0xb5
,
0x06
,
0xc5
,
0x3a
,
0x17
,
0x5b
,
0x6d
,
0x92
,
0xa3
,
0x31
,
0x68
,
0x4b
,
0x63
,
0x20
,
0xfa
,
0x1c
,
0x3c
,
0x53
,
0xba
,
0xf6
,
0x6e
,
0x1c
,
0x3d
,
0xb6
,
0x92
,
0x2b
,
0x0d
,
0x3a
,
0x0a
,
0x4b
,
0xab
,
0x05
,
0x31
,
0xcf
,
0x62
,
0xdc
,
0x68
,
0x2f
,
0xef
,
0x04
,
0xaf
,
0x34
,
0xe8
,
0x0a
,
0x0c
,
0x8d
,
0xfa
,
0xd0
,
0x53
,
0x95
,
0xb6
,
0x75
,
0xc0
,
0x7a
,
0xaa
,
0xba
,
0x1a
,
0xc2
,
0xe0
,
0x86
,
0x6f
,
0x4a
,
0x0c
,
0xbf
,
0x11
,
0xf0
,
0xdb
,
0xcf
,
0xdc
,
0xd3
,
0xdd
,
0x7f
,
0x77
,
0xa6
,
0xd7
,
0xb9
,
0x33
,
0x3b
,
0x93
,
0xed
,
0x77
,
0x4d
,
0x76
,
0xb2
,
0xe3
,
0xe7
,
0x61
,
0x4b
,
0x08
,
0xbf
,
0x13
,
0x98
,
0xec
,
0xb8
,
0x7f
,
0xe0
,
0x26
,
0x2f
,
0xc1
,
0xe3
,
0x52
,
0xa2
,
0x92
,
0x41
,
0x5f
,
0x6f
,
0xda
,
0x89
,
0x9d
,
0xc7
,
0xa2
,
0x06
,
0x99
,
0x3d
,
0x0b
,
0x3f
,
0x82
,
0xdf
,
0x1e
,
0xd0
,
0x81
,
0xfb
,
0xfc
,
0x41
,
0x60
,
0xc2
,
0xf0
,
0x6b
,
0x73
,
0xfb
,
0xdb
,
0x6c
,
0x9d
,
0x1f
,
0xb8
,
0xcf
,
0x27
,
0x30
,
0xd2
,
0xbd
,
0xbc
,
0xbe
,
0xc5
,
0x58
,
0x8f
,
0x72
,
0xc4
,
0xee
,
0x80
,
0x7a
,
0xd4
,
0xfa
,
0xe3
,
0x7d
,
0xb5
,
0x5d
,
0xe5
,
0x66
,
0x35
,
0x47
,
0xcc
,
0x85
,
0xc2
,
0x5f
,
0x04
,
0x4e
,
0x9b
,
0xf2
,
0xde
,
0x95
,
0x28
,
0xaa
,
0xff
,
0xbd
,
0x6c
,
0xf7
,
0x88
,
0xa2
,
0x0b
,
0x00
,
0x81
,
0x5b
,
0x9e
,
0x66
,
0x9a
,
0x60
,
0x92
,
0xc8
,
0x41
,
0x9c
,
0x10
,
0xf4
,
0xdc
,
0x10
,
0x8c
,
0x7e
,
0x13
,
0x38
,
0x6e
,
0x22
,
0x98
,
0xbe
,
0x84
,
0xa1
,
0xdd
,
0x69
,
0xba
,
0x27
,
0x33
,
0xce
,
0x27
,
0x16
,
0xff
,
0x90
,
0xc9
,
0xf4
,
0x73
,
0x76
,
0x7d
,
0x1b
,
0x1e
,
0x69
,
0x95
,
0x8d
,
0x84
,
0x3d
,
0xa9
,
0xd1
,
0xa5
,
0x8a
,
0xc0
,
0x33
,
0xbf
,
0x60
,
0xda
,
0x9d
,
0x1b
,
0x7b
,
0x34
,
0x66
,
0x15
,
0x69
,
0x77
,
0x74
,
0x74
,
0x68
,
0x56
,
0x9e
,
0xfe
,
0xf7
,
0x78
,
0xf1
,
0x37
,
0x00
,
0x00
,
0xff
,
0xff
,
0x32
,
0x13
,
0x1c
,
0xa2
,
0x69
,
0x06
,
0x00
,
0x00
,
}
plugin/dapp/retrieve/types/types.go
View file @
1ad3a042
...
...
@@ -15,7 +15,8 @@ func init() {
// init executor type
types
.
RegistorExecutor
(
RetrieveX
,
NewType
())
types
.
RegisterDappFork
(
RetrieveX
,
"Enable"
,
0
)
types
.
RegisterDappFork
(
RetrieveX
,
"ForkRetrive"
,
180000
)
types
.
RegisterDappFork
(
RetrieveX
,
ForkRetriveX
,
180000
)
types
.
RegisterDappFork
(
RetrieveX
,
ForkRetriveAssetX
,
3150000
)
}
// RetrieveType def
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment