process-transfer.go 678 B

1234567891011121314151617181920212223242526272829
  1. package p
  2. import (
  3. "context"
  4. "encoding/json"
  5. "fmt"
  6. "log"
  7. "github.com/certusone/wormhole/node/pkg/vaa"
  8. )
  9. // ProcessTransfer is triggered by a PubSub message, once a TokenTransferPayload is written to a row.
  10. func ProcessTransfer(ctx context.Context, m PubSubMessage) error {
  11. data := string(m.Data)
  12. if data == "" {
  13. return fmt.Errorf("no data to process in message")
  14. }
  15. log.Printf("ProcessTransfer got message!")
  16. signedVaa, err := vaa.Unmarshal(m.Data)
  17. if err != nil {
  18. log.Println("failed Unmarshaling VAA")
  19. return err
  20. }
  21. jsonVaa, _ := json.MarshalIndent(signedVaa, "", " ")
  22. log.Printf("ProcessTransfer Unmarshaled VAA: %q\n", string(jsonVaa))
  23. return nil
  24. }