@@ -228,12 +228,12 @@ def genEncodeProperties(c):
228228 print " rabbit_binary_generator:encode_properties(%s, %s);" % \
229229 (fieldTypeList (c .fields ), fieldTempList (c .fields ))
230230
231- def massageConstantClass (cls ):
231+ def messageConstantClass (cls ):
232232 # We do this because 0.8 uses "soft error" and 8.1 uses "soft-error".
233233 return erlangConstantName (cls )
234234
235235 def genLookupException (c ,v ,cls ):
236- mCls = massageConstantClass (cls )
236+ mCls = messageConstantClass (cls )
237237 if mCls == 'SOFT_ERROR' : genLookupException1 (c ,'false' )
238238 elif mCls == 'HARD_ERROR' : genLookupException1 (c , 'true' )
239239 elif mCls == '' : pass
@@ -244,6 +244,11 @@ def genLookupException1(c,hardErrorBoolStr):
244244 print 'lookup_amqp_exception(%s) -> {%s, ?%s, <<"%s">>};' % \
245245 (n .lower (), hardErrorBoolStr , n , n )
246246
247+ def genAmqpException (c ,v ,cls ):
248+ n = erlangConstantName (c )
249+ print 'amqp_exception(?%s) -> %s;' % \
250+ (n , n .lower ())
251+
247252 methods = spec .allMethods ()
248253
249254 print """-module(rabbit_framing).
@@ -260,6 +265,7 @@ def genLookupException1(c,hardErrorBoolStr):
260265-export([encode_method_fields/1]).
261266-export([encode_properties/1]).
262267-export([lookup_amqp_exception/1]).
268+ -export([amqp_exception/1]).
263269
264270bitvalue(true) -> 1;
265271bitvalue(false) -> 0;
@@ -296,8 +302,10 @@ def genLookupException1(c,hardErrorBoolStr):
296302 for (c ,v ,cls ) in spec .constants : genLookupException (c ,v ,cls )
297303 print "lookup_amqp_exception(Code) ->"
298304 print " rabbit_log:warning(\" Unknown AMQP error code '~p'~n\" , [Code]),"
299- print " {true, ?INTERNAL_ERROR, <<\" INTERNAL_ERROR\" >>}."
305+ print " {true, ?INTERNAL_ERROR, <<\" INTERNAL_ERROR\" >>}."
300306
307+ for (c ,v ,cls ) in spec .constants : genAmqpException (c ,v ,cls )
308+ print "amqp_exception(_Code) -> undefined."
301309
302310def genHrl (spec ):
303311 def erlType (domain ):
0 commit comments