summaryrefslogtreecommitdiff
path: root/java/common/src/main/java/org/apache/qpid/framing/ExchangeDeleteBody.java
diff options
context:
space:
mode:
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.java17
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);
+ }
}