From 5558216eabbd69da64d0b23e4d5a98ee4df577cb Mon Sep 17 00:00:00 2001 From: Julien Muchembled <jm@nexedi.com> Date: Wed, 7 May 2014 18:21:29 +0200 Subject: [PATCH] Use default __hash__ method for ERP5 objects If an object has no uid yet and has no acquisition context to the portal, getUid() fails. Default is derived from id(aq_base(ob)) which is even more efficient. The method on XMLObject was also redundant because it inherited the same one from Base. (cherry picked from commit 347804af6ed8e114c6195cca128afea946240043) --- product/ERP5Type/Base.py | 4 ---- product/ERP5Type/XMLObject.py | 4 ---- 2 files changed, 8 deletions(-) diff --git a/product/ERP5Type/Base.py b/product/ERP5Type/Base.py index d3eb6e043b..285a171b68 100644 --- a/product/ERP5Type/Base.py +++ b/product/ERP5Type/Base.py @@ -2872,10 +2872,6 @@ class Base( CopyContainer, return dict(redirect_url=container.absolute_url(), selection_index=None, selection_name=None) - # Hash method - def __hash__(self): - return hash(self.getUid()) - security.declareProtected(Permissions.ModifyPortalContent, 'setGuid') def setGuid(self): """ diff --git a/product/ERP5Type/XMLObject.py b/product/ERP5Type/XMLObject.py index b9faaddf95..2cc5781ad5 100644 --- a/product/ERP5Type/XMLObject.py +++ b/product/ERP5Type/XMLObject.py @@ -108,9 +108,5 @@ class XMLObject( Folder ): conduit = ERP5Conduit() conduit.addNode(object=self, xml=xml) - # Hash method - def __hash__(self): - return hash(self.getUid()) - InitializeClass(XMLObject) -- 2.30.9