v0.0.248 exerr in wmo package
Some checks failed
Build Docker and Deploy / Run goext test-suite (push) Failing after 55s
Some checks failed
Build Docker and Deploy / Run goext test-suite (push) Failing after 55s
This commit is contained in:
@@ -5,10 +5,18 @@ import (
|
||||
"go.mongodb.org/mongo-driver/bson"
|
||||
"go.mongodb.org/mongo-driver/mongo"
|
||||
"go.mongodb.org/mongo-driver/mongo/options"
|
||||
"gogs.mikescher.com/BlackForestBytes/goext/exerr"
|
||||
)
|
||||
|
||||
func (c *Coll[TData]) FindOneAndUpdate(ctx context.Context, filterQuery bson.M, updateQuery bson.M) (TData, error) {
|
||||
mongoRes := c.coll.FindOneAndUpdate(ctx, filterQuery, updateQuery, options.FindOneAndUpdate().SetReturnDocument(options.After))
|
||||
if err := mongoRes.Err(); err != nil {
|
||||
return *new(TData), exerr.Wrap(err, "mongo-query[find-one-and-update] failed").
|
||||
Str("collection", c.Name()).
|
||||
Any("filterQuery", filterQuery).
|
||||
Any("updateQuery", updateQuery).
|
||||
Build()
|
||||
}
|
||||
|
||||
return c.decodeSingle(ctx, mongoRes)
|
||||
}
|
||||
@@ -16,7 +24,11 @@ func (c *Coll[TData]) FindOneAndUpdate(ctx context.Context, filterQuery bson.M,
|
||||
func (c *Coll[TData]) UpdateOne(ctx context.Context, filterQuery bson.M, updateQuery bson.M) error {
|
||||
_, err := c.coll.UpdateOne(ctx, filterQuery, updateQuery)
|
||||
if err != nil {
|
||||
return err
|
||||
return exerr.Wrap(err, "mongo-query[update-one] failed").
|
||||
Str("collection", c.Name()).
|
||||
Any("filterQuery", filterQuery).
|
||||
Any("updateQuery", updateQuery).
|
||||
Build()
|
||||
}
|
||||
|
||||
return nil
|
||||
@@ -25,7 +37,11 @@ func (c *Coll[TData]) UpdateOne(ctx context.Context, filterQuery bson.M, updateQ
|
||||
func (c *Coll[TData]) UpdateOneByID(ctx context.Context, id EntityID, updateQuery bson.M) error {
|
||||
_, err := c.coll.UpdateOne(ctx, bson.M{"_id": id}, updateQuery)
|
||||
if err != nil {
|
||||
return err
|
||||
return exerr.Wrap(err, "mongo-query[update-one-by-id] failed").
|
||||
Str("collection", c.Name()).
|
||||
Id("id", id).
|
||||
Any("updateQuery", updateQuery).
|
||||
Build()
|
||||
}
|
||||
|
||||
return nil
|
||||
@@ -34,7 +50,11 @@ func (c *Coll[TData]) UpdateOneByID(ctx context.Context, id EntityID, updateQuer
|
||||
func (c *Coll[TData]) UpdateMany(ctx context.Context, filterQuery bson.M, updateQuery bson.M) (*mongo.UpdateResult, error) {
|
||||
res, err := c.coll.UpdateMany(ctx, filterQuery, updateQuery)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
return nil, exerr.Wrap(err, "mongo-query[update-many] failed").
|
||||
Str("collection", c.Name()).
|
||||
Any("filterQuery", filterQuery).
|
||||
Any("updateQuery", updateQuery).
|
||||
Build()
|
||||
}
|
||||
|
||||
return res, nil
|
||||
@@ -43,7 +63,10 @@ func (c *Coll[TData]) UpdateMany(ctx context.Context, filterQuery bson.M, update
|
||||
func (c *Coll[TData]) ReplaceOne(ctx context.Context, filterQuery bson.M, value TData) error {
|
||||
_, err := c.coll.UpdateOne(ctx, filterQuery, bson.M{"$set": value})
|
||||
if err != nil {
|
||||
return err
|
||||
return exerr.Wrap(err, "mongo-query[replace-one] failed").
|
||||
Str("collection", c.Name()).
|
||||
Any("filterQuery", filterQuery).
|
||||
Build()
|
||||
}
|
||||
|
||||
return nil
|
||||
@@ -51,6 +74,12 @@ func (c *Coll[TData]) ReplaceOne(ctx context.Context, filterQuery bson.M, value
|
||||
|
||||
func (c *Coll[TData]) FindOneAndReplace(ctx context.Context, filterQuery bson.M, value TData) (TData, error) {
|
||||
mongoRes := c.coll.FindOneAndUpdate(ctx, filterQuery, bson.M{"$set": value}, options.FindOneAndUpdate().SetReturnDocument(options.After))
|
||||
if err := mongoRes.Err(); err != nil {
|
||||
return *new(TData), exerr.Wrap(err, "mongo-query[find-one-and-update] failed").
|
||||
Str("collection", c.Name()).
|
||||
Any("filterQuery", filterQuery).
|
||||
Build()
|
||||
}
|
||||
|
||||
return c.decodeSingle(ctx, mongoRes)
|
||||
}
|
||||
|
Reference in New Issue
Block a user