[ZODB-Dev] Re:
SVN: ZODB/branches/anguenot-ordering-beforecommitsubscribers/src/transaction/
Implements the ordering of before commit subscribers :
Julien Anguenot
ja at nuxeo.com
Mon Aug 8 18:15:39 EDT 2005
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Tim Peters wrote:
> [Julien Anguenot]
>
>>>+ def beforeCommitHookOrdered(hook, order, *args, **kws):
>>>+
>>>"""Register a hook to call before the transaction is committed. ...
>>>+ Note, a hook __call__() method can't define any 'order' argument
>
> since
>
>>>+ this one is reserved by this method
>
>
> [Florent Guillaume]
>
>>If that's a concern, maybe it can be called order__ or something ? What's
>>the pythonic way to do this ?
>
>
> It would be more accurate to say that the hook's __call__ method can't be
> invoked with a keyword argument named `order`. The same is equally true of
> invoking it with a keyword argument named `hook`. There's no problem if
> __call__ defines arguments named `hook` and/or `order` provided those are
> passed positionally to __call__.
>
> The problem (such as it is) is really inherited from the older function:
>
> def beforeCommitHook(self, hook, *args, **kws):
>
> The "most Pythonic" way would have been to define that as
>
> def beforeCommitHook(self, hook, args=(), kws=None):
> if kws is None:
> kws = {}
>
> much like Python's thread.start_new_thread() and threading.Thread()
> constructor. Then Julien could have added an optional new `order=0`
> argument to the old function too (instead of creating an additional
> function).
>
> While not ideal, it's minor, and naming the fixed arguments (in both
> methods), e.g., __hook and __order would remove most of the little ugliness.
I renamed those arguments in both methods.
How can we solve this 2 methods problem ? Deprecation of the old one ?
Or can we live like this ?
J.
- --
Julien Anguenot | Nuxeo R&D (Paris, France)
CPS Platform : http://www.cps-project.org
Zope3 / ECM : http://www.z3lab.org
mail: anguenot at nuxeo.com; tel: +33 (0) 6 72 57 57 66
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org
iD8DBQFC99mKGhoG8MxZ/pIRAuAdAJwLWEcU6PZsmupCZ5FdFecl/7oKlQCfbEgw
knkz+aMA5xQd/8lV4QYMc5U=
=fLAS
-----END PGP SIGNATURE-----
More information about the ZODB-Dev
mailing list