Skip to content

Commit

Permalink
fix db funcs
Browse files Browse the repository at this point in the history
  • Loading branch information
gusin13 committed Oct 20, 2024
1 parent 78708ed commit f190bdb
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 1 deletion.
19 changes: 18 additions & 1 deletion internal/db/delegation.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,23 @@ func (db *Database) SaveNewBTCDelegation(
func (db *Database) UpdateBTCDelegationState(
ctx context.Context, stakingTxHash string, newState types.DelegationState,
) error {
filter := map[string]interface{}{"_id": stakingTxHash}
update := map[string]interface{}{"$set": map[string]string{"state": newState.String()}}

res := db.client.Database(db.dbName).
Collection(model.BTCDelegationDetailsCollection).
FindOneAndUpdate(ctx, filter, update)

if res.Err() != nil {
if errors.Is(res.Err(), mongo.ErrNoDocuments) {
return &NotFoundError{
Key: stakingTxHash,
Message: "BTC delegation not found when updating state",
}
}
return res.Err()
}

return nil
}

Expand All @@ -52,7 +69,7 @@ func (db *Database) GetBTCDelegationByStakingTxHash(
if errors.Is(err, mongo.ErrNoDocuments) {
return nil, &NotFoundError{
Key: stakingTxHash,
Message: "BTC delegation not found",
Message: "BTC delegation not found when getting by staking tx hash",
}
}
return nil, err
Expand Down
4 changes: 4 additions & 0 deletions internal/types/state.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,7 @@ const (
StateSlashed DelegationState = "SLASHED"
StateUnbonded DelegationState = "UNBONDED"
)

func (s DelegationState) String() string {
return string(s)
}

0 comments on commit f190bdb

Please sign in to comment.