summaryrefslogtreecommitdiff
path: root/python/qpid/validator.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/qpid/validator.py')
-rw-r--r--python/qpid/validator.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/python/qpid/validator.py b/python/qpid/validator.py
index 7bd62b68f8..d234642b3e 100644
--- a/python/qpid/validator.py
+++ b/python/qpid/validator.py
@@ -54,6 +54,20 @@ class Types:
else:
return "%s is not one of: %s" % (o, ", ".join([t.__name__ for t in self.types]))
+class List:
+
+ def __init__(self, condition):
+ self.condition = condition
+
+ def validate(self, o, ctx):
+ if not isinstance(o, list):
+ return "%s is not a list" % o
+
+ ctx.push(o)
+ for v in o:
+ err = self.condition.validate(v, ctx)
+ if err: return err
+
class Map:
def __init__(self, map, restricted=True):