WIP: First steps in refactoring to aggregate fetching

This commit is contained in:
Edvard
2018-11-28 17:00:04 +01:00
parent 423fdf01b5
commit 45a087f5d1
5 changed files with 24 additions and 78 deletions
+10 -2
View File
@@ -1,6 +1,7 @@
package shared
import (
"github.com/ethereum/go-ethereum/core/types"
"github.com/vulcanize/vulcanizedb/pkg/core"
"github.com/vulcanize/vulcanizedb/pkg/datastore/postgres"
"github.com/vulcanize/vulcanizedb/pkg/transformers/shared"
@@ -14,15 +15,22 @@ type Watcher struct {
func (watcher *Watcher) AddTransformers(us []shared.TransformerInitializer) {
for _, transformerInitializer := range us {
transformer := transformerInitializer(&watcher.DB, watcher.Blockchain)
transformer := transformerInitializer(&watcher.DB)
watcher.Transformers = append(watcher.Transformers, transformer)
}
}
func (watcher *Watcher) Execute() error {
// TODO Solve checkedHeadersColumn issue
// TODO Handle start and end numbers in transformers?
var missingHeaders []core.Header
// TODO Get contract addresses and topic0s
var logs []types.Log
var err error
for _, transformer := range watcher.Transformers {
err = transformer.Execute()
err = transformer.Execute(logs, missingHeaders)
}
return err
}