public override void LooseUnmarshal(OpenWireFormat wireFormat, Object o, BinaryReader dataIn)
{
base.LooseUnmarshal(wireFormat, o, dataIn);
MessageAck info = (MessageAck)o;
info.Destination = (ActiveMQDestination) LooseUnmarshalCachedObject(wireFormat, dataIn);
info.TransactionId = (TransactionId) LooseUnmarshalCachedObject(wireFormat, dataIn);
info.ConsumerId = (ConsumerId) LooseUnmarshalCachedObject(wireFormat, dataIn);
info.AckType = dataIn.ReadByte();
info.FirstMessageId = (MessageId) LooseUnmarshalNestedObject(wireFormat, dataIn);
info.LastMessageId = (MessageId) LooseUnmarshalNestedObject(wireFormat, dataIn);
info.MessageCount = dataIn.ReadInt32();
}