MCPcopy
hub / github.com/mxpv/podsync / WalkFeeds

Method WalkFeeds

pkg/db/badger.go:147–161  ·  view source on GitHub ↗
(_ context.Context, cb func(feed *model.Feed) error)

Source from the content-addressed store, hash-verified

145}
146
147func (b *Badger) WalkFeeds(_ context.Context, cb func(feed *model.Feed) error) error {
148 return b.db.View(func(txn *badger.Txn) error {
149 opts := badger.DefaultIteratorOptions
150 opts.Prefix = b.getKey(feedPrefix)
151 opts.PrefetchValues = true
152 return b.iterator(txn, opts, func(item *badger.Item) error {
153 feed := &model.Feed{}
154 if err := b.unmarshalObj(item, feed); err != nil {
155 return err
156 }
157
158 return cb(feed)
159 })
160 })
161}
162
163func (b *Badger) DeleteFeed(_ context.Context, feedID string) error {
164 return b.db.Update(func(txn *badger.Txn) error {

Callers 2

TestBadger_WalkFeedsFunction · 0.95
TestBadger_DeleteFeedFunction · 0.95

Calls 3

getKeyMethod · 0.95
iteratorMethod · 0.95
unmarshalObjMethod · 0.95

Tested by 2

TestBadger_WalkFeedsFunction · 0.76
TestBadger_DeleteFeedFunction · 0.76