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
d2ef4bda
Commit
d2ef4bda
authored
Sep 13, 2021
by
hezhengjun
Committed by
vipwzw
Sep 14, 2021
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
correct statics
parent
a55e9787
Show whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
676 additions
and
396 deletions
+676
-396
testcase.sh
plugin/dapp/cross2eth/cmd/build/testcase.sh
+1
-0
statics.go
plugin/dapp/cross2eth/ebcli/statics.go
+10
-5
config.proto
plugin/dapp/cross2eth/ebrelayer/proto/config.proto
+1
-0
relayer.proto
plugin/dapp/cross2eth/ebrelayer/proto/relayer.proto
+4
-0
chain33.go
plugin/dapp/cross2eth/ebrelayer/relayer/chain33/chain33.go
+39
-27
chain33_test.go
.../dapp/cross2eth/ebrelayer/relayer/chain33/chain33_test.go
+1
-1
store.go
plugin/dapp/cross2eth/ebrelayer/relayer/chain33/store.go
+20
-10
ethereum.go
plugin/dapp/cross2eth/ebrelayer/relayer/ethereum/ethereum.go
+30
-12
ethereum_test.go
...app/cross2eth/ebrelayer/relayer/ethereum/ethereum_test.go
+2
-1
store.go
plugin/dapp/cross2eth/ebrelayer/relayer/ethereum/store.go
+9
-5
manager.go
plugin/dapp/cross2eth/ebrelayer/relayer/manager.go
+1
-1
config.pb.go
plugin/dapp/cross2eth/ebrelayer/types/config.pb.go
+557
-333
info.go
plugin/dapp/cross2eth/ebrelayer/types/info.go
+1
-1
relayer.pb.go
plugin/dapp/cross2eth/ebrelayer/types/relayer.pb.go
+0
-0
No files found.
plugin/dapp/cross2eth/cmd/build/testcase.sh
View file @
d2ef4bda
...
@@ -3,6 +3,7 @@
...
@@ -3,6 +3,7 @@
# shellcheck source=/dev/null
# shellcheck source=/dev/null
source
"./dockerRelayerTest.sh"
source
"./dockerRelayerTest.sh"
#source "./dockerRelayerTestInfinite.sh"
source
"./paracrosstestcase.sh"
source
"./paracrosstestcase.sh"
function
cross2eth
()
{
function
cross2eth
()
{
...
...
plugin/dapp/cross2eth/ebcli/statics.go
View file @
d2ef4bda
...
@@ -22,13 +22,14 @@ func StaticsCmd() *cobra.Command {
...
@@ -22,13 +22,14 @@ func StaticsCmd() *cobra.Command {
//ShowLockStaticsFlags ...
//ShowLockStaticsFlags ...
func
ShowStaticsFlags
(
cmd
*
cobra
.
Command
)
{
func
ShowStaticsFlags
(
cmd
*
cobra
.
Command
)
{
cmd
.
Flags
()
.
StringP
(
"symbol"
,
"s"
,
""
,
"token symbol"
)
cmd
.
Flags
()
.
StringP
(
"symbol"
,
"s"
,
""
,
"token symbol(optional)"
)
_
=
cmd
.
MarkFlagRequired
(
"symbol"
)
cmd
.
Flags
()
.
Int32P
(
"from"
,
"f"
,
0
,
"source chain, 0=ethereum, and 1=chain33"
)
cmd
.
Flags
()
.
Int32P
(
"from"
,
"f"
,
0
,
"source chain, 0=ethereum, and 1=chain33"
)
_
=
cmd
.
MarkFlagRequired
(
"from"
)
_
=
cmd
.
MarkFlagRequired
(
"from"
)
cmd
.
Flags
()
.
Int32P
(
"operation"
,
"o"
,
0
,
"operation type, 1=burn, and 2=lock"
)
cmd
.
Flags
()
.
Int32P
(
"operation"
,
"o"
,
0
,
"operation type, 1=burn, and 2=lock"
)
_
=
cmd
.
MarkFlagRequired
(
"operation"
)
_
=
cmd
.
MarkFlagRequired
(
"operation"
)
cmd
.
Flags
()
.
Int32P
(
"status"
,
"u"
,
0
,
"show with specified status, default to show all, 1=pending, 2=failed, 3=successful"
)
cmd
.
Flags
()
.
Int32P
(
"status"
,
"u"
,
0
,
"show with specified status, default to show all, 1=pending, 2=successful, 3=failed"
)
cmd
.
Flags
()
.
Int32P
(
"count"
,
"n"
,
0
,
"count to show, default to show all"
)
cmd
.
Flags
()
.
Int32P
(
"index"
,
"i"
,
0
,
"tx index(optional, exclude, default from 0)"
)
}
}
//ShowLockStatics ...
//ShowLockStatics ...
...
@@ -38,6 +39,8 @@ func ShowStatics(cmd *cobra.Command, args []string) {
...
@@ -38,6 +39,8 @@ func ShowStatics(cmd *cobra.Command, args []string) {
from
,
_
:=
cmd
.
Flags
()
.
GetInt32
(
"from"
)
from
,
_
:=
cmd
.
Flags
()
.
GetInt32
(
"from"
)
operation
,
_
:=
cmd
.
Flags
()
.
GetInt32
(
"operation"
)
operation
,
_
:=
cmd
.
Flags
()
.
GetInt32
(
"operation"
)
status
,
_
:=
cmd
.
Flags
()
.
GetInt32
(
"status"
)
status
,
_
:=
cmd
.
Flags
()
.
GetInt32
(
"status"
)
count
,
_
:=
cmd
.
Flags
()
.
GetInt32
(
"count"
)
index
,
_
:=
cmd
.
Flags
()
.
GetInt32
(
"index"
)
if
from
!=
0
&&
1
!=
from
{
if
from
!=
0
&&
1
!=
from
{
fmt
.
Println
(
"Pls set correct source chain flag, 0=ethereum, and 1=chain33"
)
fmt
.
Println
(
"Pls set correct source chain flag, 0=ethereum, and 1=chain33"
)
...
@@ -50,15 +53,17 @@ func ShowStatics(cmd *cobra.Command, args []string) {
...
@@ -50,15 +53,17 @@ func ShowStatics(cmd *cobra.Command, args []string) {
}
}
if
status
<
0
||
status
>
3
{
if
status
<
0
||
status
>
3
{
fmt
.
Println
(
"Pls set correct status, default 0 to show all, 1=pending, 2=
failed, 3=successful
"
)
fmt
.
Println
(
"Pls set correct status, default 0 to show all, 1=pending, 2=
successful, 3=failed
"
)
return
return
}
}
para
:=
ebTypes
.
TokenStaticsRequest
{
para
:=
&
ebTypes
.
TokenStaticsRequest
{
Symbol
:
symbol
,
Symbol
:
symbol
,
From
:
from
,
From
:
from
,
Operation
:
operation
,
Operation
:
operation
,
Status
:
status
,
Status
:
status
,
TxIndex
:
int64
(
index
),
Count
:
count
,
}
}
var
res
ebTypes
.
TokenStaticsResponse
var
res
ebTypes
.
TokenStaticsResponse
ctx
:=
jsonclient
.
NewRPCCtx
(
rpcLaddr
,
"Manager.ShowTokenStatics"
,
para
,
&
res
)
ctx
:=
jsonclient
.
NewRPCCtx
(
rpcLaddr
,
"Manager.ShowTokenStatics"
,
para
,
&
res
)
...
...
plugin/dapp/cross2eth/ebrelayer/proto/config.proto
View file @
d2ef4bda
syntax
=
"proto3"
;
syntax
=
"proto3"
;
package
types
;
package
types
;
option
go_package
=
"../types"
;
message
SyncTxConfig
{
message
SyncTxConfig
{
string
chain33host
=
1
;
string
chain33host
=
1
;
...
...
plugin/dapp/cross2eth/ebrelayer/proto/relayer.proto
View file @
d2ef4bda
syntax
=
"proto3"
;
syntax
=
"proto3"
;
package
types
;
package
types
;
option
go_package
=
"../types"
;
//以太坊账户信息
//以太坊账户信息
// privkey : 账户地址对应的私钥
// privkey : 账户地址对应的私钥
...
@@ -159,6 +160,7 @@ message Chain33ToEthereumStatics {
...
@@ -159,6 +160,7 @@ message Chain33ToEthereumStatics {
string
amount
=
8
;
string
amount
=
8
;
int64
nonce
=
9
;
int64
nonce
=
9
;
int64
txIndex
=
10
;
int64
txIndex
=
10
;
string
operationType
=
11
;
}
}
message
Ethereum2Chain33Statics
{
message
Ethereum2Chain33Statics
{
...
@@ -174,6 +176,7 @@ message Ethereum2Chain33Statics {
...
@@ -174,6 +176,7 @@ message Ethereum2Chain33Statics {
string
amount
=
8
;
string
amount
=
8
;
int64
nonce
=
9
;
int64
nonce
=
9
;
int64
txIndex
=
10
;
int64
txIndex
=
10
;
string
operationType
=
11
;
}
}
message
TokenAddress
{
message
TokenAddress
{
...
@@ -192,6 +195,7 @@ message TokenStaticsRequest {
...
@@ -192,6 +195,7 @@ message TokenStaticsRequest {
int32
operation
=
3
;
int32
operation
=
3
;
int32
status
=
4
;
int32
status
=
4
;
int64
txIndex
=
5
;
int64
txIndex
=
5
;
int32
count
=
6
;
}
}
message
TokenStaticsResponse
{
message
TokenStaticsResponse
{
...
...
plugin/dapp/cross2eth/ebrelayer/relayer/chain33/chain33.go
View file @
d2ef4bda
...
@@ -53,7 +53,7 @@ type Relayer4Chain33 struct {
...
@@ -53,7 +53,7 @@ type Relayer4Chain33 struct {
bridgeBankEventBurnSig
string
bridgeBankEventBurnSig
string
bridgeBankAbi
abi
.
ABI
bridgeBankAbi
abi
.
ABI
deployInfo
*
ebTypes
.
Deploy
deployInfo
*
ebTypes
.
Deploy
totalTx4
Chain33ToEth
int64
totalTx4
RelayEth2chai33
int64
//新增//
//新增//
ethBridgeClaimChan
<-
chan
*
ebTypes
.
EthBridgeClaim
ethBridgeClaimChan
<-
chan
*
ebTypes
.
EthBridgeClaim
chain33MsgChan
chan
<-
*
events
.
Chain33Msg
chain33MsgChan
chan
<-
*
events
.
Chain33Msg
...
@@ -91,7 +91,7 @@ func StartChain33Relayer(startPara *Chain33StartPara) *Relayer4Chain33 {
...
@@ -91,7 +91,7 @@ func StartChain33Relayer(startPara *Chain33StartPara) *Relayer4Chain33 {
bridgeRegistryAddr
:
startPara
.
BridgeRegistryAddr
,
bridgeRegistryAddr
:
startPara
.
BridgeRegistryAddr
,
ethBridgeClaimChan
:
startPara
.
EthBridgeClaimChan
,
ethBridgeClaimChan
:
startPara
.
EthBridgeClaimChan
,
chain33MsgChan
:
startPara
.
Chain33MsgChan
,
chain33MsgChan
:
startPara
.
Chain33MsgChan
,
totalTx4
Chain33ToEth
:
0
,
totalTx4
RelayEth2chai33
:
0
,
symbol2Addr
:
make
(
map
[
string
]
string
),
symbol2Addr
:
make
(
map
[
string
]
string
),
}
}
...
@@ -115,17 +115,18 @@ func StartChain33Relayer(startPara *Chain33StartPara) *Relayer4Chain33 {
...
@@ -115,17 +115,18 @@ func StartChain33Relayer(startPara *Chain33StartPara) *Relayer4Chain33 {
//输入地址为空,且数据库中保存地址不为空,则直接使用数据库中的地址
//输入地址为空,且数据库中保存地址不为空,则直接使用数据库中的地址
chain33Relayer
.
bridgeRegistryAddr
=
registrAddrInDB
chain33Relayer
.
bridgeRegistryAddr
=
registrAddrInDB
}
}
chain33Relayer
.
totalTx4RelayEth2chai33
=
chain33Relayer
.
getTotalTxAmount
()
if
0
==
chain33Relayer
.
totalTx4RelayEth2chai33
{
statics
:=
&
ebTypes
.
Ethereum2Chain33Statics
{}
data
:=
chain33Types
.
Encode
(
statics
)
chain33Relayer
.
setLastestRelay2Chain33TxStatics
(
0
,
int32
(
events
.
ClaimTypeLock
),
data
)
chain33Relayer
.
setLastestRelay2Chain33TxStatics
(
0
,
int32
(
events
.
ClaimTypeBurn
),
data
)
}
go
chain33Relayer
.
syncProc
(
syncCfg
)
go
chain33Relayer
.
syncProc
(
syncCfg
)
return
chain33Relayer
return
chain33Relayer
}
}
//QueryTxhashRelay2Eth ...
func
(
chain33Relayer
*
Relayer4Chain33
)
QueryTxhashRelay2Eth
()
ebTypes
.
Txhashes
{
txhashs
:=
utils
.
QueryTxhashes
([]
byte
(
eth2Chain33BurnLockTxStaticsPrefix
),
chain33Relayer
.
db
)
return
ebTypes
.
Txhashes
{
Txhash
:
txhashs
}
}
func
(
chain33Relayer
*
Relayer4Chain33
)
syncProc
(
syncCfg
*
ebTypes
.
SyncTxReceiptConfig
)
{
func
(
chain33Relayer
*
Relayer4Chain33
)
syncProc
(
syncCfg
*
ebTypes
.
SyncTxReceiptConfig
)
{
_
,
_
=
fmt
.
Fprintln
(
os
.
Stdout
,
"Pls unlock or import private key for Chain33 relayer"
)
_
,
_
=
fmt
.
Fprintln
(
os
.
Stdout
,
"Pls unlock or import private key for Chain33 relayer"
)
<-
chain33Relayer
.
unlockChan
<-
chain33Relayer
.
unlockChan
...
@@ -186,6 +187,7 @@ func (chain33Relayer *Relayer4Chain33) getCurrentHeight() int64 {
...
@@ -186,6 +187,7 @@ func (chain33Relayer *Relayer4Chain33) getCurrentHeight() int64 {
func
(
chain33Relayer
*
Relayer4Chain33
)
onNewHeightProc
(
currentHeight
int64
)
{
func
(
chain33Relayer
*
Relayer4Chain33
)
onNewHeightProc
(
currentHeight
int64
)
{
//检查已经提交的交易结果
//检查已经提交的交易结果
chain33Relayer
.
updateTxStatus
()
//未达到足够的成熟度,不进行处理
//未达到足够的成熟度,不进行处理
// +++++++++||++++++++++++||++++++++++||
// +++++++++||++++++++++++||++++++++++||
...
@@ -368,8 +370,10 @@ func (chain33Relayer *Relayer4Chain33) relayLockBurnToChain33(claim *ebTypes.Eth
...
@@ -368,8 +370,10 @@ func (chain33Relayer *Relayer4Chain33) relayLockBurnToChain33(claim *ebTypes.Eth
}
}
var
tokenAddr
string
var
tokenAddr
string
operationType
:=
""
if
int32
(
events
.
ClaimTypeBurn
)
==
claim
.
ClaimType
{
if
int32
(
events
.
ClaimTypeBurn
)
==
claim
.
ClaimType
{
//burn 分支
//burn 分支
operationType
=
"Burn"
if
ebTypes
.
SYMBOL_BTY
==
claim
.
Symbol
{
if
ebTypes
.
SYMBOL_BTY
==
claim
.
Symbol
{
tokenAddr
=
ebTypes
.
BTYAddrChain33
tokenAddr
=
ebTypes
.
BTYAddrChain33
}
else
{
}
else
{
...
@@ -379,9 +383,9 @@ func (chain33Relayer *Relayer4Chain33) relayLockBurnToChain33(claim *ebTypes.Eth
...
@@ -379,9 +383,9 @@ func (chain33Relayer *Relayer4Chain33) relayLockBurnToChain33(claim *ebTypes.Eth
return
return
}
}
}
}
}
else
{
}
else
{
//lock 分支
//lock 分支
operationType
=
"Lock"
var
exist
bool
var
exist
bool
tokenAddr
,
exist
=
chain33Relayer
.
symbol2Addr
[
claim
.
Symbol
]
tokenAddr
,
exist
=
chain33Relayer
.
symbol2Addr
[
claim
.
Symbol
]
if
!
exist
{
if
!
exist
{
...
@@ -424,18 +428,17 @@ func (chain33Relayer *Relayer4Chain33) relayLockBurnToChain33(claim *ebTypes.Eth
...
@@ -424,18 +428,17 @@ func (chain33Relayer *Relayer4Chain33) relayLockBurnToChain33(claim *ebTypes.Eth
claim
.
ChainName
=
chain33Relayer
.
chainName
claim
.
ChainName
=
chain33Relayer
.
chainName
txhash
,
err
:=
relayEvmTx2Chain33
(
chain33Relayer
.
privateKey4Chain33
,
claim
,
parameter
,
chain33Relayer
.
rpcLaddr
,
chain33Relayer
.
oracleAddr
)
txhash
,
err
:=
relayEvmTx2Chain33
(
chain33Relayer
.
privateKey4Chain33
,
claim
,
parameter
,
chain33Relayer
.
rpcLaddr
,
chain33Relayer
.
oracleAddr
)
if
err
!=
nil
{
if
err
!=
nil
{
relayerLog
.
Error
(
"relayLockBurnToChain33"
,
"Failed to RelayEvmTx2Chain33 due to:"
,
err
.
Error
())
relayerLog
.
Error
(
"relayLockBurnToChain33"
,
"Failed to RelayEvmTx2Chain33 due to:"
,
err
.
Error
()
,
"EthereumTxhash"
,
claim
.
EthTxHash
)
return
return
}
}
relayerLog
.
Info
(
"relayLockBurnToChain33"
,
"tx is sent to relay lock or burn with hash"
,
txhash
)
//保存交易hash,方便查询
//第一个有效的index从1开始,方便list
atomic
.
AddInt64
(
&
chain33Relayer
.
totalTx4Chain33ToEth
,
1
)
txIndex
:=
atomic
.
AddInt64
(
&
chain33Relayer
.
totalTx4RelayEth2chai33
,
1
)
txIndex
:=
atomic
.
LoadInt64
(
&
chain33Relayer
.
totalTx4Chain33ToEth
)
if
err
=
chain33Relayer
.
updateTotalTxAmount2Eth
(
txIndex
);
nil
!=
err
{
if
err
=
chain33Relayer
.
updateTotalTxAmount2Eth
(
txIndex
);
nil
!=
err
{
relayerLog
.
Error
(
"relayLockBurnToChain33"
,
"Failed to
RelayEvmTx2Chain33
due to:"
,
err
.
Error
())
relayerLog
.
Error
(
"relayLockBurnToChain33"
,
"Failed to
updateTotalTxAmount2Eth
due to:"
,
err
.
Error
())
return
return
}
}
statics
:=
&
ebTypes
.
Ethereum2Chain33Statics
{
statics
:=
&
ebTypes
.
Ethereum2Chain33Statics
{
Chain33Txstatus
:
ebTypes
.
Tx_Status_Pending
,
Chain33Txstatus
:
ebTypes
.
Tx_Status_Pending
,
Chain33Txhash
:
txhash
,
Chain33Txhash
:
txhash
,
...
@@ -447,12 +450,22 @@ func (chain33Relayer *Relayer4Chain33) relayLockBurnToChain33(claim *ebTypes.Eth
...
@@ -447,12 +450,22 @@ func (chain33Relayer *Relayer4Chain33) relayLockBurnToChain33(claim *ebTypes.Eth
Amount
:
claim
.
Amount
,
Amount
:
claim
.
Amount
,
Nonce
:
claim
.
Nonce
,
Nonce
:
claim
.
Nonce
,
TxIndex
:
txIndex
,
TxIndex
:
txIndex
,
OperationType
:
operationType
,
}
}
data
:=
chain33Types
.
Encode
(
statics
)
data
:=
chain33Types
.
Encode
(
statics
)
if
err
=
chain33Relayer
.
setLastestRelay2Chain33TxStatics
(
txIndex
,
claim
.
ClaimType
,
data
);
nil
!=
err
{
if
err
=
chain33Relayer
.
setLastestRelay2Chain33TxStatics
(
txIndex
,
claim
.
ClaimType
,
data
);
nil
!=
err
{
relayerLog
.
Error
(
"relayLockBurnToChain33"
,
"Failed to
RelayEvmTx2Chain33
due to:"
,
err
.
Error
())
relayerLog
.
Error
(
"relayLockBurnToChain33"
,
"Failed to
setLastestRelay2Chain33TxStatics
due to:"
,
err
.
Error
())
return
return
}
}
relayerLog
.
Info
(
"relayLockBurnToChain33::successful"
,
"txIndex"
,
txIndex
,
"Chain33Txhash"
,
txhash
,
"EthereumTxhash"
,
claim
.
EthTxHash
,
"type"
,
operationType
,
"Symbol"
,
claim
.
Symbol
,
"Amount"
,
claim
.
Amount
,
"EthereumSender"
,
claim
.
EthereumSender
,
"Chain33Receiver"
,
claim
.
Chain33Receiver
)
}
}
func
(
chain33Relayer
*
Relayer4Chain33
)
BurnAsyncFromChain33
(
ownerPrivateKey
,
tokenAddr
,
ethereumReceiver
,
amount
string
)
(
string
,
error
)
{
func
(
chain33Relayer
*
Relayer4Chain33
)
BurnAsyncFromChain33
(
ownerPrivateKey
,
tokenAddr
,
ethereumReceiver
,
amount
string
)
(
string
,
error
)
{
...
@@ -476,10 +489,10 @@ func (chain33Relayer *Relayer4Chain33) ShowBridgeRegistryAddr() (string, error)
...
@@ -476,10 +489,10 @@ func (chain33Relayer *Relayer4Chain33) ShowBridgeRegistryAddr() (string, error)
return
chain33Relayer
.
bridgeRegistryAddr
,
nil
return
chain33Relayer
.
bridgeRegistryAddr
,
nil
}
}
func
(
chain33Relayer
*
Relayer4Chain33
)
ShowStatics
(
request
ebTypes
.
TokenStaticsRequest
)
(
*
ebTypes
.
TokenStaticsResponse
,
error
)
{
func
(
chain33Relayer
*
Relayer4Chain33
)
ShowStatics
(
request
*
ebTypes
.
TokenStaticsRequest
)
(
*
ebTypes
.
TokenStaticsResponse
,
error
)
{
res
:=
&
ebTypes
.
TokenStaticsResponse
{}
res
:=
&
ebTypes
.
TokenStaticsResponse
{}
datas
,
err
:=
chain33Relayer
.
getStatics
(
request
.
Operation
,
request
.
TxIndex
)
datas
,
err
:=
chain33Relayer
.
getStatics
(
request
.
Operation
,
request
.
TxIndex
,
request
.
Count
)
if
nil
!=
err
{
if
nil
!=
err
{
return
nil
,
err
return
nil
,
err
}
}
...
@@ -487,10 +500,11 @@ func (chain33Relayer *Relayer4Chain33) ShowStatics(request ebTypes.TokenStaticsR
...
@@ -487,10 +500,11 @@ func (chain33Relayer *Relayer4Chain33) ShowStatics(request ebTypes.TokenStaticsR
for
_
,
data
:=
range
datas
{
for
_
,
data
:=
range
datas
{
var
statics
ebTypes
.
Ethereum2Chain33Statics
var
statics
ebTypes
.
Ethereum2Chain33Statics
_
=
chain33Types
.
Decode
(
data
,
&
statics
)
_
=
chain33Types
.
Decode
(
data
,
&
statics
)
if
request
.
Status
!=
0
{
if
request
.
Status
!=
0
&&
ebTypes
.
Tx_Status_Map
[
request
.
Status
]
!=
statics
.
Chain33Txstatus
{
if
ebTypes
.
Tx_Status_Map
[
request
.
Status
]
!=
statics
.
Chain33Txstatus
{
continue
continue
}
}
if
len
(
request
.
Symbol
)
>
0
&&
request
.
Symbol
!=
statics
.
Symbol
{
continue
}
}
res
.
E2Cstatics
=
append
(
res
.
E2Cstatics
,
&
statics
)
res
.
E2Cstatics
=
append
(
res
.
E2Cstatics
,
&
statics
)
}
}
...
@@ -504,30 +518,28 @@ func (chain33Relayer *Relayer4Chain33) updateTxStatus() {
...
@@ -504,30 +518,28 @@ func (chain33Relayer *Relayer4Chain33) updateTxStatus() {
func
(
chain33Relayer
*
Relayer4Chain33
)
updateSingleTxStatus
(
claimType
events
.
ClaimType
)
{
func
(
chain33Relayer
*
Relayer4Chain33
)
updateSingleTxStatus
(
claimType
events
.
ClaimType
)
{
txIndex
:=
chain33Relayer
.
getChain33UpdateTxIndex
(
claimType
)
txIndex
:=
chain33Relayer
.
getChain33UpdateTxIndex
(
claimType
)
if
ebTypes
.
Invalid_Tx_Index
==
txIndex
{
datas
,
_
:=
chain33Relayer
.
getStatics
(
int32
(
claimType
),
txIndex
,
0
)
return
}
datas
,
_
:=
chain33Relayer
.
getStatics
(
int32
(
claimType
),
txIndex
)
if
nil
==
datas
{
if
nil
==
datas
{
return
return
}
}
for
_
,
data
:=
range
datas
{
for
_
,
data
:=
range
datas
{
var
statics
ebTypes
.
Chain33ToEthereum
Statics
var
statics
ebTypes
.
Ethereum2Chain33
Statics
_
=
chain33Types
.
Decode
(
data
,
&
statics
)
_
=
chain33Types
.
Decode
(
data
,
&
statics
)
result
:=
getTxStatusByHashesRpc
(
statics
.
Chain33Txhash
,
chain33Relayer
.
rpcLaddr
)
result
:=
getTxStatusByHashesRpc
(
statics
.
Chain33Txhash
,
chain33Relayer
.
rpcLaddr
)
//当前处理机制比较简单,如果发现该笔交易未执行,就不再产寻后续交易的回执
//当前处理机制比较简单,如果发现该笔交易未执行,就不再产寻后续交易的回执
if
ebTypes
.
Invalid_Chain33Tx_Status
==
result
{
if
ebTypes
.
Invalid_Chain33Tx_Status
==
result
{
relayerLog
.
Debug
(
"chain33Relayer::updateSingleTxStatus"
,
"no receipt for tx index"
,
statics
.
TxIndex
)
break
break
}
}
status
:=
ebTypes
.
Tx_Status_Success
status
:=
ebTypes
.
Tx_Status_Success
if
result
!=
chain33Types
.
ExecOk
{
if
result
!=
chain33Types
.
ExecOk
{
status
=
ebTypes
.
Tx_Status_Failed
status
=
ebTypes
.
Tx_Status_Failed
}
}
statics
.
Eth
Txstatus
=
status
statics
.
Chain33
Txstatus
=
status
dataNew
:=
chain33Types
.
Encode
(
&
statics
)
dataNew
:=
chain33Types
.
Encode
(
&
statics
)
_
=
chain33Relayer
.
setLastestRelay2Chain33TxStatics
(
statics
.
TxIndex
,
int32
(
claimType
),
dataNew
)
_
=
chain33Relayer
.
setLastestRelay2Chain33TxStatics
(
statics
.
TxIndex
,
int32
(
claimType
),
dataNew
)
_
=
chain33Relayer
.
setChain33UpdateTxIndex
(
statics
.
TxIndex
,
claimType
)
_
=
chain33Relayer
.
setChain33UpdateTxIndex
(
statics
.
TxIndex
,
claimType
)
relayerLog
.
Info
(
"updateSingleTxStatus"
,
"txHash"
,
statics
.
Chain33Txhash
,
"updated status"
,
status
)
relayerLog
.
Debug
(
"updateSingleTxStatus"
,
"TxIndex"
,
statics
.
TxIndex
,
"operationType"
,
statics
.
OperationType
,
"txHash"
,
statics
.
Chain33Txhash
,
"updated status"
,
status
)
}
}
}
}
...
...
plugin/dapp/cross2eth/ebrelayer/relayer/chain33/chain33_test.go
View file @
d2ef4bda
...
@@ -111,7 +111,7 @@ func newChain33Relayer(x2EthDeployInfo *ethtxs.X2EthDeployInfo, pushBind string)
...
@@ -111,7 +111,7 @@ func newChain33Relayer(x2EthDeployInfo *ethtxs.X2EthDeployInfo, pushBind string)
deployInfo
:
cfg
.
Deploy
,
deployInfo
:
cfg
.
Deploy
,
ethBridgeClaimChan
:
ethBridgeClaimchan
,
ethBridgeClaimChan
:
ethBridgeClaimchan
,
chain33MsgChan
:
chain33Msgchan
,
chain33MsgChan
:
chain33Msgchan
,
totalTx4
Chain33ToEth
:
0
,
totalTx4
RelayEth2chai33
:
0
,
symbol2Addr
:
make
(
map
[
string
]
string
),
symbol2Addr
:
make
(
map
[
string
]
string
),
oracleAddr
:
x2EthDeployInfo
.
Oracle
.
Address
.
String
(),
oracleAddr
:
x2EthDeployInfo
.
Oracle
.
Address
.
String
(),
bridgeBankAddr
:
x2EthDeployInfo
.
BridgeBank
.
Address
.
String
(),
bridgeBankAddr
:
x2EthDeployInfo
.
BridgeBank
.
Address
.
String
(),
...
...
plugin/dapp/cross2eth/ebrelayer/relayer/chain33/store.go
View file @
d2ef4bda
...
@@ -3,7 +3,6 @@ package chain33
...
@@ -3,7 +3,6 @@ package chain33
import
(
import
(
"errors"
"errors"
"fmt"
"fmt"
"sync/atomic"
dbm
"github.com/33cn/chain33/common/db"
dbm
"github.com/33cn/chain33/common/db"
chain33Types
"github.com/33cn/chain33/types"
chain33Types
"github.com/33cn/chain33/types"
...
@@ -16,7 +15,8 @@ import (
...
@@ -16,7 +15,8 @@ import (
var
(
var
(
lastSyncHeightPrefix
=
[]
byte
(
"chain33-lastSyncHeight:"
)
lastSyncHeightPrefix
=
[]
byte
(
"chain33-lastSyncHeight:"
)
eth2Chain33BurnLockTxStaticsPrefix
=
"chain33-eth2chain33BurnLockStatics"
eth2Chain33BurnLockTxStaticsPrefix
=
"chain33-eth2chain33BurnLockStatics"
chain33ToEthBurnLockTxTotalAmount
=
[]
byte
(
"chain33-chain33ToEthBurnLockTxTotalAmount"
)
eth2Chain33BurnLockTxFinished
=
"chain33-eth2Chain33BurnLockTxFinished"
relayEthBurnLockTxTotalAmount
=
[]
byte
(
"chain33-relayEthBurnLockTxTotalAmount"
)
chain33BurnTxUpdateTxIndex
=
[]
byte
(
"chain33-chain33BurnTxUpdateTxIndx"
)
chain33BurnTxUpdateTxIndex
=
[]
byte
(
"chain33-chain33BurnTxUpdateTxIndx"
)
chain33LockTxUpdateTxIndex
=
[]
byte
(
"chain33-chain33LockTxUpdateTxIndex"
)
chain33LockTxUpdateTxIndex
=
[]
byte
(
"chain33-chain33LockTxUpdateTxIndex"
)
bridgeRegistryAddrOnChain33
=
[]
byte
(
"chain33-x2EthBridgeRegistryAddrOnChain33"
)
bridgeRegistryAddrOnChain33
=
[]
byte
(
"chain33-x2EthBridgeRegistryAddrOnChain33"
)
...
@@ -32,20 +32,29 @@ func calcRelayFromEthStaticsKey(txindex int64, claimType int32) []byte {
...
@@ -32,20 +32,29 @@ func calcRelayFromEthStaticsKey(txindex int64, claimType int32) []byte {
return
[]
byte
(
fmt
.
Sprintf
(
"%s-%d-%012d"
,
eth2Chain33BurnLockTxStaticsPrefix
,
claimType
,
txindex
))
return
[]
byte
(
fmt
.
Sprintf
(
"%s-%d-%012d"
,
eth2Chain33BurnLockTxStaticsPrefix
,
claimType
,
txindex
))
}
}
//未完成,处在pending状态
func
calcRelayFromEthStaticsList
(
claimType
int32
)
[]
byte
{
func
calcRelayFromEthStaticsList
(
claimType
int32
)
[]
byte
{
return
[]
byte
(
fmt
.
Sprintf
(
"%s-%d-"
,
eth2Chain33BurnLockTxStaticsPrefix
,
claimType
))
return
[]
byte
(
fmt
.
Sprintf
(
"%s-%d-"
,
eth2Chain33BurnLockTxStaticsPrefix
,
claimType
))
}
}
func
(
chain33Relayer
*
Relayer4Chain33
)
updateTotalTxAmount2Eth
(
total
int64
)
error
{
func
calcFromEthFinishedStaticsKey
(
txindex
int64
,
claimType
int32
)
[]
byte
{
return
[]
byte
(
fmt
.
Sprintf
(
"%s-%d-%012d"
,
eth2Chain33BurnLockTxFinished
,
claimType
,
txindex
))
}
func
calcFromEthFinishedStaticsList
(
claimType
int32
)
[]
byte
{
return
[]
byte
(
fmt
.
Sprintf
(
"%s-%d-"
,
eth2Chain33BurnLockTxFinished
,
claimType
))
}
func
(
chain33Relayer
*
Relayer4Chain33
)
updateTotalTxAmount2Eth
(
txIndex
int64
)
error
{
totalTx
:=
&
chain33Types
.
Int64
{
totalTx
:=
&
chain33Types
.
Int64
{
Data
:
atomic
.
LoadInt64
(
&
chain33Relayer
.
totalTx4Chain33ToEth
)
,
Data
:
txIndex
,
}
}
//更新成功见证的交易数
//更新成功见证的交易数
return
chain33Relayer
.
db
.
Set
(
chain33To
EthBurnLockTxTotalAmount
,
chain33Types
.
Encode
(
totalTx
))
return
chain33Relayer
.
db
.
Set
(
relay
EthBurnLockTxTotalAmount
,
chain33Types
.
Encode
(
totalTx
))
}
}
func
(
chain33Relayer
*
Relayer4Chain33
)
getTotalTxAmount
2Eth
()
int64
{
func
(
chain33Relayer
*
Relayer4Chain33
)
getTotalTxAmount
()
int64
{
totalTx
,
_
:=
utils
.
LoadInt64FromDB
(
chain33To
EthBurnLockTxTotalAmount
,
chain33Relayer
.
db
)
totalTx
,
_
:=
utils
.
LoadInt64FromDB
(
relay
EthBurnLockTxTotalAmount
,
chain33Relayer
.
db
)
return
totalTx
return
totalTx
}
}
...
@@ -54,18 +63,19 @@ func (chain33Relayer *Relayer4Chain33) setLastestRelay2Chain33TxStatics(txIndex
...
@@ -54,18 +63,19 @@ func (chain33Relayer *Relayer4Chain33) setLastestRelay2Chain33TxStatics(txIndex
return
chain33Relayer
.
db
.
Set
(
key
,
data
)
return
chain33Relayer
.
db
.
Set
(
key
,
data
)
}
}
func
(
chain33Relayer
*
Relayer4Chain33
)
getStatics
(
claimType
int32
,
txIndex
int64
)
([][]
byte
,
error
)
{
func
(
chain33Relayer
*
Relayer4Chain33
)
getStatics
(
claimType
int32
,
txIndex
int64
,
count
int32
)
([][]
byte
,
error
)
{
//第一步:获取处在pending状态的
keyPrefix
:=
calcRelayFromEthStaticsList
(
claimType
)
keyPrefix
:=
calcRelayFromEthStaticsList
(
claimType
)
keyFrom
:=
calcRelayFromEthStaticsKey
(
txIndex
,
claimType
)
keyFrom
:=
calcRelayFromEthStaticsKey
(
txIndex
,
claimType
)
helper
:=
dbm
.
NewListHelper
(
chain33Relayer
.
db
)
helper
:=
dbm
.
NewListHelper
(
chain33Relayer
.
db
)
datas
:=
helper
.
List
(
keyPrefix
,
keyFrom
,
20
,
dbm
.
ListASC
)
datas
:=
helper
.
List
(
keyPrefix
,
keyFrom
,
count
,
dbm
.
ListASC
)
if
nil
==
datas
{
if
nil
==
datas
{
return
nil
,
errors
.
New
(
"Not found"
)
return
nil
,
errors
.
New
(
"Not found"
)
}
}
return
datas
,
nil
return
datas
,
nil
}
}
func
(
chain33Relayer
*
Relayer4Chain33
)
setChain33UpdateTxIndex
(
txindex
int64
,
claimType
events
.
ClaimType
)
error
{
func
(
chain33Relayer
*
Relayer4Chain33
)
setChain33UpdateTxIndex
(
txindex
int64
,
claimType
events
.
ClaimType
)
error
{
txIndexWrapper
:=
&
chain33Types
.
Int64
{
txIndexWrapper
:=
&
chain33Types
.
Int64
{
Data
:
txindex
,
Data
:
txindex
,
...
...
plugin/dapp/cross2eth/ebrelayer/relayer/ethereum/ethereum.go
View file @
d2ef4bda
...
@@ -69,7 +69,7 @@ type Relayer4Ethereum struct {
...
@@ -69,7 +69,7 @@ type Relayer4Ethereum struct {
x2EthContracts
*
ethtxs
.
X2EthContracts
x2EthContracts
*
ethtxs
.
X2EthContracts
ethBridgeClaimChan
chan
<-
*
ebTypes
.
EthBridgeClaim
ethBridgeClaimChan
chan
<-
*
ebTypes
.
EthBridgeClaim
chain33MsgChan
<-
chan
*
events
.
Chain33Msg
chain33MsgChan
<-
chan
*
events
.
Chain33Msg
totalTx
4Eth2Chain33
int64
totalTx
RelayFromChain33
int64
symbol2Addr
map
[
string
]
common
.
Address
symbol2Addr
map
[
string
]
common
.
Address
symbol2LockAddr
map
[
string
]
common
.
Address
symbol2LockAddr
map
[
string
]
common
.
Address
mulSignAddr
string
mulSignAddr
string
...
@@ -109,7 +109,7 @@ func StartEthereumRelayer(startPara *EthereumStartPara) *Relayer4Ethereum {
...
@@ -109,7 +109,7 @@ func StartEthereumRelayer(startPara *EthereumStartPara) *Relayer4Ethereum {
fetchHeightPeriodMs
:
startPara
.
BlockInterval
,
fetchHeightPeriodMs
:
startPara
.
BlockInterval
,
ethBridgeClaimChan
:
startPara
.
EthBridgeClaimChan
,
ethBridgeClaimChan
:
startPara
.
EthBridgeClaimChan
,
chain33MsgChan
:
startPara
.
Chain33MsgChan
,
chain33MsgChan
:
startPara
.
Chain33MsgChan
,
totalTx
4Eth2
Chain33
:
0
,
totalTx
RelayFrom
Chain33
:
0
,
symbol2Addr
:
make
(
map
[
string
]
common
.
Address
),
symbol2Addr
:
make
(
map
[
string
]
common
.
Address
),
symbol2LockAddr
:
make
(
map
[
string
]
common
.
Address
),
symbol2LockAddr
:
make
(
map
[
string
]
common
.
Address
),
}
}
...
@@ -142,6 +142,13 @@ func StartEthereumRelayer(startPara *EthereumStartPara) *Relayer4Ethereum {
...
@@ -142,6 +142,13 @@ func StartEthereumRelayer(startPara *EthereumStartPara) *Relayer4Ethereum {
panic
(
errinfo
)
panic
(
errinfo
)
}
}
ethRelayer
.
clientChainID
=
clientChainID
ethRelayer
.
clientChainID
=
clientChainID
ethRelayer
.
totalTxRelayFromChain33
=
ethRelayer
.
getTotalTxAmount2Eth
()
if
0
==
ethRelayer
.
totalTxRelayFromChain33
{
statics
:=
&
ebTypes
.
Ethereum2Chain33Statics
{}
data
:=
chain33Types
.
Encode
(
statics
)
_
=
ethRelayer
.
setLastestStatics
(
int32
(
events
.
ClaimTypeLock
),
0
,
data
)
_
=
ethRelayer
.
setLastestStatics
(
int32
(
events
.
ClaimTypeBurn
),
0
,
data
)
}
go
ethRelayer
.
proc
()
go
ethRelayer
.
proc
()
return
ethRelayer
return
ethRelayer
...
@@ -466,7 +473,9 @@ func (ethRelayer *Relayer4Ethereum) handleChain33Msg(chain33Msg *events.Chain33M
...
@@ -466,7 +473,9 @@ func (ethRelayer *Relayer4Ethereum) handleChain33Msg(chain33Msg *events.Chain33M
prophecyClaim
:=
ethtxs
.
Chain33MsgToProphecyClaim
(
*
chain33Msg
)
prophecyClaim
:=
ethtxs
.
Chain33MsgToProphecyClaim
(
*
chain33Msg
)
var
tokenAddr
common
.
Address
var
tokenAddr
common
.
Address
exist
:=
false
exist
:=
false
operationType
:=
""
if
chain33Msg
.
ClaimType
==
events
.
ClaimTypeLock
{
if
chain33Msg
.
ClaimType
==
events
.
ClaimTypeLock
{
operationType
=
"lock"
tokenAddr
,
exist
=
ethRelayer
.
symbol2Addr
[
prophecyClaim
.
Symbol
]
tokenAddr
,
exist
=
ethRelayer
.
symbol2Addr
[
prophecyClaim
.
Symbol
]
if
!
exist
{
if
!
exist
{
relayerLog
.
Info
(
"handleChain33Msg"
,
"Query address from ethereum for symbol"
,
prophecyClaim
.
Symbol
)
relayerLog
.
Info
(
"handleChain33Msg"
,
"Query address from ethereum for symbol"
,
prophecyClaim
.
Symbol
)
...
@@ -488,6 +497,7 @@ func (ethRelayer *Relayer4Ethereum) handleChain33Msg(chain33Msg *events.Chain33M
...
@@ -488,6 +497,7 @@ func (ethRelayer *Relayer4Ethereum) handleChain33Msg(chain33Msg *events.Chain33M
tokenAddr
=
common
.
HexToAddress
(
addr
)
tokenAddr
=
common
.
HexToAddress
(
addr
)
}
}
}
else
{
}
else
{
operationType
=
"burn"
tokenAddr
,
exist
=
ethRelayer
.
symbol2LockAddr
[
prophecyClaim
.
Symbol
]
tokenAddr
,
exist
=
ethRelayer
.
symbol2LockAddr
[
prophecyClaim
.
Symbol
]
if
!
exist
{
if
!
exist
{
//因为是burn操作,必须从允许lock的token地址中进行查询
//因为是burn操作,必须从允许lock的token地址中进行查询
...
@@ -516,8 +526,7 @@ func (ethRelayer *Relayer4Ethereum) handleChain33Msg(chain33Msg *events.Chain33M
...
@@ -516,8 +526,7 @@ func (ethRelayer *Relayer4Ethereum) handleChain33Msg(chain33Msg *events.Chain33M
relayerLog
.
Info
(
"handleChain33Msg"
,
"RelayOracleClaimToEthereum with tx hash"
,
txhash
)
relayerLog
.
Info
(
"handleChain33Msg"
,
"RelayOracleClaimToEthereum with tx hash"
,
txhash
)
//保存交易hash,方便查询
//保存交易hash,方便查询
atomic
.
AddInt64
(
&
ethRelayer
.
totalTx4Eth2Chain33
,
1
)
txIndex
:=
atomic
.
AddInt64
(
&
ethRelayer
.
totalTxRelayFromChain33
,
1
)
txIndex
:=
atomic
.
LoadInt64
(
&
ethRelayer
.
totalTx4Eth2Chain33
)
if
err
=
ethRelayer
.
updateTotalTxAmount2chain33
(
txIndex
);
nil
!=
err
{
if
err
=
ethRelayer
.
updateTotalTxAmount2chain33
(
txIndex
);
nil
!=
err
{
relayerLog
.
Error
(
"handleChain33Msg"
,
"Failed to RelayLockToChain33 due to:"
,
err
.
Error
())
relayerLog
.
Error
(
"handleChain33Msg"
,
"Failed to RelayLockToChain33 due to:"
,
err
.
Error
())
return
return
...
@@ -533,12 +542,22 @@ func (ethRelayer *Relayer4Ethereum) handleChain33Msg(chain33Msg *events.Chain33M
...
@@ -533,12 +542,22 @@ func (ethRelayer *Relayer4Ethereum) handleChain33Msg(chain33Msg *events.Chain33M
Amount
:
chain33Msg
.
Amount
.
String
(),
Amount
:
chain33Msg
.
Amount
.
String
(),
Nonce
:
chain33Msg
.
Nonce
,
Nonce
:
chain33Msg
.
Nonce
,
TxIndex
:
txIndex
,
TxIndex
:
txIndex
,
OperationType
:
operationType
,
}
}
data
:=
chain33Types
.
Encode
(
statics
)
data
:=
chain33Types
.
Encode
(
statics
)
if
err
=
ethRelayer
.
setLastestStatics
(
int32
(
chain33Msg
.
ClaimType
),
txIndex
,
data
);
nil
!=
err
{
if
err
=
ethRelayer
.
setLastestStatics
(
int32
(
chain33Msg
.
ClaimType
),
txIndex
,
data
);
nil
!=
err
{
relayerLog
.
Error
(
"handleChain33Msg"
,
"Failed to RelayLockToChain33 due to:"
,
err
.
Error
())
relayerLog
.
Error
(
"handleChain33Msg"
,
"Failed to RelayLockToChain33 due to:"
,
err
.
Error
())
return
return
}
}
relayerLog
.
Info
(
"RelayOracleClaimToEthereum::successful"
,
"txIndex"
,
txIndex
,
"Chain33Txhash"
,
statics
.
Chain33Txhash
,
"EthereumTxhash"
,
statics
.
EthereumTxhash
,
"type"
,
operationType
,
"Symbol"
,
chain33Msg
.
Symbol
,
"Amount"
,
chain33Msg
.
Amount
,
"EthereumReceiver"
,
statics
.
EthereumReceiver
,
"Chain33Sender"
,
statics
.
Chain33Sender
)
}
}
func
(
ethRelayer
*
Relayer4Ethereum
)
procNewHeight
(
ctx
context
.
Context
,
continueFailCount
*
int32
)
{
func
(
ethRelayer
*
Relayer4Ethereum
)
procNewHeight
(
ctx
context
.
Context
,
continueFailCount
*
int32
)
{
...
@@ -889,10 +908,10 @@ func (ethRelayer *Relayer4Ethereum) handleLogBurnEvent(clientChainID *big.Int, c
...
@@ -889,10 +908,10 @@ func (ethRelayer *Relayer4Ethereum) handleLogBurnEvent(clientChainID *big.Int, c
return
nil
return
nil
}
}
func
(
ethRelayer
*
Relayer4Ethereum
)
ShowStatics
(
request
ebTypes
.
TokenStaticsRequest
)
(
*
ebTypes
.
TokenStaticsResponse
,
error
)
{
func
(
ethRelayer
*
Relayer4Ethereum
)
ShowStatics
(
request
*
ebTypes
.
TokenStaticsRequest
)
(
*
ebTypes
.
TokenStaticsResponse
,
error
)
{
res
:=
&
ebTypes
.
TokenStaticsResponse
{}
res
:=
&
ebTypes
.
TokenStaticsResponse
{}
datas
,
err
:=
ethRelayer
.
getStatics
(
request
.
Operation
,
request
.
TxIndex
)
datas
,
err
:=
ethRelayer
.
getStatics
(
request
.
Operation
,
request
.
TxIndex
,
request
.
Count
)
if
nil
!=
err
{
if
nil
!=
err
{
return
nil
,
err
return
nil
,
err
}
}
...
@@ -900,10 +919,11 @@ func (ethRelayer *Relayer4Ethereum) ShowStatics(request ebTypes.TokenStaticsRequ
...
@@ -900,10 +919,11 @@ func (ethRelayer *Relayer4Ethereum) ShowStatics(request ebTypes.TokenStaticsRequ
for
_
,
data
:=
range
datas
{
for
_
,
data
:=
range
datas
{
var
statics
ebTypes
.
Chain33ToEthereumStatics
var
statics
ebTypes
.
Chain33ToEthereumStatics
_
=
chain33Types
.
Decode
(
data
,
&
statics
)
_
=
chain33Types
.
Decode
(
data
,
&
statics
)
if
request
.
Status
!=
0
{
if
request
.
Status
!=
0
&&
ebTypes
.
Tx_Status_Map
[
request
.
Status
]
!=
statics
.
EthTxstatus
{
if
ebTypes
.
Tx_Status_Map
[
request
.
Status
]
!=
statics
.
EthTxstatus
{
continue
continue
}
}
if
len
(
request
.
Symbol
)
>
0
&&
request
.
Symbol
!=
statics
.
Symbol
{
continue
}
}
res
.
C2Estatics
=
append
(
res
.
C2Estatics
,
&
statics
)
res
.
C2Estatics
=
append
(
res
.
C2Estatics
,
&
statics
)
}
}
...
@@ -917,11 +937,9 @@ func (ethRelayer *Relayer4Ethereum) updateTxStatus() {
...
@@ -917,11 +937,9 @@ func (ethRelayer *Relayer4Ethereum) updateTxStatus() {
func
(
ethRelayer
*
Relayer4Ethereum
)
updateSingleTxStatus
(
claimType
events
.
ClaimType
)
{
func
(
ethRelayer
*
Relayer4Ethereum
)
updateSingleTxStatus
(
claimType
events
.
ClaimType
)
{
txIndex
:=
ethRelayer
.
getEthLockTxUpdateTxIndex
(
claimType
)
txIndex
:=
ethRelayer
.
getEthLockTxUpdateTxIndex
(
claimType
)
if
ebTypes
.
Invalid_Tx_Index
==
txIndex
{
datas
,
_
:=
ethRelayer
.
getStatics
(
int32
(
claimType
),
txIndex
,
0
)
return
}
datas
,
_
:=
ethRelayer
.
getStatics
(
int32
(
claimType
),
txIndex
)
if
nil
==
datas
{
if
nil
==
datas
{
relayerLog
.
Debug
(
"ethRelayer::updateSingleTxStatus"
,
"no new tx need to be update status for claimType"
,
claimType
,
"from tx index"
,
txIndex
)
return
return
}
}
for
_
,
data
:=
range
datas
{
for
_
,
data
:=
range
datas
{
...
...
plugin/dapp/cross2eth/ebrelayer/relayer/ethereum/ethereum_test.go
View file @
d2ef4bda
...
@@ -412,7 +412,7 @@ func newEthRelayer(para *ethtxs.DeployPara, sim *ethinterface.SimExtend, x2EthCo
...
@@ -412,7 +412,7 @@ func newEthRelayer(para *ethtxs.DeployPara, sim *ethinterface.SimExtend, x2EthCo
bridgeRegistryAddr
:
x2EthDeployInfo
.
BridgeRegistry
.
Address
,
bridgeRegistryAddr
:
x2EthDeployInfo
.
BridgeRegistry
.
Address
,
maturityDegree
:
cfg
.
EthMaturityDegree
,
maturityDegree
:
cfg
.
EthMaturityDegree
,
fetchHeightPeriodMs
:
cfg
.
EthBlockFetchPeriod
,
fetchHeightPeriodMs
:
cfg
.
EthBlockFetchPeriod
,
totalTx
4Eth2
Chain33
:
0
,
totalTx
RelayFrom
Chain33
:
0
,
symbol2Addr
:
make
(
map
[
string
]
common
.
Address
),
symbol2Addr
:
make
(
map
[
string
]
common
.
Address
),
symbol2LockAddr
:
make
(
map
[
string
]
common
.
Address
),
symbol2LockAddr
:
make
(
map
[
string
]
common
.
Address
),
...
@@ -447,6 +447,7 @@ func newEthRelayer(para *ethtxs.DeployPara, sim *ethinterface.SimExtend, x2EthCo
...
@@ -447,6 +447,7 @@ func newEthRelayer(para *ethtxs.DeployPara, sim *ethinterface.SimExtend, x2EthCo
relayer
.
x2EthDeployInfo
=
x2EthDeployInfo
relayer
.
x2EthDeployInfo
=
x2EthDeployInfo
relayer
.
rwLock
.
Unlock
()
relayer
.
rwLock
.
Unlock
()
relayer
.
totalTxRelayFromChain33
=
relayer
.
getTotalTxAmount2Eth
()
go
relayer
.
proc
()
go
relayer
.
proc
()
return
relayer
return
relayer
}
}
...
...
plugin/dapp/cross2eth/ebrelayer/relayer/ethereum/store.go
View file @
d2ef4bda
...
@@ -4,7 +4,6 @@ import (
...
@@ -4,7 +4,6 @@ import (
"encoding/json"
"encoding/json"
"errors"
"errors"
"fmt"
"fmt"
"sync/atomic"
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/common"
...
@@ -50,12 +49,12 @@ func calcRelayFromChain33ListPrefix(claimType int32) []byte {
...
@@ -50,12 +49,12 @@ func calcRelayFromChain33ListPrefix(claimType int32) []byte {
return
[]
byte
(
fmt
.
Sprintf
(
"%s-%d-"
,
chain33ToEthStaticsPrefix
,
claimType
))
return
[]
byte
(
fmt
.
Sprintf
(
"%s-%d-"
,
chain33ToEthStaticsPrefix
,
claimType
))
}
}
func
(
ethRelayer
*
Relayer4Ethereum
)
getStatics
(
claimType
int32
,
txIndex
int64
)
([][]
byte
,
error
)
{
func
(
ethRelayer
*
Relayer4Ethereum
)
getStatics
(
claimType
int32
,
txIndex
int64
,
count
int32
)
([][]
byte
,
error
)
{
keyPrefix
:=
calcRelayFromChain33ListPrefix
(
claimType
)
keyPrefix
:=
calcRelayFromChain33ListPrefix
(
claimType
)
keyFrom
:=
calcRelayFromChain33Key
(
claimType
,
txIndex
)
keyFrom
:=
calcRelayFromChain33Key
(
claimType
,
txIndex
)
helper
:=
dbm
.
NewListHelper
(
ethRelayer
.
db
)
helper
:=
dbm
.
NewListHelper
(
ethRelayer
.
db
)
datas
:=
helper
.
List
(
keyPrefix
,
keyFrom
,
20
,
dbm
.
ListASC
)
datas
:=
helper
.
List
(
keyPrefix
,
keyFrom
,
count
,
dbm
.
ListASC
)
if
nil
==
datas
{
if
nil
==
datas
{
return
nil
,
errors
.
New
(
"Not found"
)
return
nil
,
errors
.
New
(
"Not found"
)
}
}
...
@@ -106,14 +105,19 @@ func (ethRelayer *Relayer4Ethereum) getBridgeRegistryAddr() (string, error) {
...
@@ -106,14 +105,19 @@ func (ethRelayer *Relayer4Ethereum) getBridgeRegistryAddr() (string, error) {
return
string
(
addr
),
nil
return
string
(
addr
),
nil
}
}
func
(
ethRelayer
*
Relayer4Ethereum
)
updateTotalTxAmount2chain33
(
total
int64
)
error
{
func
(
ethRelayer
*
Relayer4Ethereum
)
updateTotalTxAmount2chain33
(
total
Index
int64
)
error
{
totalTx
:=
&
chain33Types
.
Int64
{
totalTx
:=
&
chain33Types
.
Int64
{
Data
:
atomic
.
LoadInt64
(
&
ethRelayer
.
totalTx4Eth2Chain33
)
,
Data
:
totalIndex
,
}
}
//更新成功见证的交易数
//更新成功见证的交易数
return
ethRelayer
.
db
.
Set
(
chain33ToEthTxTotalAmount
,
chain33Types
.
Encode
(
totalTx
))
return
ethRelayer
.
db
.
Set
(
chain33ToEthTxTotalAmount
,
chain33Types
.
Encode
(
totalTx
))
}
}
func
(
ethRelayer
*
Relayer4Ethereum
)
getTotalTxAmount2Eth
()
int64
{
totalTx
,
_
:=
utils
.
LoadInt64FromDB
(
chain33ToEthTxTotalAmount
,
ethRelayer
.
db
)
return
totalTx
}
func
(
ethRelayer
*
Relayer4Ethereum
)
setLastestStatics
(
claimType
int32
,
txIndex
int64
,
data
[]
byte
)
error
{
func
(
ethRelayer
*
Relayer4Ethereum
)
setLastestStatics
(
claimType
int32
,
txIndex
int64
,
data
[]
byte
)
error
{
key
:=
calcRelayFromChain33Key
(
claimType
,
txIndex
)
key
:=
calcRelayFromChain33Key
(
claimType
,
txIndex
)
return
ethRelayer
.
db
.
Set
(
key
,
data
)
return
ethRelayer
.
db
.
Set
(
key
,
data
)
...
...
plugin/dapp/cross2eth/ebrelayer/relayer/manager.go
View file @
d2ef4bda
...
@@ -848,7 +848,7 @@ func (manager *Manager) checkPermission() error {
...
@@ -848,7 +848,7 @@ func (manager *Manager) checkPermission() error {
}
}
// ShowTokenStatics ShowEthRelayer2Chain33Txs ...
// ShowTokenStatics ShowEthRelayer2Chain33Txs ...
func
(
manager
*
Manager
)
ShowTokenStatics
(
request
relayerTypes
.
TokenStaticsRequest
,
result
*
interface
{})
error
{
func
(
manager
*
Manager
)
ShowTokenStatics
(
request
*
relayerTypes
.
TokenStaticsRequest
,
result
*
interface
{})
error
{
manager
.
mtx
.
Lock
()
manager
.
mtx
.
Lock
()
defer
manager
.
mtx
.
Unlock
()
defer
manager
.
mtx
.
Unlock
()
if
err
:=
manager
.
checkPermission
();
nil
!=
err
{
if
err
:=
manager
.
checkPermission
();
nil
!=
err
{
...
...
plugin/dapp/cross2eth/ebrelayer/types/config.pb.go
View file @
d2ef4bda
// Code generated by protoc-gen-go. DO NOT EDIT.
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.23.0
// protoc v3.9.1
// source: config.proto
// source: config.proto
package
types
package
types
import
(
import
(
fmt
"fmt"
math
"math"
proto
"github.com/golang/protobuf/proto"
proto
"github.com/golang/protobuf/proto"
protoreflect
"google.golang.org/protobuf/reflect/protoreflect"
protoimpl
"google.golang.org/protobuf/runtime/protoimpl"
reflect
"reflect"
sync
"sync"
)
)
// Reference imports to suppress errors if they are not otherwise used.
const
(
var
_
=
proto
.
Marshal
// Verify that this generated code is sufficiently up-to-date.
var
_
=
fmt
.
Errorf
_
=
protoimpl
.
EnforceVersion
(
20
-
protoimpl
.
MinVersion
)
var
_
=
math
.
Inf
// Verify that runtime/protoimpl is sufficiently up-to-date.
_
=
protoimpl
.
EnforceVersion
(
protoimpl
.
MaxVersion
-
20
)
)
// This is a compile-time assertion to ensure that this generated file
// This is a compile-time assertion that a sufficiently up-to-date version
// is compatible with the proto package it is being compiled against.
// of the legacy proto package is being used.
// A compilation error at this line likely means your copy of the
const
_
=
proto
.
ProtoPackageIsVersion4
// proto package needs to be updated.
const
_
=
proto
.
ProtoPackageIsVersion3
// please upgrade the proto package
type
SyncTxConfig
struct
{
type
SyncTxConfig
struct
{
state
protoimpl
.
MessageState
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
Chain33Host
string
`protobuf:"bytes,1,opt,name=chain33host,proto3" json:"chain33host,omitempty"`
Chain33Host
string
`protobuf:"bytes,1,opt,name=chain33host,proto3" json:"chain33host,omitempty"`
PushHost
string
`protobuf:"bytes,2,opt,name=pushHost,proto3" json:"pushHost,omitempty"`
PushHost
string
`protobuf:"bytes,2,opt,name=pushHost,proto3" json:"pushHost,omitempty"`
PushName
string
`protobuf:"bytes,3,opt,name=pushName,proto3" json:"pushName,omitempty"`
PushName
string
`protobuf:"bytes,3,opt,name=pushName,proto3" json:"pushName,omitempty"`
PushBind
string
`protobuf:"bytes,4,opt,name=pushBind,proto3" json:"pushBind,omitempty"`
PushBind
string
`protobuf:"bytes,4,opt,name=pushBind,proto3" json:"pushBind,omitempty"`
MaturityDegree
int32
`protobuf:"varint,5,opt,name=maturityDegree,proto3" json:"maturityDegree,omitempty"`
MaturityDegree
int32
`protobuf:"varint,5,opt,name=maturityDegree,proto3" json:"maturityDegree,omitempty"`
Dbdriver
string
`protobuf:"bytes,6,opt,name=dbdriver,proto3" json:"dbdriver,omitempty"`
Dbdriver
string
`protobuf:"bytes,6,opt,name=dbdriver,proto3" json:"dbdriver,omitempty"`
//数据库类型
DbPath
string
`protobuf:"bytes,7,opt,name=dbPath,proto3" json:"dbPath,omitempty"`
DbPath
string
`protobuf:"bytes,7,opt,name=dbPath,proto3" json:"dbPath,omitempty"`
//数据库存储目录
DbCache
int32
`protobuf:"varint,8,opt,name=dbCache,proto3" json:"dbCache,omitempty"`
DbCache
int32
`protobuf:"varint,8,opt,name=dbCache,proto3" json:"dbCache,omitempty"`
//数据库缓存大小
FetchHeightPeriodMs
int64
`protobuf:"varint,9,opt,name=fetchHeightPeriodMs,proto3" json:"fetchHeightPeriodMs,omitempty"`
FetchHeightPeriodMs
int64
`protobuf:"varint,9,opt,name=fetchHeightPeriodMs,proto3" json:"fetchHeightPeriodMs,omitempty"`
StartSyncHeight
int64
`protobuf:"varint,10,opt,name=startSyncHeight,proto3" json:"startSyncHeight,omitempty"`
StartSyncHeight
int64
`protobuf:"varint,10,opt,name=startSyncHeight,proto3" json:"startSyncHeight,omitempty"`
StartSyncSequence
int64
`protobuf:"varint,11,opt,name=startSyncSequence,proto3" json:"startSyncSequence,omitempty"`
StartSyncSequence
int64
`protobuf:"varint,11,opt,name=startSyncSequence,proto3" json:"startSyncSequence,omitempty"`
StartSyncHash
string
`protobuf:"bytes,12,opt,name=startSyncHash,proto3" json:"startSyncHash,omitempty"`
StartSyncHash
string
`protobuf:"bytes,12,opt,name=startSyncHash,proto3" json:"startSyncHash,omitempty"`
Contracts
[]
string
`protobuf:"bytes,13,rep,name=contracts,proto3" json:"contracts,omitempty"`
Contracts
[]
string
`protobuf:"bytes,13,rep,name=contracts,proto3" json:"contracts,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
}
func
(
m
*
SyncTxConfig
)
Reset
()
{
*
m
=
SyncTxConfig
{}
}
func
(
x
*
SyncTxConfig
)
Reset
()
{
func
(
m
*
SyncTxConfig
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
*
x
=
SyncTxConfig
{}
func
(
*
SyncTxConfig
)
ProtoMessage
()
{}
if
protoimpl
.
UnsafeEnabled
{
func
(
*
SyncTxConfig
)
Descriptor
()
([]
byte
,
[]
int
)
{
mi
:=
&
file_config_proto_msgTypes
[
0
]
return
fileDescriptor_3eaf2c85e69e9ea4
,
[]
int
{
0
}
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
.
StoreMessageInfo
(
mi
)
}
}
}
func
(
m
*
SyncTxConfig
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
func
(
x
*
SyncTxConfig
)
String
()
string
{
return
xxx_messageInfo_SyncTxConfig
.
Unmarshal
(
m
,
b
)
return
protoimpl
.
X
.
MessageStringOf
(
x
)
}
}
func
(
m
*
SyncTxConfig
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
return
xxx_messageInfo_SyncTxConfig
.
Marshal
(
b
,
m
,
deterministic
)
func
(
*
SyncTxConfig
)
ProtoMessage
()
{}
}
func
(
m
*
SyncTxConfig
)
XXX_Merge
(
src
proto
.
Message
)
{
func
(
x
*
SyncTxConfig
)
ProtoReflect
()
protoreflect
.
Message
{
xxx_messageInfo_SyncTxConfig
.
Merge
(
m
,
src
)
mi
:=
&
file_config_proto_msgTypes
[
0
]
}
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
func
(
m
*
SyncTxConfig
)
XXX_Size
()
int
{
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
return
xxx_messageInfo_SyncTxConfig
.
Size
(
m
)
if
ms
.
LoadMessageInfo
()
==
nil
{
}
ms
.
StoreMessageInfo
(
mi
)
func
(
m
*
SyncTxConfig
)
XXX_DiscardUnknown
()
{
}
xxx_messageInfo_SyncTxConfig
.
DiscardUnknown
(
m
)
return
ms
}
return
mi
.
MessageOf
(
x
)
}
}
var
xxx_messageInfo_SyncTxConfig
proto
.
InternalMessageInfo
// Deprecated: Use SyncTxConfig.ProtoReflect.Descriptor instead.
func
(
*
SyncTxConfig
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
file_config_proto_rawDescGZIP
(),
[]
int
{
0
}
}
func
(
m
*
SyncTxConfig
)
GetChain33Host
()
string
{
func
(
x
*
SyncTxConfig
)
GetChain33Host
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
Chain33Host
return
x
.
Chain33Host
}
}
return
""
return
""
}
}
func
(
m
*
SyncTxConfig
)
GetPushHost
()
string
{
func
(
x
*
SyncTxConfig
)
GetPushHost
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
PushHost
return
x
.
PushHost
}
}
return
""
return
""
}
}
func
(
m
*
SyncTxConfig
)
GetPushName
()
string
{
func
(
x
*
SyncTxConfig
)
GetPushName
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
PushName
return
x
.
PushName
}
}
return
""
return
""
}
}
func
(
m
*
SyncTxConfig
)
GetPushBind
()
string
{
func
(
x
*
SyncTxConfig
)
GetPushBind
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
PushBind
return
x
.
PushBind
}
}
return
""
return
""
}
}
func
(
m
*
SyncTxConfig
)
GetMaturityDegree
()
int32
{
func
(
x
*
SyncTxConfig
)
GetMaturityDegree
()
int32
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
MaturityDegree
return
x
.
MaturityDegree
}
}
return
0
return
0
}
}
func
(
m
*
SyncTxConfig
)
GetDbdriver
()
string
{
func
(
x
*
SyncTxConfig
)
GetDbdriver
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
Dbdriver
return
x
.
Dbdriver
}
}
return
""
return
""
}
}
func
(
m
*
SyncTxConfig
)
GetDbPath
()
string
{
func
(
x
*
SyncTxConfig
)
GetDbPath
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
DbPath
return
x
.
DbPath
}
}
return
""
return
""
}
}
func
(
m
*
SyncTxConfig
)
GetDbCache
()
int32
{
func
(
x
*
SyncTxConfig
)
GetDbCache
()
int32
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
DbCache
return
x
.
DbCache
}
}
return
0
return
0
}
}
func
(
m
*
SyncTxConfig
)
GetFetchHeightPeriodMs
()
int64
{
func
(
x
*
SyncTxConfig
)
GetFetchHeightPeriodMs
()
int64
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
FetchHeightPeriodMs
return
x
.
FetchHeightPeriodMs
}
}
return
0
return
0
}
}
func
(
m
*
SyncTxConfig
)
GetStartSyncHeight
()
int64
{
func
(
x
*
SyncTxConfig
)
GetStartSyncHeight
()
int64
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
StartSyncHeight
return
x
.
StartSyncHeight
}
}
return
0
return
0
}
}
func
(
m
*
SyncTxConfig
)
GetStartSyncSequence
()
int64
{
func
(
x
*
SyncTxConfig
)
GetStartSyncSequence
()
int64
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
StartSyncSequence
return
x
.
StartSyncSequence
}
}
return
0
return
0
}
}
func
(
m
*
SyncTxConfig
)
GetStartSyncHash
()
string
{
func
(
x
*
SyncTxConfig
)
GetStartSyncHash
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
StartSyncHash
return
x
.
StartSyncHash
}
}
return
""
return
""
}
}
func
(
m
*
SyncTxConfig
)
GetContracts
()
[]
string
{
func
(
x
*
SyncTxConfig
)
GetContracts
()
[]
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
Contracts
return
x
.
Contracts
}
}
return
nil
return
nil
}
}
type
Log
struct
{
type
Log
struct
{
state
protoimpl
.
MessageState
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
Loglevel
string
`protobuf:"bytes,1,opt,name=loglevel,proto3" json:"loglevel,omitempty"`
Loglevel
string
`protobuf:"bytes,1,opt,name=loglevel,proto3" json:"loglevel,omitempty"`
LogConsoleLevel
string
`protobuf:"bytes,2,opt,name=logConsoleLevel,proto3" json:"logConsoleLevel,omitempty"`
LogConsoleLevel
string
`protobuf:"bytes,2,opt,name=logConsoleLevel,proto3" json:"logConsoleLevel,omitempty"`
LogFile
string
`protobuf:"bytes,3,opt,name=logFile,proto3" json:"logFile,omitempty"`
LogFile
string
`protobuf:"bytes,3,opt,name=logFile,proto3" json:"logFile,omitempty"`
...
@@ -167,111 +183,119 @@ type Log struct {
...
@@ -167,111 +183,119 @@ type Log struct {
Compress
bool
`protobuf:"varint,8,opt,name=compress,proto3" json:"compress,omitempty"`
Compress
bool
`protobuf:"varint,8,opt,name=compress,proto3" json:"compress,omitempty"`
CallerFile
bool
`protobuf:"varint,9,opt,name=callerFile,proto3" json:"callerFile,omitempty"`
CallerFile
bool
`protobuf:"varint,9,opt,name=callerFile,proto3" json:"callerFile,omitempty"`
CallerFunction
bool
`protobuf:"varint,10,opt,name=callerFunction,proto3" json:"callerFunction,omitempty"`
CallerFunction
bool
`protobuf:"varint,10,opt,name=callerFunction,proto3" json:"callerFunction,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
}
func
(
m
*
Log
)
Reset
()
{
*
m
=
Log
{}
}
func
(
x
*
Log
)
Reset
()
{
func
(
m
*
Log
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
*
x
=
Log
{}
func
(
*
Log
)
ProtoMessage
()
{}
if
protoimpl
.
UnsafeEnabled
{
func
(
*
Log
)
Descriptor
()
([]
byte
,
[]
int
)
{
mi
:=
&
file_config_proto_msgTypes
[
1
]
return
fileDescriptor_3eaf2c85e69e9ea4
,
[]
int
{
1
}
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
.
StoreMessageInfo
(
mi
)
}
}
}
func
(
m
*
Log
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
func
(
x
*
Log
)
String
()
string
{
return
xxx_messageInfo_Log
.
Unmarshal
(
m
,
b
)
return
protoimpl
.
X
.
MessageStringOf
(
x
)
}
func
(
m
*
Log
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
return
xxx_messageInfo_Log
.
Marshal
(
b
,
m
,
deterministic
)
}
func
(
m
*
Log
)
XXX_Merge
(
src
proto
.
Message
)
{
xxx_messageInfo_Log
.
Merge
(
m
,
src
)
}
func
(
m
*
Log
)
XXX_Size
()
int
{
return
xxx_messageInfo_Log
.
Size
(
m
)
}
}
func
(
m
*
Log
)
XXX_DiscardUnknown
()
{
xxx_messageInfo_Log
.
DiscardUnknown
(
m
)
func
(
*
Log
)
ProtoMessage
()
{}
func
(
x
*
Log
)
ProtoReflect
()
protoreflect
.
Message
{
mi
:=
&
file_config_proto_msgTypes
[
1
]
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
if
ms
.
LoadMessageInfo
()
==
nil
{
ms
.
StoreMessageInfo
(
mi
)
}
return
ms
}
return
mi
.
MessageOf
(
x
)
}
}
var
xxx_messageInfo_Log
proto
.
InternalMessageInfo
// Deprecated: Use Log.ProtoReflect.Descriptor instead.
func
(
*
Log
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
file_config_proto_rawDescGZIP
(),
[]
int
{
1
}
}
func
(
m
*
Log
)
GetLoglevel
()
string
{
func
(
x
*
Log
)
GetLoglevel
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
Loglevel
return
x
.
Loglevel
}
}
return
""
return
""
}
}
func
(
m
*
Log
)
GetLogConsoleLevel
()
string
{
func
(
x
*
Log
)
GetLogConsoleLevel
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
LogConsoleLevel
return
x
.
LogConsoleLevel
}
}
return
""
return
""
}
}
func
(
m
*
Log
)
GetLogFile
()
string
{
func
(
x
*
Log
)
GetLogFile
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
LogFile
return
x
.
LogFile
}
}
return
""
return
""
}
}
func
(
m
*
Log
)
GetMaxFileSize
()
uint32
{
func
(
x
*
Log
)
GetMaxFileSize
()
uint32
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
MaxFileSize
return
x
.
MaxFileSize
}
}
return
0
return
0
}
}
func
(
m
*
Log
)
GetMaxBackups
()
uint32
{
func
(
x
*
Log
)
GetMaxBackups
()
uint32
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
MaxBackups
return
x
.
MaxBackups
}
}
return
0
return
0
}
}
func
(
m
*
Log
)
GetMaxAge
()
uint32
{
func
(
x
*
Log
)
GetMaxAge
()
uint32
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
MaxAge
return
x
.
MaxAge
}
}
return
0
return
0
}
}
func
(
m
*
Log
)
GetLocalTime
()
bool
{
func
(
x
*
Log
)
GetLocalTime
()
bool
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
LocalTime
return
x
.
LocalTime
}
}
return
false
return
false
}
}
func
(
m
*
Log
)
GetCompress
()
bool
{
func
(
x
*
Log
)
GetCompress
()
bool
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
Compress
return
x
.
Compress
}
}
return
false
return
false
}
}
func
(
m
*
Log
)
GetCallerFile
()
bool
{
func
(
x
*
Log
)
GetCallerFile
()
bool
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
CallerFile
return
x
.
CallerFile
}
}
return
false
return
false
}
}
func
(
m
*
Log
)
GetCallerFunction
()
bool
{
func
(
x
*
Log
)
GetCallerFunction
()
bool
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
CallerFunction
return
x
.
CallerFunction
}
}
return
false
return
false
}
}
type
RelayerConfig
struct
{
type
RelayerConfig
struct
{
state
protoimpl
.
MessageState
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
Title
string
`protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
Title
string
`protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
SyncTxConfig
*
SyncTxConfig
`protobuf:"bytes,2,opt,name=syncTxConfig,proto3" json:"syncTxConfig,omitempty"`
SyncTxConfig
*
SyncTxConfig
`protobuf:"bytes,2,opt,name=syncTxConfig,proto3" json:"syncTxConfig,omitempty"`
Log
*
Log
`protobuf:"bytes,3,opt,name=log,proto3" json:"log,omitempty"`
Log
*
Log
`protobuf:"bytes,3,opt,name=log,proto3" json:"log,omitempty"`
JrpcBindAddr
string
`protobuf:"bytes,4,opt,name=jrpcBindAddr,proto3" json:"jrpcBindAddr,omitempty"`
JrpcBindAddr
string
`protobuf:"bytes,4,opt,name=jrpcBindAddr,proto3" json:"jrpcBindAddr,omitempty"`
// Jrpc服务地址
EthProvider
string
`protobuf:"bytes,5,opt,name=ethProvider,proto3" json:"ethProvider,omitempty"`
EthProvider
string
`protobuf:"bytes,5,opt,name=ethProvider,proto3" json:"ethProvider,omitempty"`
BridgeRegistry
string
`protobuf:"bytes,6,opt,name=bridgeRegistry,proto3" json:"bridgeRegistry,omitempty"`
BridgeRegistry
string
`protobuf:"bytes,6,opt,name=bridgeRegistry,proto3" json:"bridgeRegistry,omitempty"`
Deploy
*
Deploy
`protobuf:"bytes,7,opt,name=deploy,proto3" json:"deploy,omitempty"`
Deploy
*
Deploy
`protobuf:"bytes,7,opt,name=deploy,proto3" json:"deploy,omitempty"`
...
@@ -282,135 +306,143 @@ type RelayerConfig struct {
...
@@ -282,135 +306,143 @@ type RelayerConfig struct {
BridgeRegistryOnChain33
string
`protobuf:"bytes,12,opt,name=bridgeRegistryOnChain33,proto3" json:"bridgeRegistryOnChain33,omitempty"`
BridgeRegistryOnChain33
string
`protobuf:"bytes,12,opt,name=bridgeRegistryOnChain33,proto3" json:"bridgeRegistryOnChain33,omitempty"`
ChainName
string
`protobuf:"bytes,13,opt,name=chainName,proto3" json:"chainName,omitempty"`
ChainName
string
`protobuf:"bytes,13,opt,name=chainName,proto3" json:"chainName,omitempty"`
ChainID4Chain33
int32
`protobuf:"varint,14,opt,name=chainID4Chain33,proto3" json:"chainID4Chain33,omitempty"`
ChainID4Chain33
int32
`protobuf:"varint,14,opt,name=chainID4Chain33,proto3" json:"chainID4Chain33,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
}
func
(
m
*
RelayerConfig
)
Reset
()
{
*
m
=
RelayerConfig
{}
}
func
(
x
*
RelayerConfig
)
Reset
()
{
func
(
m
*
RelayerConfig
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
*
x
=
RelayerConfig
{}
func
(
*
RelayerConfig
)
ProtoMessage
()
{}
if
protoimpl
.
UnsafeEnabled
{
func
(
*
RelayerConfig
)
Descriptor
()
([]
byte
,
[]
int
)
{
mi
:=
&
file_config_proto_msgTypes
[
2
]
return
fileDescriptor_3eaf2c85e69e9ea4
,
[]
int
{
2
}
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
.
StoreMessageInfo
(
mi
)
}
}
}
func
(
m
*
RelayerConfig
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
func
(
x
*
RelayerConfig
)
String
()
string
{
return
xxx_messageInfo_RelayerConfig
.
Unmarshal
(
m
,
b
)
return
protoimpl
.
X
.
MessageStringOf
(
x
)
}
}
func
(
m
*
RelayerConfig
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
return
xxx_messageInfo_RelayerConfig
.
Marshal
(
b
,
m
,
deterministic
)
func
(
*
RelayerConfig
)
ProtoMessage
()
{}
}
func
(
m
*
RelayerConfig
)
XXX_Merge
(
src
proto
.
Message
)
{
func
(
x
*
RelayerConfig
)
ProtoReflect
()
protoreflect
.
Message
{
xxx_messageInfo_RelayerConfig
.
Merge
(
m
,
src
)
mi
:=
&
file_config_proto_msgTypes
[
2
]
}
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
func
(
m
*
RelayerConfig
)
XXX_Size
()
int
{
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
return
xxx_messageInfo_RelayerConfig
.
Size
(
m
)
if
ms
.
LoadMessageInfo
()
==
nil
{
}
ms
.
StoreMessageInfo
(
mi
)
func
(
m
*
RelayerConfig
)
XXX_DiscardUnknown
()
{
}
xxx_messageInfo_RelayerConfig
.
DiscardUnknown
(
m
)
return
ms
}
return
mi
.
MessageOf
(
x
)
}
}
var
xxx_messageInfo_RelayerConfig
proto
.
InternalMessageInfo
// Deprecated: Use RelayerConfig.ProtoReflect.Descriptor instead.
func
(
*
RelayerConfig
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
file_config_proto_rawDescGZIP
(),
[]
int
{
2
}
}
func
(
m
*
RelayerConfig
)
GetTitle
()
string
{
func
(
x
*
RelayerConfig
)
GetTitle
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
Title
return
x
.
Title
}
}
return
""
return
""
}
}
func
(
m
*
RelayerConfig
)
GetSyncTxConfig
()
*
SyncTxConfig
{
func
(
x
*
RelayerConfig
)
GetSyncTxConfig
()
*
SyncTxConfig
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
SyncTxConfig
return
x
.
SyncTxConfig
}
}
return
nil
return
nil
}
}
func
(
m
*
RelayerConfig
)
GetLog
()
*
Log
{
func
(
x
*
RelayerConfig
)
GetLog
()
*
Log
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
Log
return
x
.
Log
}
}
return
nil
return
nil
}
}
func
(
m
*
RelayerConfig
)
GetJrpcBindAddr
()
string
{
func
(
x
*
RelayerConfig
)
GetJrpcBindAddr
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
JrpcBindAddr
return
x
.
JrpcBindAddr
}
}
return
""
return
""
}
}
func
(
m
*
RelayerConfig
)
GetEthProvider
()
string
{
func
(
x
*
RelayerConfig
)
GetEthProvider
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
EthProvider
return
x
.
EthProvider
}
}
return
""
return
""
}
}
func
(
m
*
RelayerConfig
)
GetBridgeRegistry
()
string
{
func
(
x
*
RelayerConfig
)
GetBridgeRegistry
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
BridgeRegistry
return
x
.
BridgeRegistry
}
}
return
""
return
""
}
}
func
(
m
*
RelayerConfig
)
GetDeploy
()
*
Deploy
{
func
(
x
*
RelayerConfig
)
GetDeploy
()
*
Deploy
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
Deploy
return
x
.
Deploy
}
}
return
nil
return
nil
}
}
func
(
m
*
RelayerConfig
)
GetDeploy4Chain33
()
*
Deploy
{
func
(
x
*
RelayerConfig
)
GetDeploy4Chain33
()
*
Deploy
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
Deploy4Chain33
return
x
.
Deploy4Chain33
}
}
return
nil
return
nil
}
}
func
(
m
*
RelayerConfig
)
GetEthMaturityDegree
()
int32
{
func
(
x
*
RelayerConfig
)
GetEthMaturityDegree
()
int32
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
EthMaturityDegree
return
x
.
EthMaturityDegree
}
}
return
0
return
0
}
}
func
(
m
*
RelayerConfig
)
GetEthBlockFetchPeriod
()
int32
{
func
(
x
*
RelayerConfig
)
GetEthBlockFetchPeriod
()
int32
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
EthBlockFetchPeriod
return
x
.
EthBlockFetchPeriod
}
}
return
0
return
0
}
}
func
(
m
*
RelayerConfig
)
GetEthProviderCli
()
string
{
func
(
x
*
RelayerConfig
)
GetEthProviderCli
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
EthProviderCli
return
x
.
EthProviderCli
}
}
return
""
return
""
}
}
func
(
m
*
RelayerConfig
)
GetBridgeRegistryOnChain33
()
string
{
func
(
x
*
RelayerConfig
)
GetBridgeRegistryOnChain33
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
BridgeRegistryOnChain33
return
x
.
BridgeRegistryOnChain33
}
}
return
""
return
""
}
}
func
(
m
*
RelayerConfig
)
GetChainName
()
string
{
func
(
x
*
RelayerConfig
)
GetChainName
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
ChainName
return
x
.
ChainName
}
}
return
""
return
""
}
}
func
(
m
*
RelayerConfig
)
GetChainID4Chain33
()
int32
{
func
(
x
*
RelayerConfig
)
GetChainID4Chain33
()
int32
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
ChainID4Chain33
return
x
.
ChainID4Chain33
}
}
return
0
return
0
}
}
type
SyncTxReceiptConfig
struct
{
type
SyncTxReceiptConfig
struct
{
state
protoimpl
.
MessageState
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
Chain33Host
string
`protobuf:"bytes,1,opt,name=chain33host,proto3" json:"chain33host,omitempty"`
Chain33Host
string
`protobuf:"bytes,1,opt,name=chain33host,proto3" json:"chain33host,omitempty"`
PushHost
string
`protobuf:"bytes,2,opt,name=pushHost,proto3" json:"pushHost,omitempty"`
PushHost
string
`protobuf:"bytes,2,opt,name=pushHost,proto3" json:"pushHost,omitempty"`
PushName
string
`protobuf:"bytes,3,opt,name=pushName,proto3" json:"pushName,omitempty"`
PushName
string
`protobuf:"bytes,3,opt,name=pushName,proto3" json:"pushName,omitempty"`
...
@@ -419,93 +451,101 @@ type SyncTxReceiptConfig struct {
...
@@ -419,93 +451,101 @@ type SyncTxReceiptConfig struct {
StartSyncSequence
int64
`protobuf:"varint,6,opt,name=startSyncSequence,proto3" json:"startSyncSequence,omitempty"`
StartSyncSequence
int64
`protobuf:"varint,6,opt,name=startSyncSequence,proto3" json:"startSyncSequence,omitempty"`
StartSyncHash
string
`protobuf:"bytes,7,opt,name=startSyncHash,proto3" json:"startSyncHash,omitempty"`
StartSyncHash
string
`protobuf:"bytes,7,opt,name=startSyncHash,proto3" json:"startSyncHash,omitempty"`
Contracts
[]
string
`protobuf:"bytes,8,rep,name=contracts,proto3" json:"contracts,omitempty"`
Contracts
[]
string
`protobuf:"bytes,8,rep,name=contracts,proto3" json:"contracts,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
}
func
(
m
*
SyncTxReceiptConfig
)
Reset
()
{
*
m
=
SyncTxReceiptConfig
{}
}
func
(
x
*
SyncTxReceiptConfig
)
Reset
()
{
func
(
m
*
SyncTxReceiptConfig
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
*
x
=
SyncTxReceiptConfig
{}
func
(
*
SyncTxReceiptConfig
)
ProtoMessage
()
{}
if
protoimpl
.
UnsafeEnabled
{
func
(
*
SyncTxReceiptConfig
)
Descriptor
()
([]
byte
,
[]
int
)
{
mi
:=
&
file_config_proto_msgTypes
[
3
]
return
fileDescriptor_3eaf2c85e69e9ea4
,
[]
int
{
3
}
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
.
StoreMessageInfo
(
mi
)
}
}
}
func
(
m
*
SyncTxReceiptConfig
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
func
(
x
*
SyncTxReceiptConfig
)
String
()
string
{
return
xxx_messageInfo_SyncTxReceiptConfig
.
Unmarshal
(
m
,
b
)
return
protoimpl
.
X
.
MessageStringOf
(
x
)
}
func
(
m
*
SyncTxReceiptConfig
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
return
xxx_messageInfo_SyncTxReceiptConfig
.
Marshal
(
b
,
m
,
deterministic
)
}
func
(
m
*
SyncTxReceiptConfig
)
XXX_Merge
(
src
proto
.
Message
)
{
xxx_messageInfo_SyncTxReceiptConfig
.
Merge
(
m
,
src
)
}
func
(
m
*
SyncTxReceiptConfig
)
XXX_Size
()
int
{
return
xxx_messageInfo_SyncTxReceiptConfig
.
Size
(
m
)
}
}
func
(
m
*
SyncTxReceiptConfig
)
XXX_DiscardUnknown
()
{
xxx_messageInfo_SyncTxReceiptConfig
.
DiscardUnknown
(
m
)
func
(
*
SyncTxReceiptConfig
)
ProtoMessage
()
{}
func
(
x
*
SyncTxReceiptConfig
)
ProtoReflect
()
protoreflect
.
Message
{
mi
:=
&
file_config_proto_msgTypes
[
3
]
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
if
ms
.
LoadMessageInfo
()
==
nil
{
ms
.
StoreMessageInfo
(
mi
)
}
return
ms
}
return
mi
.
MessageOf
(
x
)
}
}
var
xxx_messageInfo_SyncTxReceiptConfig
proto
.
InternalMessageInfo
// Deprecated: Use SyncTxReceiptConfig.ProtoReflect.Descriptor instead.
func
(
*
SyncTxReceiptConfig
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
file_config_proto_rawDescGZIP
(),
[]
int
{
3
}
}
func
(
m
*
SyncTxReceiptConfig
)
GetChain33Host
()
string
{
func
(
x
*
SyncTxReceiptConfig
)
GetChain33Host
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
Chain33Host
return
x
.
Chain33Host
}
}
return
""
return
""
}
}
func
(
m
*
SyncTxReceiptConfig
)
GetPushHost
()
string
{
func
(
x
*
SyncTxReceiptConfig
)
GetPushHost
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
PushHost
return
x
.
PushHost
}
}
return
""
return
""
}
}
func
(
m
*
SyncTxReceiptConfig
)
GetPushName
()
string
{
func
(
x
*
SyncTxReceiptConfig
)
GetPushName
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
PushName
return
x
.
PushName
}
}
return
""
return
""
}
}
func
(
m
*
SyncTxReceiptConfig
)
GetPushBind
()
string
{
func
(
x
*
SyncTxReceiptConfig
)
GetPushBind
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
PushBind
return
x
.
PushBind
}
}
return
""
return
""
}
}
func
(
m
*
SyncTxReceiptConfig
)
GetStartSyncHeight
()
int64
{
func
(
x
*
SyncTxReceiptConfig
)
GetStartSyncHeight
()
int64
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
StartSyncHeight
return
x
.
StartSyncHeight
}
}
return
0
return
0
}
}
func
(
m
*
SyncTxReceiptConfig
)
GetStartSyncSequence
()
int64
{
func
(
x
*
SyncTxReceiptConfig
)
GetStartSyncSequence
()
int64
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
StartSyncSequence
return
x
.
StartSyncSequence
}
}
return
0
return
0
}
}
func
(
m
*
SyncTxReceiptConfig
)
GetStartSyncHash
()
string
{
func
(
x
*
SyncTxReceiptConfig
)
GetStartSyncHash
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
StartSyncHash
return
x
.
StartSyncHash
}
}
return
""
return
""
}
}
func
(
m
*
SyncTxReceiptConfig
)
GetContracts
()
[]
string
{
func
(
x
*
SyncTxReceiptConfig
)
GetContracts
()
[]
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
Contracts
return
x
.
Contracts
}
}
return
nil
return
nil
}
}
type
Deploy
struct
{
type
Deploy
struct
{
state
protoimpl
.
MessageState
sizeCache
protoimpl
.
SizeCache
unknownFields
protoimpl
.
UnknownFields
//操作管理员地址
//操作管理员地址
OperatorAddr
string
`protobuf:"bytes,1,opt,name=operatorAddr,proto3" json:"operatorAddr,omitempty"`
OperatorAddr
string
`protobuf:"bytes,1,opt,name=operatorAddr,proto3" json:"operatorAddr,omitempty"`
//合约部署人员私钥,用于部署合约时签名使用
//合约部署人员私钥,用于部署合约时签名使用
...
@@ -514,122 +554,306 @@ type Deploy struct {
...
@@ -514,122 +554,306 @@ type Deploy struct {
ValidatorsAddr
[]
string
`protobuf:"bytes,3,rep,name=validatorsAddr,proto3" json:"validatorsAddr,omitempty"`
ValidatorsAddr
[]
string
`protobuf:"bytes,3,rep,name=validatorsAddr,proto3" json:"validatorsAddr,omitempty"`
//验证人权重
//验证人权重
InitPowers
[]
int64
`protobuf:"varint,4,rep,packed,name=initPowers,proto3" json:"initPowers,omitempty"`
InitPowers
[]
int64
`protobuf:"varint,4,rep,packed,name=initPowers,proto3" json:"initPowers,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
}
func
(
m
*
Deploy
)
Reset
()
{
*
m
=
Deploy
{}
}
func
(
x
*
Deploy
)
Reset
()
{
func
(
m
*
Deploy
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
*
x
=
Deploy
{}
func
(
*
Deploy
)
ProtoMessage
()
{}
if
protoimpl
.
UnsafeEnabled
{
func
(
*
Deploy
)
Descriptor
()
([]
byte
,
[]
int
)
{
mi
:=
&
file_config_proto_msgTypes
[
4
]
return
fileDescriptor_3eaf2c85e69e9ea4
,
[]
int
{
4
}
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
ms
.
StoreMessageInfo
(
mi
)
}
}
}
func
(
m
*
Deploy
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
func
(
x
*
Deploy
)
String
()
string
{
return
xxx_messageInfo_Deploy
.
Unmarshal
(
m
,
b
)
return
protoimpl
.
X
.
MessageStringOf
(
x
)
}
func
(
m
*
Deploy
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
return
xxx_messageInfo_Deploy
.
Marshal
(
b
,
m
,
deterministic
)
}
}
func
(
m
*
Deploy
)
XXX_Merge
(
src
proto
.
Message
)
{
xxx_messageInfo_Deploy
.
Merge
(
m
,
src
)
func
(
*
Deploy
)
ProtoMessage
()
{}
}
func
(
m
*
Deploy
)
XXX_Size
()
int
{
func
(
x
*
Deploy
)
ProtoReflect
()
protoreflect
.
Message
{
return
xxx_messageInfo_Deploy
.
Size
(
m
)
mi
:=
&
file_config_proto_msgTypes
[
4
]
}
if
protoimpl
.
UnsafeEnabled
&&
x
!=
nil
{
func
(
m
*
Deploy
)
XXX_DiscardUnknown
()
{
ms
:=
protoimpl
.
X
.
MessageStateOf
(
protoimpl
.
Pointer
(
x
))
xxx_messageInfo_Deploy
.
DiscardUnknown
(
m
)
if
ms
.
LoadMessageInfo
()
==
nil
{
ms
.
StoreMessageInfo
(
mi
)
}
return
ms
}
return
mi
.
MessageOf
(
x
)
}
}
var
xxx_messageInfo_Deploy
proto
.
InternalMessageInfo
// Deprecated: Use Deploy.ProtoReflect.Descriptor instead.
func
(
*
Deploy
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
file_config_proto_rawDescGZIP
(),
[]
int
{
4
}
}
func
(
m
*
Deploy
)
GetOperatorAddr
()
string
{
func
(
x
*
Deploy
)
GetOperatorAddr
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
OperatorAddr
return
x
.
OperatorAddr
}
}
return
""
return
""
}
}
func
(
m
*
Deploy
)
GetDeployerPrivateKey
()
string
{
func
(
x
*
Deploy
)
GetDeployerPrivateKey
()
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
DeployerPrivateKey
return
x
.
DeployerPrivateKey
}
}
return
""
return
""
}
}
func
(
m
*
Deploy
)
GetValidatorsAddr
()
[]
string
{
func
(
x
*
Deploy
)
GetValidatorsAddr
()
[]
string
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
ValidatorsAddr
return
x
.
ValidatorsAddr
}
}
return
nil
return
nil
}
}
func
(
m
*
Deploy
)
GetInitPowers
()
[]
int64
{
func
(
x
*
Deploy
)
GetInitPowers
()
[]
int64
{
if
m
!=
nil
{
if
x
!=
nil
{
return
m
.
InitPowers
return
x
.
InitPowers
}
}
return
nil
return
nil
}
}
func
init
()
{
var
File_config_proto
protoreflect
.
FileDescriptor
proto
.
RegisterType
((
*
SyncTxConfig
)(
nil
),
"types.SyncTxConfig"
)
proto
.
RegisterType
((
*
Log
)(
nil
),
"types.Log"
)
var
file_config_proto_rawDesc
=
[]
byte
{
proto
.
RegisterType
((
*
RelayerConfig
)(
nil
),
"types.RelayerConfig"
)
0x0a
,
0x0c
,
0x63
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x2e
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x12
,
0x05
,
proto
.
RegisterType
((
*
SyncTxReceiptConfig
)(
nil
),
"types.SyncTxReceiptConfig"
)
0x74
,
0x79
,
0x70
,
0x65
,
0x73
,
0x22
,
0xc8
,
0x03
,
0x0a
,
0x0c
,
0x53
,
0x79
,
0x6e
,
0x63
,
0x54
,
0x78
,
proto
.
RegisterType
((
*
Deploy
)(
nil
),
"types.Deploy"
)
0x43
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x12
,
0x20
,
0x0a
,
0x0b
,
0x63
,
0x68
,
0x61
,
0x69
,
0x6e
,
0x33
,
}
0x33
,
0x68
,
0x6f
,
0x73
,
0x74
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0b
,
0x63
,
0x68
,
0x61
,
0x69
,
0x6e
,
0x33
,
0x33
,
0x68
,
0x6f
,
0x73
,
0x74
,
0x12
,
0x1a
,
0x0a
,
0x08
,
0x70
,
0x75
,
0x73
,
0x68
,
func
init
()
{
proto
.
RegisterFile
(
"config.proto"
,
fileDescriptor_3eaf2c85e69e9ea4
)
}
0x48
,
0x6f
,
0x73
,
0x74
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x08
,
0x70
,
0x75
,
0x73
,
0x68
,
0x48
,
0x6f
,
0x73
,
0x74
,
0x12
,
0x1a
,
0x0a
,
0x08
,
0x70
,
0x75
,
0x73
,
0x68
,
0x4e
,
0x61
,
0x6d
,
0x65
,
var
fileDescriptor_3eaf2c85e69e9ea4
=
[]
byte
{
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x08
,
0x70
,
0x75
,
0x73
,
0x68
,
0x4e
,
0x61
,
0x6d
,
0x65
,
// 766 bytes of a gzipped FileDescriptorProto
0x12
,
0x1a
,
0x0a
,
0x08
,
0x70
,
0x75
,
0x73
,
0x68
,
0x42
,
0x69
,
0x6e
,
0x64
,
0x18
,
0x04
,
0x20
,
0x01
,
0x1f
,
0x8b
,
0x08
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x02
,
0xff
,
0xc4
,
0x55
,
0xdd
,
0x6e
,
0xdb
,
0x36
,
0x28
,
0x09
,
0x52
,
0x08
,
0x70
,
0x75
,
0x73
,
0x68
,
0x42
,
0x69
,
0x6e
,
0x64
,
0x12
,
0x26
,
0x0a
,
0x0e
,
0x14
,
0x86
,
0xa3
,
0xd8
,
0xb1
,
0x68
,
0x2b
,
0xc3
,
0x98
,
0x61
,
0x13
,
0x86
,
0x60
,
0x30
,
0x8c
,
0x6d
,
0x6d
,
0x61
,
0x74
,
0x75
,
0x72
,
0x69
,
0x74
,
0x79
,
0x44
,
0x65
,
0x67
,
0x72
,
0x65
,
0x65
,
0x18
,
0x05
,
0xf0
,
0xc5
,
0x60
,
0x0c
,
0x49
,
0x86
,
0xed
,
0x36
,
0x71
,
0x10
,
0x64
,
0x68
,
0xd2
,
0x1a
,
0x4c
,
0x5e
,
0x20
,
0x01
,
0x28
,
0x05
,
0x52
,
0x0e
,
0x6d
,
0x61
,
0x74
,
0x75
,
0x72
,
0x69
,
0x74
,
0x79
,
0x44
,
0x65
,
0x80
,
0xa6
,
0x4e
,
0x24
,
0x36
,
0xb4
,
0xa8
,
0x52
,
0xb4
,
0x6b
,
0xf7
,
0x79
,
0x0a
,
0xf4
,
0x39
,
0x7a
,
0x67
,
0x72
,
0x65
,
0x65
,
0x12
,
0x1a
,
0x0a
,
0x08
,
0x64
,
0x62
,
0x64
,
0x72
,
0x69
,
0x76
,
0x65
,
0x72
,
0xd7
,
0xeb
,
0x3e
,
0x51
,
0xc1
,
0x23
,
0xd9
,
0x96
,
0x15
,
0x17
,
0x6d
,
0xaf
,
0x7a
,
0xa7
,
0xef
,
0xfb
,
0x18
,
0x06
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x08
,
0x64
,
0x62
,
0x64
,
0x72
,
0x69
,
0x76
,
0x65
,
0x72
,
0x0e
,
0x8e
,
0x79
,
0x7e
,
0xbe
,
0x63
,
0xd2
,
0x15
,
0x3a
,
0x7d
,
0x90
,
0xf1
,
0x30
,
0x33
,
0xda
,
0x6a
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x64
,
0x62
,
0x50
,
0x61
,
0x74
,
0x68
,
0x18
,
0x07
,
0x20
,
0x01
,
0x28
,
0x09
,
0xda
,
0xb4
,
0xcb
,
0x0c
,
0xf2
,
0xfe
,
0x07
,
0x8f
,
0x74
,
0xef
,
0x96
,
0xa9
,
0xb8
,
0x5f
,
0x8c
,
0x50
,
0x52
,
0x06
,
0x64
,
0x62
,
0x50
,
0x61
,
0x74
,
0x68
,
0x12
,
0x18
,
0x0a
,
0x07
,
0x64
,
0x62
,
0x43
,
0x61
,
0xa5
,
0x3d
,
0xd2
,
0x11
,
0x09
,
0x97
,
0xe9
,
0xe9
,
0x69
,
0xa2
,
0x73
,
0x1b
,
0x36
,
0x7a
,
0x8d
,
0x81
,
0x63
,
0x68
,
0x65
,
0x18
,
0x08
,
0x20
,
0x01
,
0x28
,
0x05
,
0x52
,
0x07
,
0x64
,
0x62
,
0x43
,
0x61
,
0x63
,
0xcf
,
0xaa
,
0x14
,
0xfd
,
0x95
,
0xb4
,
0xb3
,
0x59
,
0x9e
,
0x5c
,
0x3b
,
0x79
,
0x0f
,
0xe5
,
0x35
,
0x5e
,
0x68
,
0x65
,
0x12
,
0x30
,
0x0a
,
0x13
,
0x66
,
0x65
,
0x74
,
0x63
,
0x68
,
0x48
,
0x65
,
0x69
,
0x67
,
0x68
,
0x69
,
0xcf
,
0xf9
,
0x14
,
0x42
,
0x6f
,
0xa3
,
0x39
,
0xbc
,
0xd2
,
0x2e
,
0x64
,
0x1a
,
0x85
,
0xfb
,
0x1b
,
0x74
,
0x50
,
0x65
,
0x72
,
0x69
,
0x6f
,
0x64
,
0x4d
,
0x73
,
0x18
,
0x09
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0xcd
,
0x61
,
0xfa
,
0x27
,
0x39
,
0x9c
,
0x72
,
0x3b
,
0x33
,
0xd2
,
0x2e
,
0x2f
,
0x21
,
0x36
,
0x00
,
0x61
,
0x13
,
0x66
,
0x65
,
0x74
,
0x63
,
0x68
,
0x48
,
0x65
,
0x69
,
0x67
,
0x68
,
0x74
,
0x50
,
0x65
,
0x72
,
0x69
,
0xb3
,
0xd7
,
0x18
,
0x34
,
0x59
,
0x8d
,
0x75
,
0x39
,
0xa2
,
0x49
,
0x64
,
0xe4
,
0x1c
,
0x4c
,
0xd8
,
0x2a
,
0x6f
,
0x64
,
0x4d
,
0x73
,
0x12
,
0x28
,
0x0a
,
0x0f
,
0x73
,
0x74
,
0x61
,
0x72
,
0x74
,
0x53
,
0x79
,
0x6e
,
0x72
,
0xac
,
0x30
,
0xfd
,
0x99
,
0xb4
,
0xa2
,
0xc9
,
0x98
,
0xdb
,
0x24
,
0x3c
,
0x40
,
0xa5
,
0x44
,
0x34
,
0x63
,
0x48
,
0x65
,
0x69
,
0x67
,
0x68
,
0x74
,
0x18
,
0x0a
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x0f
,
0x73
,
0x24
,
0x07
,
0xd1
,
0x64
,
0xc4
,
0x45
,
0x02
,
0x61
,
0x1b
,
0x93
,
0xae
,
0x20
,
0xfd
,
0x9b
,
0x1c
,
0x3d
,
0x74
,
0x61
,
0x72
,
0x74
,
0x53
,
0x79
,
0x6e
,
0x63
,
0x48
,
0x65
,
0x69
,
0x67
,
0x68
,
0x74
,
0x12
,
0x2c
,
0x80
,
0x15
,
0xc9
,
0x35
,
0xc8
,
0x38
,
0xb1
,
0x63
,
0x30
,
0x52
,
0x47
,
0xb7
,
0x79
,
0xe8
,
0xf7
,
0x1a
,
0x0a
,
0x11
,
0x73
,
0x74
,
0x61
,
0x72
,
0x74
,
0x53
,
0x79
,
0x6e
,
0x63
,
0x53
,
0x65
,
0x71
,
0x75
,
0x65
,
0x03
,
0x8f
,
0xed
,
0x92
,
0xe8
,
0x80
,
0xfc
,
0x90
,
0x5b
,
0x6e
,
0xac
,
0x6b
,
0x59
,
0x21
,
0x85
,
0x04
,
0x6e
,
0x63
,
0x65
,
0x18
,
0x0b
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x11
,
0x73
,
0x74
,
0x61
,
0x72
,
0x74
,
0xa3
,
0xeb
,
0x34
,
0xfd
,
0x8b
,
0xfc
,
0xb8
,
0xa6
,
0xee
,
0xe0
,
0xd5
,
0x0c
,
0x52
,
0x01
,
0x61
,
0x07
,
0x53
,
0x79
,
0x6e
,
0x63
,
0x53
,
0x65
,
0x71
,
0x75
,
0x65
,
0x6e
,
0x63
,
0x65
,
0x12
,
0x24
,
0x0a
,
0x0d
,
0x63
,
0x9f
,
0x0a
,
0xf4
,
0x77
,
0x12
,
0x6c
,
0x12
,
0xf0
,
0x3c
,
0x09
,
0xbb
,
0x58
,
0xc2
,
0x36
,
0x49
,
0x73
,
0x74
,
0x61
,
0x72
,
0x74
,
0x53
,
0x79
,
0x6e
,
0x63
,
0x48
,
0x61
,
0x73
,
0x68
,
0x18
,
0x0c
,
0x20
,
0x8f
,
0x89
,
0x2f
,
0x74
,
0x6a
,
0x0d
,
0x17
,
0x36
,
0x0f
,
0x83
,
0x9e
,
0x37
,
0xf0
,
0xd9
,
0x86
,
0xe8
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0d
,
0x73
,
0x74
,
0x61
,
0x72
,
0x74
,
0x53
,
0x79
,
0x6e
,
0x63
,
0x48
,
0x61
,
0xbf
,
0xdf
,
0x23
,
0xde
,
0x8d
,
0x8e
,
0x5d
,
0x8f
,
0x94
,
0x8e
,
0x15
,
0xcc
,
0x41
,
0x95
,
0xe3
,
0x5b
,
0x73
,
0x68
,
0x12
,
0x1c
,
0x0a
,
0x09
,
0x63
,
0x6f
,
0x6e
,
0x74
,
0x72
,
0x61
,
0x63
,
0x74
,
0x73
,
0x18
,
0x63
,
0xf7
,
0x7e
,
0xa5
,
0xe3
,
0x91
,
0x4e
,
0x73
,
0xad
,
0xe0
,
0x06
,
0x43
,
0x8a
,
0x11
,
0xd6
,
0x69
,
0x0d
,
0x20
,
0x03
,
0x28
,
0x09
,
0x52
,
0x09
,
0x63
,
0x6f
,
0x6e
,
0x74
,
0x72
,
0x61
,
0x63
,
0x74
,
0x73
,
0xd7
,
0x35
,
0xa5
,
0xe3
,
0x2b
,
0xa9
,
0x56
,
0x83
,
0x5c
,
0x41
,
0xb7
,
0x21
,
0x53
,
0xbe
,
0x70
,
0x9f
,
0x22
,
0xc1
,
0x02
,
0x0a
,
0x03
,
0x4c
,
0x6f
,
0x67
,
0x12
,
0x1a
,
0x0a
,
0x08
,
0x6c
,
0x6f
,
0x67
,
0x6c
,
0x77
,
0xf2
,
0x0d
,
0xe0
,
0x28
,
0x03
,
0x56
,
0xa5
,
0xe8
,
0x6f
,
0x84
,
0x4c
,
0xf9
,
0xe2
,
0x82
,
0x8b
,
0x65
,
0x76
,
0x65
,
0x6c
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x08
,
0x6c
,
0x6f
,
0x67
,
0x6c
,
0xc7
,
0x59
,
0x96
,
0xe3
,
0x24
,
0x03
,
0x56
,
0x61
,
0xdc
,
0xa4
,
0xa6
,
0x7c
,
0x71
,
0x1e
,
0x03
,
0xce
,
0x65
,
0x76
,
0x65
,
0x6c
,
0x12
,
0x28
,
0x0a
,
0x0f
,
0x6c
,
0x6f
,
0x67
,
0x43
,
0x6f
,
0x6e
,
0x73
,
0x6f
,
0x30
,
0x60
,
0x25
,
0x72
,
0xf5
,
0x29
,
0x2d
,
0xb8
,
0xba
,
0x97
,
0x53
,
0xc0
,
0x21
,
0xb6
,
0xd9
,
0x86
,
0x6c
,
0x65
,
0x4c
,
0x65
,
0x76
,
0x65
,
0x6c
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0f
,
0x6c
,
0x70
,
0x75
,
0x09
,
0x3d
,
0xcd
,
0x0c
,
0xe4
,
0x39
,
0x0e
,
0xb2
,
0xcd
,
0xd6
,
0xd8
,
0xfd
,
0xa2
,
0xe0
,
0x6f
,
0x67
,
0x43
,
0x6f
,
0x6e
,
0x73
,
0x6f
,
0x6c
,
0x65
,
0x4c
,
0x65
,
0x76
,
0x65
,
0x6c
,
0x12
,
0x18
,
0x4a
,
0x81
,
0xc1
,
0x07
,
0xfb
,
0xa8
,
0x56
,
0x18
,
0xb7
,
0x5f
,
0x25
,
0x9a
,
0xa5
,
0xc2
,
0x4a
,
0x9d
,
0x0a
,
0x07
,
0x6c
,
0x6f
,
0x67
,
0x46
,
0x69
,
0x6c
,
0x65
,
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0xe2
,
0xd8
,
0xda
,
0xac
,
0xc6
,
0xf6
,
0x3f
,
0xee
,
0x93
,
0x80
,
0x81
,
0xe2
,
0x4b
,
0x30
,
0xa5
,
0x1f
,
0x07
,
0x6c
,
0x6f
,
0x67
,
0x46
,
0x69
,
0x6c
,
0x65
,
0x12
,
0x20
,
0x0a
,
0x0b
,
0x6d
,
0x61
,
0x78
,
0x46
,
0x7e
,
0x22
,
0x4d
,
0x2b
,
0xad
,
0x82
,
0xb2
,
0x95
,
0x05
,
0xa0
,
0xff
,
0x92
,
0x6e
,
0x5e
,
0x71
,
0x0d
,
0x69
,
0x6c
,
0x65
,
0x53
,
0x69
,
0x7a
,
0x65
,
0x18
,
0x04
,
0x20
,
0x01
,
0x28
,
0x0d
,
0x52
,
0x0b
,
0x6d
,
0x36
,
0xb1
,
0x73
,
0x72
,
0x34
,
0x44
,
0x53
,
0x0d
,
0xab
,
0x86
,
0x62
,
0x5b
,
0x81
,
0xf4
,
0x98
,
0x78
,
0x61
,
0x78
,
0x46
,
0x69
,
0x6c
,
0x65
,
0x53
,
0x69
,
0x7a
,
0x65
,
0x12
,
0x1e
,
0x0a
,
0x0a
,
0x6d
,
0x61
,
0x4a
,
0xc7
,
0xd8
,
0xd2
,
0xce
,
0x09
,
0x29
,
0xe3
,
0x6f
,
0x74
,
0xcc
,
0x1c
,
0x4d
,
0xfb
,
0xa4
,
0xfb
,
0x78
,
0x42
,
0x61
,
0x63
,
0x6b
,
0x75
,
0x70
,
0x73
,
0x18
,
0x05
,
0x20
,
0x01
,
0x28
,
0x0d
,
0x52
,
0x0a
,
0xd2
,
0x64
,
0xc2
,
0x59
,
0xe2
,
0x3c
,
0x8a
,
0x4c
,
0x69
,
0x93
,
0x2d
,
0xce
,
0xb5
,
0x1f
,
0x6c
,
0x32
,
0x6d
,
0x61
,
0x78
,
0x42
,
0x61
,
0x63
,
0x6b
,
0x75
,
0x70
,
0x73
,
0x12
,
0x16
,
0x0a
,
0x06
,
0x6d
,
0x61
,
0x36
,
0x7a
,
0x2e
,
0x23
,
0x30
,
0xd8
,
0x5d
,
0x9f
,
0x55
,
0x29
,
0x57
,
0xec
,
0xc4
,
0xc8
,
0x28
,
0x06
,
0x78
,
0x41
,
0x67
,
0x65
,
0x18
,
0x06
,
0x20
,
0x01
,
0x28
,
0x0d
,
0x52
,
0x06
,
0x6d
,
0x61
,
0x78
,
0x41
,
0x06
,
0xb1
,
0xcc
,
0xad
,
0x59
,
0x96
,
0x56
,
0xa9
,
0xb1
,
0xf4
,
0x0f
,
0xd2
,
0x8a
,
0x20
,
0x53
,
0x7a
,
0x67
,
0x65
,
0x12
,
0x1c
,
0x0a
,
0x09
,
0x6c
,
0x6f
,
0x63
,
0x61
,
0x6c
,
0x54
,
0x69
,
0x6d
,
0x65
,
0x18
,
0x89
,
0xbd
,
0xee
,
0x9c
,
0x04
,
0xe5
,
0x73
,
0x2e
,
0x91
,
0x64
,
0xa5
,
0x48
,
0xff
,
0x21
,
0x87
,
0xc5
,
0x07
,
0x20
,
0x01
,
0x28
,
0x08
,
0x52
,
0x09
,
0x6c
,
0x6f
,
0x63
,
0x61
,
0x6c
,
0x54
,
0x69
,
0x6d
,
0x65
,
0xd7
,
0x59
,
0x79
,
0x05
,
0xb0
,
0xfb
,
0x4f
,
0xc2
,
0x6b
,
0x41
,
0xce
,
0x00
,
0x60
,
0x93
,
0xdb
,
0x6d
,
0x12
,
0x1a
,
0x0a
,
0x08
,
0x63
,
0x6f
,
0x6d
,
0x70
,
0x72
,
0x65
,
0x73
,
0x73
,
0x18
,
0x08
,
0x20
,
0x01
,
0x57
,
0xfb
,
0x68
,
0xc0
,
0xa7
,
0x82
,
0xb3
,
0x22
,
0xd8
,
0xe4
,
0x42
,
0x69
,
0xf1
,
0x78
,
0xe5
,
0x7c
,
0x28
,
0x08
,
0x52
,
0x08
,
0x63
,
0x6f
,
0x6d
,
0x70
,
0x72
,
0x65
,
0x73
,
0x73
,
0x12
,
0x1e
,
0x0a
,
0x0a
,
0x57
,
0x38
,
0x0e
,
0xa7
,
0xd4
,
0x64
,
0xbb
,
0x24
,
0x57
,
0x65
,
0xa5
,
0xe8
,
0x91
,
0x92
,
0xe8
,
0x2e
,
0x63
,
0x61
,
0x6c
,
0x6c
,
0x65
,
0x72
,
0x46
,
0x69
,
0x6c
,
0x65
,
0x18
,
0x09
,
0x20
,
0x01
,
0x28
,
0x08
,
0x9f
,
0xd5
,
0x58
,
0xfa
,
0x1f
,
0xf9
,
0x65
,
0xbb
,
0xee
,
0x17
,
0xe9
,
0xa8
,
0xac
,
0xa3
,
0x30
,
0xd9
,
0x52
,
0x0a
,
0x63
,
0x61
,
0x6c
,
0x6c
,
0x65
,
0x72
,
0x46
,
0x69
,
0x6c
,
0x65
,
0x12
,
0x26
,
0x0a
,
0x0e
,
0xe7
,
0x64
,
0xb4
,
0x9b
,
0xfb
,
0xc4
,
0x6b
,
0x16
,
0x60
,
0xec
,
0x86
,
0x70
,
0x56
,
0x42
,
0xf0
,
0xff
,
0x63
,
0x61
,
0x6c
,
0x6c
,
0x65
,
0x72
,
0x46
,
0x75
,
0x6e
,
0x63
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x18
,
0x0a
,
0xe5
,
0xd9
,
0x2a
,
0xdf
,
0x21
,
0xbe
,
0xb6
,
0x4e
,
0xf7
,
0xdf
,
0xed
,
0x91
,
0xa3
,
0x62
,
0x25
,
0x18
,
0x20
,
0x01
,
0x28
,
0x08
,
0x52
,
0x0e
,
0x63
,
0x61
,
0x6c
,
0x6c
,
0x65
,
0x72
,
0x46
,
0x75
,
0x6e
,
0x63
,
0x08
,
0x90
,
0x99
,
0xfd
,
0xae
,
0xa7
,
0x76
,
0xc7
,
0x09
,
0x6b
,
0x7e
,
0xc3
,
0x09
,
0x6b
,
0x7d
,
0xf5
,
0x74
,
0x69
,
0x6f
,
0x6e
,
0x22
,
0xd2
,
0x04
,
0x0a
,
0x0d
,
0x52
,
0x65
,
0x6c
,
0x61
,
0x79
,
0x65
,
0x72
,
0x09
,
0x3b
,
0xf8
,
0xe2
,
0x09
,
0x6b
,
0xd7
,
0x4f
,
0xd8
,
0xdb
,
0x06
,
0x69
,
0x15
,
0xeb
,
0xe4
,
0xac
,
0x43
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x12
,
0x14
,
0x0a
,
0x05
,
0x74
,
0x69
,
0x74
,
0x6c
,
0x65
,
0x18
,
0xa0
,
0x33
,
0x30
,
0xdc
,
0x6a
,
0x83
,
0x56
,
0x28
,
0xba
,
0xb3
,
0xc5
,
0xd1
,
0x21
,
0xa1
,
0xc5
,
0xd2
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x05
,
0x74
,
0x69
,
0x74
,
0x6c
,
0x65
,
0x12
,
0x37
,
0x0a
,
0x0c
,
0x81
,
0x19
,
0x1b
,
0x39
,
0xe7
,
0x16
,
0x9e
,
0xc1
,
0xb2
,
0x6c
,
0xd4
,
0x0e
,
0xc5
,
0xad
,
0xcc
,
0x9c
,
0x73
,
0x79
,
0x6e
,
0x63
,
0x54
,
0x78
,
0x43
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x18
,
0x02
,
0x20
,
0x01
,
0x2b
,
0x19
,
0xb9
,
0x04
,
0x39
,
0x66
,
0xf5
,
0xf0
,
0x05
,
0x35
,
0xd6
,
0x5d
,
0x13
,
0x99
,
0x4a
,
0x3b
,
0x28
,
0x0b
,
0x32
,
0x13
,
0x2e
,
0x74
,
0x79
,
0x70
,
0x65
,
0x73
,
0x2e
,
0x53
,
0x79
,
0x6e
,
0x63
,
0x54
,
0xd6
,
0xaf
,
0xc1
,
0xe4
,
0xe1
,
0x7e
,
0xcf
,
0x1b
,
0x78
,
0xac
,
0xc2
,
0x4c
,
0x5a
,
0xf8
,
0x17
,
0x7a
,
0x78
,
0x43
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x52
,
0x0c
,
0x73
,
0x79
,
0x6e
,
0x63
,
0x54
,
0x78
,
0x43
,
0xfa
,
0x29
,
0x00
,
0x00
,
0xff
,
0xff
,
0xaf
,
0x6b
,
0x7a
,
0x9f
,
0x52
,
0x07
,
0x00
,
0x00
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x12
,
0x1c
,
0x0a
,
0x03
,
0x6c
,
0x6f
,
0x67
,
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x0a
,
0x2e
,
0x74
,
0x79
,
0x70
,
0x65
,
0x73
,
0x2e
,
0x4c
,
0x6f
,
0x67
,
0x52
,
0x03
,
0x6c
,
0x6f
,
0x67
,
0x12
,
0x22
,
0x0a
,
0x0c
,
0x6a
,
0x72
,
0x70
,
0x63
,
0x42
,
0x69
,
0x6e
,
0x64
,
0x41
,
0x64
,
0x64
,
0x72
,
0x18
,
0x04
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0c
,
0x6a
,
0x72
,
0x70
,
0x63
,
0x42
,
0x69
,
0x6e
,
0x64
,
0x41
,
0x64
,
0x64
,
0x72
,
0x12
,
0x20
,
0x0a
,
0x0b
,
0x65
,
0x74
,
0x68
,
0x50
,
0x72
,
0x6f
,
0x76
,
0x69
,
0x64
,
0x65
,
0x72
,
0x18
,
0x05
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0b
,
0x65
,
0x74
,
0x68
,
0x50
,
0x72
,
0x6f
,
0x76
,
0x69
,
0x64
,
0x65
,
0x72
,
0x12
,
0x26
,
0x0a
,
0x0e
,
0x62
,
0x72
,
0x69
,
0x64
,
0x67
,
0x65
,
0x52
,
0x65
,
0x67
,
0x69
,
0x73
,
0x74
,
0x72
,
0x79
,
0x18
,
0x06
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0e
,
0x62
,
0x72
,
0x69
,
0x64
,
0x67
,
0x65
,
0x52
,
0x65
,
0x67
,
0x69
,
0x73
,
0x74
,
0x72
,
0x79
,
0x12
,
0x25
,
0x0a
,
0x06
,
0x64
,
0x65
,
0x70
,
0x6c
,
0x6f
,
0x79
,
0x18
,
0x07
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x0d
,
0x2e
,
0x74
,
0x79
,
0x70
,
0x65
,
0x73
,
0x2e
,
0x44
,
0x65
,
0x70
,
0x6c
,
0x6f
,
0x79
,
0x52
,
0x06
,
0x64
,
0x65
,
0x70
,
0x6c
,
0x6f
,
0x79
,
0x12
,
0x35
,
0x0a
,
0x0e
,
0x64
,
0x65
,
0x70
,
0x6c
,
0x6f
,
0x79
,
0x34
,
0x63
,
0x68
,
0x61
,
0x69
,
0x6e
,
0x33
,
0x33
,
0x18
,
0x08
,
0x20
,
0x01
,
0x28
,
0x0b
,
0x32
,
0x0d
,
0x2e
,
0x74
,
0x79
,
0x70
,
0x65
,
0x73
,
0x2e
,
0x44
,
0x65
,
0x70
,
0x6c
,
0x6f
,
0x79
,
0x52
,
0x0e
,
0x64
,
0x65
,
0x70
,
0x6c
,
0x6f
,
0x79
,
0x34
,
0x63
,
0x68
,
0x61
,
0x69
,
0x6e
,
0x33
,
0x33
,
0x12
,
0x2c
,
0x0a
,
0x11
,
0x65
,
0x74
,
0x68
,
0x4d
,
0x61
,
0x74
,
0x75
,
0x72
,
0x69
,
0x74
,
0x79
,
0x44
,
0x65
,
0x67
,
0x72
,
0x65
,
0x65
,
0x18
,
0x09
,
0x20
,
0x01
,
0x28
,
0x05
,
0x52
,
0x11
,
0x65
,
0x74
,
0x68
,
0x4d
,
0x61
,
0x74
,
0x75
,
0x72
,
0x69
,
0x74
,
0x79
,
0x44
,
0x65
,
0x67
,
0x72
,
0x65
,
0x65
,
0x12
,
0x30
,
0x0a
,
0x13
,
0x65
,
0x74
,
0x68
,
0x42
,
0x6c
,
0x6f
,
0x63
,
0x6b
,
0x46
,
0x65
,
0x74
,
0x63
,
0x68
,
0x50
,
0x65
,
0x72
,
0x69
,
0x6f
,
0x64
,
0x18
,
0x0a
,
0x20
,
0x01
,
0x28
,
0x05
,
0x52
,
0x13
,
0x65
,
0x74
,
0x68
,
0x42
,
0x6c
,
0x6f
,
0x63
,
0x6b
,
0x46
,
0x65
,
0x74
,
0x63
,
0x68
,
0x50
,
0x65
,
0x72
,
0x69
,
0x6f
,
0x64
,
0x12
,
0x26
,
0x0a
,
0x0e
,
0x65
,
0x74
,
0x68
,
0x50
,
0x72
,
0x6f
,
0x76
,
0x69
,
0x64
,
0x65
,
0x72
,
0x43
,
0x6c
,
0x69
,
0x18
,
0x0b
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0e
,
0x65
,
0x74
,
0x68
,
0x50
,
0x72
,
0x6f
,
0x76
,
0x69
,
0x64
,
0x65
,
0x72
,
0x43
,
0x6c
,
0x69
,
0x12
,
0x38
,
0x0a
,
0x17
,
0x62
,
0x72
,
0x69
,
0x64
,
0x67
,
0x65
,
0x52
,
0x65
,
0x67
,
0x69
,
0x73
,
0x74
,
0x72
,
0x79
,
0x4f
,
0x6e
,
0x43
,
0x68
,
0x61
,
0x69
,
0x6e
,
0x33
,
0x33
,
0x18
,
0x0c
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x17
,
0x62
,
0x72
,
0x69
,
0x64
,
0x67
,
0x65
,
0x52
,
0x65
,
0x67
,
0x69
,
0x73
,
0x74
,
0x72
,
0x79
,
0x4f
,
0x6e
,
0x43
,
0x68
,
0x61
,
0x69
,
0x6e
,
0x33
,
0x33
,
0x12
,
0x1c
,
0x0a
,
0x09
,
0x63
,
0x68
,
0x61
,
0x69
,
0x6e
,
0x4e
,
0x61
,
0x6d
,
0x65
,
0x18
,
0x0d
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x09
,
0x63
,
0x68
,
0x61
,
0x69
,
0x6e
,
0x4e
,
0x61
,
0x6d
,
0x65
,
0x12
,
0x28
,
0x0a
,
0x0f
,
0x63
,
0x68
,
0x61
,
0x69
,
0x6e
,
0x49
,
0x44
,
0x34
,
0x43
,
0x68
,
0x61
,
0x69
,
0x6e
,
0x33
,
0x33
,
0x18
,
0x0e
,
0x20
,
0x01
,
0x28
,
0x05
,
0x52
,
0x0f
,
0x63
,
0x68
,
0x61
,
0x69
,
0x6e
,
0x49
,
0x44
,
0x34
,
0x43
,
0x68
,
0x61
,
0x69
,
0x6e
,
0x33
,
0x33
,
0x22
,
0xa7
,
0x02
,
0x0a
,
0x13
,
0x53
,
0x79
,
0x6e
,
0x63
,
0x54
,
0x78
,
0x52
,
0x65
,
0x63
,
0x65
,
0x69
,
0x70
,
0x74
,
0x43
,
0x6f
,
0x6e
,
0x66
,
0x69
,
0x67
,
0x12
,
0x20
,
0x0a
,
0x0b
,
0x63
,
0x68
,
0x61
,
0x69
,
0x6e
,
0x33
,
0x33
,
0x68
,
0x6f
,
0x73
,
0x74
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0b
,
0x63
,
0x68
,
0x61
,
0x69
,
0x6e
,
0x33
,
0x33
,
0x68
,
0x6f
,
0x73
,
0x74
,
0x12
,
0x1a
,
0x0a
,
0x08
,
0x70
,
0x75
,
0x73
,
0x68
,
0x48
,
0x6f
,
0x73
,
0x74
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x08
,
0x70
,
0x75
,
0x73
,
0x68
,
0x48
,
0x6f
,
0x73
,
0x74
,
0x12
,
0x1a
,
0x0a
,
0x08
,
0x70
,
0x75
,
0x73
,
0x68
,
0x4e
,
0x61
,
0x6d
,
0x65
,
0x18
,
0x03
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x08
,
0x70
,
0x75
,
0x73
,
0x68
,
0x4e
,
0x61
,
0x6d
,
0x65
,
0x12
,
0x1a
,
0x0a
,
0x08
,
0x70
,
0x75
,
0x73
,
0x68
,
0x42
,
0x69
,
0x6e
,
0x64
,
0x18
,
0x04
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x08
,
0x70
,
0x75
,
0x73
,
0x68
,
0x42
,
0x69
,
0x6e
,
0x64
,
0x12
,
0x28
,
0x0a
,
0x0f
,
0x73
,
0x74
,
0x61
,
0x72
,
0x74
,
0x53
,
0x79
,
0x6e
,
0x63
,
0x48
,
0x65
,
0x69
,
0x67
,
0x68
,
0x74
,
0x18
,
0x05
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x0f
,
0x73
,
0x74
,
0x61
,
0x72
,
0x74
,
0x53
,
0x79
,
0x6e
,
0x63
,
0x48
,
0x65
,
0x69
,
0x67
,
0x68
,
0x74
,
0x12
,
0x2c
,
0x0a
,
0x11
,
0x73
,
0x74
,
0x61
,
0x72
,
0x74
,
0x53
,
0x79
,
0x6e
,
0x63
,
0x53
,
0x65
,
0x71
,
0x75
,
0x65
,
0x6e
,
0x63
,
0x65
,
0x18
,
0x06
,
0x20
,
0x01
,
0x28
,
0x03
,
0x52
,
0x11
,
0x73
,
0x74
,
0x61
,
0x72
,
0x74
,
0x53
,
0x79
,
0x6e
,
0x63
,
0x53
,
0x65
,
0x71
,
0x75
,
0x65
,
0x6e
,
0x63
,
0x65
,
0x12
,
0x24
,
0x0a
,
0x0d
,
0x73
,
0x74
,
0x61
,
0x72
,
0x74
,
0x53
,
0x79
,
0x6e
,
0x63
,
0x48
,
0x61
,
0x73
,
0x68
,
0x18
,
0x07
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0d
,
0x73
,
0x74
,
0x61
,
0x72
,
0x74
,
0x53
,
0x79
,
0x6e
,
0x63
,
0x48
,
0x61
,
0x73
,
0x68
,
0x12
,
0x1c
,
0x0a
,
0x09
,
0x63
,
0x6f
,
0x6e
,
0x74
,
0x72
,
0x61
,
0x63
,
0x74
,
0x73
,
0x18
,
0x08
,
0x20
,
0x03
,
0x28
,
0x09
,
0x52
,
0x09
,
0x63
,
0x6f
,
0x6e
,
0x74
,
0x72
,
0x61
,
0x63
,
0x74
,
0x73
,
0x22
,
0xa4
,
0x01
,
0x0a
,
0x06
,
0x44
,
0x65
,
0x70
,
0x6c
,
0x6f
,
0x79
,
0x12
,
0x22
,
0x0a
,
0x0c
,
0x6f
,
0x70
,
0x65
,
0x72
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x41
,
0x64
,
0x64
,
0x72
,
0x18
,
0x01
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x0c
,
0x6f
,
0x70
,
0x65
,
0x72
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x41
,
0x64
,
0x64
,
0x72
,
0x12
,
0x2e
,
0x0a
,
0x12
,
0x64
,
0x65
,
0x70
,
0x6c
,
0x6f
,
0x79
,
0x65
,
0x72
,
0x50
,
0x72
,
0x69
,
0x76
,
0x61
,
0x74
,
0x65
,
0x4b
,
0x65
,
0x79
,
0x18
,
0x02
,
0x20
,
0x01
,
0x28
,
0x09
,
0x52
,
0x12
,
0x64
,
0x65
,
0x70
,
0x6c
,
0x6f
,
0x79
,
0x65
,
0x72
,
0x50
,
0x72
,
0x69
,
0x76
,
0x61
,
0x74
,
0x65
,
0x4b
,
0x65
,
0x79
,
0x12
,
0x26
,
0x0a
,
0x0e
,
0x76
,
0x61
,
0x6c
,
0x69
,
0x64
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x73
,
0x41
,
0x64
,
0x64
,
0x72
,
0x18
,
0x03
,
0x20
,
0x03
,
0x28
,
0x09
,
0x52
,
0x0e
,
0x76
,
0x61
,
0x6c
,
0x69
,
0x64
,
0x61
,
0x74
,
0x6f
,
0x72
,
0x73
,
0x41
,
0x64
,
0x64
,
0x72
,
0x12
,
0x1e
,
0x0a
,
0x0a
,
0x69
,
0x6e
,
0x69
,
0x74
,
0x50
,
0x6f
,
0x77
,
0x65
,
0x72
,
0x73
,
0x18
,
0x04
,
0x20
,
0x03
,
0x28
,
0x03
,
0x52
,
0x0a
,
0x69
,
0x6e
,
0x69
,
0x74
,
0x50
,
0x6f
,
0x77
,
0x65
,
0x72
,
0x73
,
0x42
,
0x0a
,
0x5a
,
0x08
,
0x2e
,
0x2e
,
0x2f
,
0x74
,
0x79
,
0x70
,
0x65
,
0x73
,
0x62
,
0x06
,
0x70
,
0x72
,
0x6f
,
0x74
,
0x6f
,
0x33
,
}
var
(
file_config_proto_rawDescOnce
sync
.
Once
file_config_proto_rawDescData
=
file_config_proto_rawDesc
)
func
file_config_proto_rawDescGZIP
()
[]
byte
{
file_config_proto_rawDescOnce
.
Do
(
func
()
{
file_config_proto_rawDescData
=
protoimpl
.
X
.
CompressGZIP
(
file_config_proto_rawDescData
)
})
return
file_config_proto_rawDescData
}
var
file_config_proto_msgTypes
=
make
([]
protoimpl
.
MessageInfo
,
5
)
var
file_config_proto_goTypes
=
[]
interface
{}{
(
*
SyncTxConfig
)(
nil
),
// 0: types.SyncTxConfig
(
*
Log
)(
nil
),
// 1: types.Log
(
*
RelayerConfig
)(
nil
),
// 2: types.RelayerConfig
(
*
SyncTxReceiptConfig
)(
nil
),
// 3: types.SyncTxReceiptConfig
(
*
Deploy
)(
nil
),
// 4: types.Deploy
}
var
file_config_proto_depIdxs
=
[]
int32
{
0
,
// 0: types.RelayerConfig.syncTxConfig:type_name -> types.SyncTxConfig
1
,
// 1: types.RelayerConfig.log:type_name -> types.Log
4
,
// 2: types.RelayerConfig.deploy:type_name -> types.Deploy
4
,
// 3: types.RelayerConfig.deploy4chain33:type_name -> types.Deploy
4
,
// [4:4] is the sub-list for method output_type
4
,
// [4:4] is the sub-list for method input_type
4
,
// [4:4] is the sub-list for extension type_name
4
,
// [4:4] is the sub-list for extension extendee
0
,
// [0:4] is the sub-list for field type_name
}
func
init
()
{
file_config_proto_init
()
}
func
file_config_proto_init
()
{
if
File_config_proto
!=
nil
{
return
}
if
!
protoimpl
.
UnsafeEnabled
{
file_config_proto_msgTypes
[
0
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
switch
v
:=
v
.
(
*
SyncTxConfig
);
i
{
case
0
:
return
&
v
.
state
case
1
:
return
&
v
.
sizeCache
case
2
:
return
&
v
.
unknownFields
default
:
return
nil
}
}
file_config_proto_msgTypes
[
1
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
switch
v
:=
v
.
(
*
Log
);
i
{
case
0
:
return
&
v
.
state
case
1
:
return
&
v
.
sizeCache
case
2
:
return
&
v
.
unknownFields
default
:
return
nil
}
}
file_config_proto_msgTypes
[
2
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
switch
v
:=
v
.
(
*
RelayerConfig
);
i
{
case
0
:
return
&
v
.
state
case
1
:
return
&
v
.
sizeCache
case
2
:
return
&
v
.
unknownFields
default
:
return
nil
}
}
file_config_proto_msgTypes
[
3
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
switch
v
:=
v
.
(
*
SyncTxReceiptConfig
);
i
{
case
0
:
return
&
v
.
state
case
1
:
return
&
v
.
sizeCache
case
2
:
return
&
v
.
unknownFields
default
:
return
nil
}
}
file_config_proto_msgTypes
[
4
]
.
Exporter
=
func
(
v
interface
{},
i
int
)
interface
{}
{
switch
v
:=
v
.
(
*
Deploy
);
i
{
case
0
:
return
&
v
.
state
case
1
:
return
&
v
.
sizeCache
case
2
:
return
&
v
.
unknownFields
default
:
return
nil
}
}
}
type
x
struct
{}
out
:=
protoimpl
.
TypeBuilder
{
File
:
protoimpl
.
DescBuilder
{
GoPackagePath
:
reflect
.
TypeOf
(
x
{})
.
PkgPath
(),
RawDescriptor
:
file_config_proto_rawDesc
,
NumEnums
:
0
,
NumMessages
:
5
,
NumExtensions
:
0
,
NumServices
:
0
,
},
GoTypes
:
file_config_proto_goTypes
,
DependencyIndexes
:
file_config_proto_depIdxs
,
MessageInfos
:
file_config_proto_msgTypes
,
}
.
Build
()
File_config_proto
=
out
.
File
file_config_proto_rawDesc
=
nil
file_config_proto_goTypes
=
nil
file_config_proto_depIdxs
=
nil
}
}
plugin/dapp/cross2eth/ebrelayer/types/info.go
View file @
d2ef4bda
...
@@ -16,7 +16,7 @@ const (
...
@@ -16,7 +16,7 @@ const (
Tx_Status_Failed
=
"Failed"
Tx_Status_Failed
=
"Failed"
Source_Chain_Ethereum
=
int32
(
0
)
Source_Chain_Ethereum
=
int32
(
0
)
Source_Chain_Chain33
=
int32
(
1
)
Source_Chain_Chain33
=
int32
(
1
)
Invalid_Tx_Index
=
int64
(
-
1
)
Invalid_Tx_Index
=
int64
(
0
)
Invalid_Chain33Tx_Status
=
int32
(
-
1
)
Invalid_Chain33Tx_Status
=
int32
(
-
1
)
)
)
...
...
plugin/dapp/cross2eth/ebrelayer/types/relayer.pb.go
View file @
d2ef4bda
This source diff could not be displayed because it is too large. You can
view the blob
instead.
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