cloud functions: use rowkey data in Summary
Change-Id: I756ab54539b14676256e252f668874455a279e74
This commit is contained in:
parent
64078945c4
commit
afe4fad438
|
@ -11,5 +11,5 @@ require (
|
|||
|
||||
require (
|
||||
github.com/GoogleCloudPlatform/functions-framework-go v1.3.0
|
||||
github.com/certusone/wormhole/node v0.0.0-20211027001206-19628733285e
|
||||
github.com/certusone/wormhole/node v0.0.0-20211102011245-d412cb8a936a
|
||||
)
|
||||
|
|
|
@ -170,6 +170,8 @@ github.com/cenkalti/backoff/v4 v4.1.1/go.mod h1:scbssz8iZGpm3xbr14ovlUdkxfGXNInq
|
|||
github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
|
||||
github.com/certusone/wormhole/node v0.0.0-20211027001206-19628733285e h1:BQJb2Taq7MMbh+o4AVOiNmFxgNtfMbx8nGJGA3tjiek=
|
||||
github.com/certusone/wormhole/node v0.0.0-20211027001206-19628733285e/go.mod h1:YncgdSOYam7ELyXFo7PFCj6tUo0pe6cjlj+O3Vt28mo=
|
||||
github.com/certusone/wormhole/node v0.0.0-20211102011245-d412cb8a936a h1:XR4jqFpH5MhKlYjWPHnd+agQaxKs7kynj5vKc09A18Y=
|
||||
github.com/certusone/wormhole/node v0.0.0-20211102011245-d412cb8a936a/go.mod h1:YncgdSOYam7ELyXFo7PFCj6tUo0pe6cjlj+O3Vt28mo=
|
||||
github.com/cespare/cp v0.1.0/go.mod h1:SOGHArjBr4JWaSDEVpWpo/hNg6RoKrls6Oh40hiwW+s=
|
||||
github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc=
|
||||
github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
|
||||
|
|
|
@ -5,6 +5,7 @@ import (
|
|||
"log"
|
||||
"net/http"
|
||||
"os"
|
||||
"strings"
|
||||
"sync"
|
||||
|
||||
"cloud.google.com/go/bigtable"
|
||||
|
@ -64,6 +65,22 @@ type (
|
|||
}
|
||||
)
|
||||
|
||||
func chainIdStringToType(chainId string) vaa.ChainID {
|
||||
switch chainId {
|
||||
case "1":
|
||||
return vaa.ChainIDSolana
|
||||
case "2":
|
||||
return vaa.ChainIDEthereum
|
||||
case "3":
|
||||
return vaa.ChainIDTerra
|
||||
case "4":
|
||||
return vaa.ChainIDBSC
|
||||
case "5":
|
||||
return vaa.ChainIDPolygon
|
||||
}
|
||||
return vaa.ChainIDUnset
|
||||
}
|
||||
|
||||
func makeSummary(row bigtable.Row) *Summary {
|
||||
summary := &Summary{}
|
||||
if _, ok := row[columnFamilies[0]]; ok {
|
||||
|
@ -82,6 +99,18 @@ func makeSummary(row bigtable.Row) *Summary {
|
|||
summary.Sequence = string(item.Value)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// Some rows have a QuorumState, but no MessagePublication,
|
||||
// so populate Summary values from the rowKey.
|
||||
keyParts := strings.Split(row.Key(), ":")
|
||||
chainId := chainIdStringToType(keyParts[0])
|
||||
summary.EmitterChain = chainId.String()
|
||||
summary.EmitterAddress = keyParts[1]
|
||||
seq := strings.TrimLeft(keyParts[2], "0")
|
||||
if seq == "" {
|
||||
seq = "0"
|
||||
}
|
||||
summary.Sequence = seq
|
||||
}
|
||||
if _, ok := row[columnFamilies[3]]; ok {
|
||||
item := row[columnFamilies[3]][0]
|
||||
|
|
Loading…
Reference in New Issue