public override void LooseUnmarshal(OpenWireFormat wireFormat, Object o, BinaryReader dataIn)
{
base.LooseUnmarshal(wireFormat, o, dataIn);
ConsumerInfo info = (ConsumerInfo)o;
info.ConsumerId = (ConsumerId) LooseUnmarshalCachedObject(wireFormat, dataIn);
info.Browser = dataIn.ReadBoolean();
info.Destination = (ActiveMQDestination) LooseUnmarshalCachedObject(wireFormat, dataIn);
info.PrefetchSize = dataIn.ReadInt32();
info.MaximumPendingMessageLimit = dataIn.ReadInt32();
info.DispatchAsync = dataIn.ReadBoolean();
info.Selector = LooseUnmarshalString(dataIn);
info.SubscriptionName = LooseUnmarshalString(dataIn);
info.NoLocal = dataIn.ReadBoolean();
info.Exclusive = dataIn.ReadBoolean();
info.Retroactive = dataIn.ReadBoolean();
info.Priority = dataIn.ReadByte();
if (dataIn.ReadBoolean()) {
short size = dataIn.ReadInt16();
BrokerId[] value = new BrokerId[size];
for( int i=0; i < size; i++ ) {
value[i] = (BrokerId) LooseUnmarshalNestedObject(wireFormat,dataIn);
}
info.BrokerPath = value;
}
else {
info.BrokerPath = null;
}
info.AdditionalPredicate = (BooleanExpression) LooseUnmarshalNestedObject(wireFormat, dataIn);
info.NetworkSubscription = dataIn.ReadBoolean();
info.OptimizedAcknowledge = dataIn.ReadBoolean();
info.NoRangeAcks = dataIn.ReadBoolean();
if (dataIn.ReadBoolean()) {
short size = dataIn.ReadInt16();
ConsumerId[] value = new ConsumerId[size];
for( int i=0; i < size; i++ ) {
value[i] = (ConsumerId) LooseUnmarshalNestedObject(wireFormat,dataIn);
}
info.NetworkConsumerPath = value;
}
else {
info.NetworkConsumerPath = null;
}
}