summaryrefslogtreecommitdiff
path: root/amqp_codegen.py
diff options
context:
space:
mode:
authorSimon MacMullen <simon@rabbitmq.com>2010-07-05 16:15:29 +0100
committerSimon MacMullen <simon@rabbitmq.com>2010-07-05 16:15:29 +0100
commit515b4168a0480e3cae0ee80fa36999c8bcdb2f88 (patch)
tree2238e46d420bd2ab96d259f38bf4b812da51f51d /amqp_codegen.py
parent3ae7e6206f31167f8cd4cce35480cbe22e2c1e47 (diff)
downloadrabbitmq-codegen-515b4168a0480e3cae0ee80fa36999c8bcdb2f88.tar.gz
Always break when there's
- a method with two different "synchronous" settings
Diffstat (limited to 'amqp_codegen.py')
-rw-r--r--amqp_codegen.py8
1 files changed, 5 insertions, 3 deletions
diff --git a/amqp_codegen.py b/amqp_codegen.py
index 6192f8c..b24a7e1 100644
--- a/amqp_codegen.py
+++ b/amqp_codegen.py
@@ -97,8 +97,10 @@ def merge_dict_lists_by(dict_key, old, new, allow_overwrite, check_fields):
if not allow_overwrite:
raise AmqpSpecFileMergeConflict(description, old, new)
for f in check_fields:
- if old_index[key][f] != v[f]:
- raise AmqpSpecFileMergeConflict(v[dict_key], old_index[key][f], v[f])
+ old_val = old_index[key].get(f, None)
+ new_val = v.get(f, None)
+ if old_val != new_val:
+ raise AmqpSpecFileMergeConflict(key, f, old_val, new_val)
else:
result.append(v)
return result
@@ -107,7 +109,7 @@ def constants_merger(key, old, new, allow_overwrite):
return merge_dict_lists_by("name", old, new, allow_overwrite, ["value"])
def methods_merger(classname, old, new, allow_overwrite):
- return merge_dict_lists_by("name", old, new, allow_overwrite, [])
+ return merge_dict_lists_by("name", old, new, allow_overwrite, ["synchronous"])
def properties_merger(classname, old, new, allow_overwrite):
return merge_dict_lists_by("name", old, new, allow_overwrite, ["type"])