summaryrefslogtreecommitdiff
path: root/sleekxmpp/xmlstream/matcher/many.py
diff options
context:
space:
mode:
authorLance Stout <lancestout@gmail.com>2010-09-01 14:28:43 -0400
committerLance Stout <lancestout@gmail.com>2010-09-01 14:28:43 -0400
commit5c3066ba305c25bd1d9d8e262f3a119ed434bd72 (patch)
treeda321146b1563d05263ab21f80d28cc6479a064f /sleekxmpp/xmlstream/matcher/many.py
parent576eefb09740959a1d4307010e42880acdc1954a (diff)
downloadslixmpp-5c3066ba305c25bd1d9d8e262f3a119ed434bd72.tar.gz
slixmpp-5c3066ba305c25bd1d9d8e262f3a119ed434bd72.tar.bz2
slixmpp-5c3066ba305c25bd1d9d8e262f3a119ed434bd72.tar.xz
slixmpp-5c3066ba305c25bd1d9d8e262f3a119ed434bd72.zip
Updated all of the matcher classes in sleekxmpp.xmlstream.matcher.
Matchers are now PEP8 compliant and have documentation.
Diffstat (limited to 'sleekxmpp/xmlstream/matcher/many.py')
-rw-r--r--sleekxmpp/xmlstream/matcher/many.py39
1 files changed, 31 insertions, 8 deletions
diff --git a/sleekxmpp/xmlstream/matcher/many.py b/sleekxmpp/xmlstream/matcher/many.py
index ff0c4e4d..f470ec9c 100644
--- a/sleekxmpp/xmlstream/matcher/many.py
+++ b/sleekxmpp/xmlstream/matcher/many.py
@@ -5,13 +5,36 @@
See the file LICENSE for copying permission.
"""
-from . import base
-from xml.etree import cElementTree
-class MatchMany(base.MatcherBase):
+from sleekxmpp.xmlstream.matcher.base import MatcherBase
- def match(self, xml):
- for m in self._criteria:
- if m.match(xml):
- return True
- return False
+
+class MatchMany(MatcherBase):
+
+ """
+ The MatchMany matcher may compare a stanza against multiple
+ criteria. It is essentially an OR relation combining multiple
+ matchers.
+
+ Each of the criteria must implement a match() method.
+
+ Methods:
+ match -- Overrides MatcherBase.match.
+ """
+
+ def match(self, xml):
+ """
+ Match a stanza against multiple criteria. The match is successful
+ if one of the criteria matches.
+
+ Each of the criteria must implement a match() method.
+
+ Overrides MatcherBase.match.
+
+ Arguments:
+ xml -- The stanza object to compare against.
+ """
+ for m in self._criteria:
+ if m.match(xml):
+ return True
+ return False