diff options
author | Profpatsch <mail@profpatsch.de> | 2024-03-17T01·26+0100 |
---|---|---|
committer | clbot <clbot@tvl.fyi> | 2024-03-17T01·36+0000 |
commit | 3b9fb1aa60d060d7cfd7634e532327086f0ef5f1 (patch) | |
tree | c28d841d4f94d2d23edd69abcffb2f0678ce2c57 /users/Profpatsch/my-prelude/src/Postgres/MonadPostgres.hs | |
parent | efa5fe1239263ad49cbcdb0f0039e93b55686f36 (diff) |
feat(users/Profpatsch/whatcd-resolver): add autorefresh r/7715
Adds a little polling mechanism that compares against an ID that is generated anew every time the server is restarted. Works well together with shortcuttable. Change-Id: Icc6745b599e43881c14349794feaf5794cfe6777 Reviewed-on: https://cl.tvl.fyi/c/depot/+/11172 Autosubmit: Profpatsch <mail@profpatsch.de> Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
Diffstat (limited to 'users/Profpatsch/my-prelude/src/Postgres/MonadPostgres.hs')
-rw-r--r-- | users/Profpatsch/my-prelude/src/Postgres/MonadPostgres.hs | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/users/Profpatsch/my-prelude/src/Postgres/MonadPostgres.hs b/users/Profpatsch/my-prelude/src/Postgres/MonadPostgres.hs index bd8ddd12f775..2585f6637c41 100644 --- a/users/Profpatsch/my-prelude/src/Postgres/MonadPostgres.hs +++ b/users/Profpatsch/my-prelude/src/Postgres/MonadPostgres.hs @@ -165,6 +165,21 @@ querySingleRow qry params = do query qry params >>= ensureSingleRow -- TODO: implement via fold, so that the result doesn’t have to be realized in memory +querySingleRowWith :: + ( MonadPostgres m, + ToRow qParams, + Typeable qParams, + Typeable a, + MonadThrow m + ) => + Query -> + qParams -> + Decoder a -> + Transaction m a +querySingleRowWith qry params decoder = do + queryWith qry params decoder >>= ensureSingleRow + +-- TODO: implement via fold, so that the result doesn’t have to be realized in memory querySingleRowMaybe :: ( MonadPostgres m, ToRow qParams, |