mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-05-02 11:06:07 -04:00
LoggingTransaction accepts None for callback lists.
Its a bit disingenuousto give LoggingTransaction lists to append callbacks to if we're not going to run the callbacks.
This commit is contained in:
parent
ebc5ed1296
commit
bd2e1a2aa8
3 changed files with 16 additions and 6 deletions
|
@ -86,7 +86,21 @@ _CURRENT_STATE_CACHE_NAME = "cs_cache_fake"
|
|||
class LoggingTransaction(object):
|
||||
"""An object that almost-transparently proxies for the 'txn' object
|
||||
passed to the constructor. Adds logging and metrics to the .execute()
|
||||
method."""
|
||||
method.
|
||||
|
||||
Args:
|
||||
txn: The database transcation object to wrap.
|
||||
name (str): The name of this transactions for logging.
|
||||
database_engine (Sqlite3Engine|PostgresEngine)
|
||||
after_callbacks(list|None): A list that callbacks will be appended to
|
||||
that have been added by `call_after` which should be run on
|
||||
successful completion of the transaction. None indicates that no
|
||||
callbacks should be allowed to be scheduled to run.
|
||||
exception_callbacks(list|None): A list that callbacks will be appended
|
||||
to that have been added by `call_on_exception` which should be run
|
||||
if transaction ends with an error. None indicates that no callbacks
|
||||
should be allowed to be scheduled to run.
|
||||
"""
|
||||
|
||||
__slots__ = [
|
||||
"txn",
|
||||
|
@ -97,7 +111,7 @@ class LoggingTransaction(object):
|
|||
]
|
||||
|
||||
def __init__(
|
||||
self, txn, name, database_engine, after_callbacks, exception_callbacks
|
||||
self, txn, name, database_engine, after_callbacks=None, exception_callbacks=None
|
||||
):
|
||||
object.__setattr__(self, "txn", txn)
|
||||
object.__setattr__(self, "name", name)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue