mirror of
https://github.com/idanoo/autobrr
synced 2025-07-23 16:59:12 +00:00
fix(feeds): torznab update and delete (#346)
* fix(feeds): torznab update and delete * fix(feeds): repo cache exists check err
This commit is contained in:
parent
72d4942104
commit
c1df9c817f
6 changed files with 90 additions and 34 deletions
|
@ -1,6 +1,7 @@
|
|||
package database
|
||||
|
||||
import (
|
||||
"context"
|
||||
"database/sql"
|
||||
"time"
|
||||
|
||||
|
@ -18,7 +19,7 @@ type FeedCacheRepo struct {
|
|||
|
||||
func NewFeedCacheRepo(log logger.Logger, db *DB) domain.FeedCacheRepo {
|
||||
return &FeedCacheRepo{
|
||||
log: log.With().Str("repo", "feed_cache").Logger(),
|
||||
log: log.With().Str("module", "database").Str("repo", "feed_cache").Logger(),
|
||||
db: db,
|
||||
}
|
||||
}
|
||||
|
@ -95,7 +96,48 @@ func (r *FeedCacheRepo) Put(bucket string, key string, val []byte, ttl time.Time
|
|||
return nil
|
||||
}
|
||||
|
||||
func (r *FeedCacheRepo) Delete(bucket string, key string) error {
|
||||
//TODO implement me
|
||||
panic("implement me")
|
||||
func (r *FeedCacheRepo) Delete(ctx context.Context, bucket string, key string) error {
|
||||
queryBuilder := r.db.squirrel.
|
||||
Delete("feed_cache").
|
||||
Where("bucket = ?", bucket).
|
||||
Where("key = ?", key)
|
||||
|
||||
query, args, err := queryBuilder.ToSql()
|
||||
if err != nil {
|
||||
return errors.Wrap(err, "error building query")
|
||||
}
|
||||
|
||||
_, err = r.db.handler.ExecContext(ctx, query, args...)
|
||||
if err != nil {
|
||||
return errors.Wrap(err, "error executing query")
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (r *FeedCacheRepo) DeleteBucket(ctx context.Context, bucket string) error {
|
||||
queryBuilder := r.db.squirrel.
|
||||
Delete("feed_cache").
|
||||
Where("bucket = ?", bucket)
|
||||
|
||||
query, args, err := queryBuilder.ToSql()
|
||||
if err != nil {
|
||||
return errors.Wrap(err, "error building query")
|
||||
}
|
||||
|
||||
result, err := r.db.handler.ExecContext(ctx, query, args...)
|
||||
if err != nil {
|
||||
return errors.Wrap(err, "error executing query")
|
||||
}
|
||||
|
||||
rows, err := result.RowsAffected()
|
||||
if err != nil {
|
||||
return errors.Wrap(err, "error exec result")
|
||||
}
|
||||
|
||||
if rows == 0 {
|
||||
return errors.Wrap(err, "error no rows affected")
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue