ipld-eth-server/pkg/repositories/postgres/watched_events.go

32 lines
737 B
Go
Raw Normal View History

package postgres
2018-02-02 19:58:59 +00:00
import (
"github.com/vulcanize/vulcanizedb/pkg/core"
)
2018-02-02 19:58:59 +00:00
type WatchedEventRepository struct {
*DB
}
func (watchedEventRepository WatchedEventRepository) GetWatchedEvents(name string) ([]*core.WatchedEvent, error) {
rows, err := watchedEventRepository.DB.Queryx(`SELECT name, block_number, address, tx_hash, index, topic0, topic1, topic2, topic3, data FROM watched_event_logs where name=$1`, name)
2018-02-02 19:58:59 +00:00
if err != nil {
return nil, err
}
defer rows.Close()
lgs := make([]*core.WatchedEvent, 0)
2018-02-02 19:58:59 +00:00
for rows.Next() {
lg := new(core.WatchedEvent)
2018-02-02 19:58:59 +00:00
err := rows.StructScan(lg)
if err != nil {
return nil, err
}
lgs = append(lgs, lg)
}
if err = rows.Err(); err != nil {
return nil, err
}
return lgs, nil
}