diff --git a/pkg/transformers/drip_file/ilk/config.go b/pkg/transformers/drip_file/ilk/config.go index 9e58fd6e..d4bafbf6 100644 --- a/pkg/transformers/drip_file/ilk/config.go +++ b/pkg/transformers/drip_file/ilk/config.go @@ -16,11 +16,11 @@ package ilk import "github.com/vulcanize/vulcanizedb/pkg/transformers/shared" -var DripFileIlkConfig = shared.TransformerConfig{ +var DripFileIlkConfig = shared.SingleTransformerConfig{ TransformerName: "drip file ilk", ContractAddresses: []string{shared.DripContractAddress}, ContractAbi: shared.DripABI, - Topics: []string{shared.DripFileIlkSignature}, + Topic: shared.DripFileIlkSignature, StartingBlockNumber: 0, EndingBlockNumber: 10000000, } diff --git a/pkg/transformers/drip_file/repo/config.go b/pkg/transformers/drip_file/repo/config.go index f5c52fe5..676a8341 100644 --- a/pkg/transformers/drip_file/repo/config.go +++ b/pkg/transformers/drip_file/repo/config.go @@ -16,11 +16,11 @@ package repo import "github.com/vulcanize/vulcanizedb/pkg/transformers/shared" -var DripFileRepoConfig = shared.TransformerConfig{ +var DripFileRepoConfig = shared.SingleTransformerConfig{ TransformerName: "drip file repo", ContractAddresses: []string{shared.DripContractAddress}, ContractAbi: shared.DripABI, - Topics: []string{shared.DripFileRepoSignature}, + Topic: shared.DripFileRepoSignature, StartingBlockNumber: 0, EndingBlockNumber: 10000000, } diff --git a/pkg/transformers/drip_file/vow/config.go b/pkg/transformers/drip_file/vow/config.go index 2d7f9004..aeda864f 100644 --- a/pkg/transformers/drip_file/vow/config.go +++ b/pkg/transformers/drip_file/vow/config.go @@ -16,11 +16,11 @@ package vow import "github.com/vulcanize/vulcanizedb/pkg/transformers/shared" -var DripFileVowConfig = shared.TransformerConfig{ +var DripFileVowConfig = shared.SingleTransformerConfig{ TransformerName: "drip file vow", ContractAddresses: []string{shared.DripContractAddress}, ContractAbi: shared.DripABI, - Topics: []string{shared.DripFileVowSignature}, + Topic: shared.DripFileVowSignature, StartingBlockNumber: 0, EndingBlockNumber: 10000000, } diff --git a/pkg/transformers/factories/transformer.go b/pkg/transformers/factories/transformer.go index 3be68c56..a9304166 100644 --- a/pkg/transformers/factories/transformer.go +++ b/pkg/transformers/factories/transformer.go @@ -26,7 +26,7 @@ import ( ) type Transformer struct { - Config shared.TransformerConfig + Config shared.SingleTransformerConfig Converter Converter Repository Repository Fetcher shared.SettableLogFetcher @@ -57,16 +57,14 @@ func (transformer Transformer) Execute() error { return err } + // Grab event signature from transformer config + // (Double-array structure required for go-ethereum FilterQuery) + var topic = [][]common.Hash{{common.HexToHash(transformer.Config.Topic)}} + log.Printf("Fetching %v event logs for %d headers \n", transformerName, len(missingHeaders)) for _, header := range missingHeaders { - // Grab topics from config - var topics [][]common.Hash - for _, topic := range transformer.Config.Topics { - topics = append(topics, []common.Hash{common.HexToHash(topic)}) - } - // Fetch the missing logs for a given header - matchingLogs, err := transformer.Fetcher.FetchLogs(transformer.Config.ContractAddresses, topics, header.BlockNumber) + matchingLogs, err := transformer.Fetcher.FetchLogs(transformer.Config.ContractAddresses, topic, header.BlockNumber) if err != nil { log.Printf("Error fetching matching logs in %v transformer: %v", transformerName, err) return err diff --git a/pkg/transformers/pit_file/debt_ceiling/config.go b/pkg/transformers/pit_file/debt_ceiling/config.go index 23ee22b4..93c483f3 100644 --- a/pkg/transformers/pit_file/debt_ceiling/config.go +++ b/pkg/transformers/pit_file/debt_ceiling/config.go @@ -18,11 +18,11 @@ import ( "github.com/vulcanize/vulcanizedb/pkg/transformers/shared" ) -var DebtCeilingFileConfig = shared.TransformerConfig{ +var DebtCeilingFileConfig = shared.SingleTransformerConfig{ TransformerName: "pit file debt ceiling", ContractAddresses: []string{shared.PitContractAddress}, ContractAbi: shared.PitABI, - Topics: []string{shared.PitFileDebtCeilingSignature}, + Topic: shared.PitFileDebtCeilingSignature, StartingBlockNumber: 0, EndingBlockNumber: 10000000, } diff --git a/pkg/transformers/pit_file/ilk/config.go b/pkg/transformers/pit_file/ilk/config.go index 19d65719..c2def4e2 100644 --- a/pkg/transformers/pit_file/ilk/config.go +++ b/pkg/transformers/pit_file/ilk/config.go @@ -18,11 +18,11 @@ import ( "github.com/vulcanize/vulcanizedb/pkg/transformers/shared" ) -var IlkFileConfig = shared.TransformerConfig{ +var IlkFileConfig = shared.SingleTransformerConfig{ TransformerName: "pit file ilk", ContractAddresses: []string{shared.PitContractAddress}, ContractAbi: shared.PitABI, - Topics: []string{shared.PitFileIlkSignature}, + Topic: shared.PitFileIlkSignature, StartingBlockNumber: 0, EndingBlockNumber: 10000000, } diff --git a/pkg/transformers/pit_file/stability_fee/config.go b/pkg/transformers/pit_file/stability_fee/config.go index 1ca34940..d1894d63 100644 --- a/pkg/transformers/pit_file/stability_fee/config.go +++ b/pkg/transformers/pit_file/stability_fee/config.go @@ -18,11 +18,11 @@ import ( "github.com/vulcanize/vulcanizedb/pkg/transformers/shared" ) -var StabilityFeeFileConfig = shared.TransformerConfig{ +var StabilityFeeFileConfig = shared.SingleTransformerConfig{ TransformerName: "pit file stability fee", ContractAddresses: []string{shared.PitContractAddress}, ContractAbi: shared.PitABI, - Topics: []string{shared.PitFileStabilityFeeSignature}, + Topic: shared.PitFileStabilityFeeSignature, StartingBlockNumber: 0, EndingBlockNumber: 10000000, } diff --git a/pkg/transformers/shared/transformer.go b/pkg/transformers/shared/transformer.go index 6b7909e5..a647e9a7 100644 --- a/pkg/transformers/shared/transformer.go +++ b/pkg/transformers/shared/transformer.go @@ -36,6 +36,15 @@ type TransformerConfig struct { EndingBlockNumber int64 } +type SingleTransformerConfig struct { + TransformerName string + ContractAddresses []string + ContractAbi string + Topic string + StartingBlockNumber int64 + EndingBlockNumber int64 +} + func HexToInt64(byteString string) int64 { value := common.HexToHash(byteString) return value.Big().Int64() diff --git a/pkg/transformers/tend/config.go b/pkg/transformers/tend/config.go index 03a15e70..1bd07c86 100644 --- a/pkg/transformers/tend/config.go +++ b/pkg/transformers/tend/config.go @@ -16,11 +16,11 @@ package tend import "github.com/vulcanize/vulcanizedb/pkg/transformers/shared" -var TendConfig = shared.TransformerConfig{ +var TendConfig = shared.SingleTransformerConfig{ TransformerName: "tend", ContractAddresses: []string{shared.FlipperContractAddress}, ContractAbi: shared.FlipperABI, - Topics: []string{shared.TendFunctionSignature}, + Topic: shared.TendFunctionSignature, StartingBlockNumber: 0, EndingBlockNumber: 10000000, } diff --git a/pkg/transformers/vat_init/config.go b/pkg/transformers/vat_init/config.go index 2f9abf25..ed5d34d5 100644 --- a/pkg/transformers/vat_init/config.go +++ b/pkg/transformers/vat_init/config.go @@ -18,11 +18,11 @@ import ( "github.com/vulcanize/vulcanizedb/pkg/transformers/shared" ) -var VatInitConfig = shared.TransformerConfig{ +var VatInitConfig = shared.SingleTransformerConfig{ TransformerName: "vat init", ContractAddresses: []string{shared.VatContractAddress}, ContractAbi: shared.VatABI, - Topics: []string{shared.VatInitSignature}, + Topic: shared.VatInitSignature, StartingBlockNumber: 0, EndingBlockNumber: 10000000, } diff --git a/pkg/transformers/vat_move/config.go b/pkg/transformers/vat_move/config.go index a98bc52a..f9da1184 100644 --- a/pkg/transformers/vat_move/config.go +++ b/pkg/transformers/vat_move/config.go @@ -18,11 +18,11 @@ import ( "github.com/vulcanize/vulcanizedb/pkg/transformers/shared" ) -var VatMoveConfig = shared.TransformerConfig{ +var VatMoveConfig = shared.SingleTransformerConfig{ TransformerName: "vat move", ContractAddresses: []string{shared.VatContractAddress}, ContractAbi: shared.VatABI, - Topics: []string{shared.VatMoveSignature}, + Topic: shared.VatMoveSignature, StartingBlockNumber: 0, EndingBlockNumber: 10000000, }