summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVlad Ionescu <vlad@lshift.net>2009-11-30 22:45:28 +0000
committerVlad Ionescu <vlad@lshift.net>2009-11-30 22:45:28 +0000
commit76e3a75c0333f36b6b52868ef8b08b8136f7ff59 (patch)
tree31bc5898c6c1ac3cf9335c4263c8027a0919c27e
parent973e3ec1494fcc7e9d2ce60f4646a2f2d5f5e0c5 (diff)
downloadrabbitmq-server-bug22063.tar.gz
removing is_amqp_hard_error in rabbit_framing and adding amqp_exception function to lookup amqp error codes and turn them into atomsbug22063
-rw-r--r--codegen.py25
1 files changed, 6 insertions, 19 deletions
diff --git a/codegen.py b/codegen.py
index 1c5b2b54..20bfc947 100644
--- a/codegen.py
+++ b/codegen.py
@@ -244,19 +244,10 @@ def genErl(spec):
print 'lookup_amqp_exception(%s) -> {%s, ?%s, <<"%s">>};' % \
(n.lower(), hardErrorBoolStr, n, n)
- def genIsAmqpHardErrorCode(c,v,cls):
- mCls = messageConstantClass(cls)
- if mCls == 'SOFT_ERROR' : genIsAmqpHardErrorCode1(c,'false')
- elif mCls == 'HARD_ERROR' : genIsAmqpHardErrorCode1(c,'true')
- elif mCls == '' : pass
- else: raise 'Unkown constant class', cls
-
- def genIsAmqpHardErrorCode1(c,hardErrorBoolStr):
+ def genAmqpException(c,v,cls):
n = erlangConstantName(c)
- print 'is_amqp_hard_error_code(?%s) -> %s;' % \
- (n, hardErrorBoolStr)
- print 'is_amqp_hard_error_code(%s) -> %s;' % \
- (n.lower(), hardErrorBoolStr)
+ print 'amqp_exception(?%s) -> %s;' % \
+ (n, n.lower())
methods = spec.allMethods()
@@ -274,7 +265,7 @@ def genErl(spec):
-export([encode_method_fields/1]).
-export([encode_properties/1]).
-export([lookup_amqp_exception/1]).
--export([is_amqp_hard_error_code/1]).
+-export([amqp_exception/1]).
bitvalue(true) -> 1;
bitvalue(false) -> 0;
@@ -313,12 +304,8 @@ bitvalue(undefined) -> 0.
print " rabbit_log:warning(\"Unknown AMQP error code '~p'~n\", [Code]),"
print " {true, ?INTERNAL_ERROR, <<\"INTERNAL_ERROR\">>}."
- for(c,v,cls) in spec.constants: genIsAmqpHardErrorCode(c,v,cls)
- print "is_amqp_hard_error_code(Code) when is_integer(Code) ->"
- print " true;"
- print "is_amqp_hard_error_code(Code) ->"
- print " rabbit_log:warning(\"Unknown AMQP error code '~p'~n\", [Code]),"
- print " true."
+ for(c,v,cls) in spec.constants: genAmqpException(c,v,cls)
+ print "amqp_exception(_Code) -> undefined."
def genHrl(spec):
def erlType(domain):