Apache.NMS.ActiveMQ.OpenWire.OpenWireFormat.TightUnmarshalNestedObject C# (CSharp) Method

TightUnmarshalNestedObject() public method

public TightUnmarshalNestedObject ( BinaryReader dis, BooleanStream bs ) : DataStructure
dis System.IO.BinaryReader
bs BooleanStream
return DataStructure
        public DataStructure TightUnmarshalNestedObject(BinaryReader dis, BooleanStream bs)
        {
            if(bs.ReadBoolean())
            {
                byte dataType = dis.ReadByte();

                BaseDataStreamMarshaller dsm = GetDataStreamMarshallerForType(dataType);
                DataStructure data = dsm.CreateObject();

                if(data.IsMarshallAware() && bs.ReadBoolean())
                {
                    dis.ReadInt32();
                    dis.ReadByte();

                    BooleanStream bs2 = new BooleanStream();
                    bs2.Unmarshal(dis);
                    dsm.TightUnmarshal(this, data, dis, bs2);
                }
                else
                {
                    dsm.TightUnmarshal(this, data, dis, bs);
                }

                return data;
            }

            return null;
        }

Usage Example

 protected virtual DataStructure TightUnmarshalNestedObject(
     OpenWireFormat wireFormat,
     BinaryReader dataIn,
     BooleanStream bs)
 {
     return wireFormat.TightUnmarshalNestedObject(dataIn, bs);
 }
All Usage Examples Of Apache.NMS.ActiveMQ.OpenWire.OpenWireFormat::TightUnmarshalNestedObject