/// <summary> /// Parse fields from a FastTransferStream. /// </summary> /// <param name="stream">A FastTransferStream.</param> public override void Parse(FastTransferStream stream) { List<SyncMessagePartialPropList> InterMessagePartialList = new List<SyncMessagePartialPropList>(); this.groupInfo = new GroupInfo(stream); if (stream.VerifyMetaProperty(MetaProperties.MetaTagIncrSyncGroupId)) { this.MetaTagIncrSyncGroupId = new MetaPropValue(stream); } if (stream.ReadMarker() == Markers.IncrSyncChgPartial) { this.Marker = Markers.IncrSyncChgPartial; this.messageChangeHeader = new PropList(stream); while (stream.VerifyMetaProperty(MetaProperties.MetaTagIncrementalSyncMessagePartial)) { InterMessagePartialList.Add(new SyncMessagePartialPropList(stream)); } this.SyncMessagePartialPropList = InterMessagePartialList.ToArray(); this.MessageChildren = new MessageChildren(stream); } else { throw new Exception("The MessageChangePartial cannot be parsed successfully. The IncrSyncChgPartial Marker is missed."); } }
/// <summary> /// Parse fields from a FastTransferStream. /// </summary> /// <param name="stream">A FastTransferStream.</param> public override void Parse(FastTransferStream stream) { this.PropList = new PropList(stream); this.MessageChildren = new MessageChildren(stream); }
/// <summary> /// Parse fields from a FastTransferStream. /// </summary> /// <param name="stream">A FastTransferStream.</param> public override void Parse(FastTransferStream stream) { if (stream.ReadMarker() == Markers.IncrSyncChg) { this.StartMarker = Markers.IncrSyncChg; this.messageChangeHeader = new PropList(stream); if (stream.ReadMarker() == Markers.IncrSyncMessage) { this.SecondMarker = Markers.IncrSyncMessage; this.propList = new PropList(stream); this.messageChildren = new MessageChildren(stream); } else { throw new Exception("The MessageChangeFull cannot be parsed successfully. The IncrSyncMessage Marker is missed."); } } }