diff options
Diffstat (limited to 'java/common/src/main/java/org/apache/qpid/framing/ExchangeDeleteBody.java')
-rw-r--r-- | java/common/src/main/java/org/apache/qpid/framing/ExchangeDeleteBody.java | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/java/common/src/main/java/org/apache/qpid/framing/ExchangeDeleteBody.java b/java/common/src/main/java/org/apache/qpid/framing/ExchangeDeleteBody.java index 98b0ba30f0..771fa63063 100644 --- a/java/common/src/main/java/org/apache/qpid/framing/ExchangeDeleteBody.java +++ b/java/common/src/main/java/org/apache/qpid/framing/ExchangeDeleteBody.java @@ -47,9 +47,9 @@ public class ExchangeDeleteBody extends AMQMethodBodyImpl implements EncodableAM // Constructor public ExchangeDeleteBody(MarkableDataInput buffer) throws AMQFrameDecodingException, IOException { - _ticket = readUnsignedShort( buffer ); - _exchange = readAMQShortString( buffer ); - _bitfield0 = readBitfield( buffer ); + _ticket = buffer.readUnsignedShort(); + _exchange = buffer.readAMQShortString(); + _bitfield0 = buffer.readByte(); } public ExchangeDeleteBody( @@ -138,4 +138,15 @@ public class ExchangeDeleteBody extends AMQMethodBodyImpl implements EncodableAM return buf.toString(); } + public static <T> T process(final int channelId, final MarkableDataInput buffer, final MethodProcessor<T> dispatcher) + throws IOException + { + + int ticket = buffer.readUnsignedShort(); + AMQShortString exchange = buffer.readAMQShortString(); + byte bitfield = buffer.readByte(); + boolean ifUnused = (bitfield & 0x01) == 0x01; + boolean nowait = (bitfield & 0x02) == 0x02; + return dispatcher.exchangeDelete(channelId, exchange, ifUnused, nowait); + } } |