The FolderChange element contains a new or changed folder in the hierarchy synchronization. folderChange = IncrSyncChg propList
Inheritance: SyntacticalBase
Exemplo n.º 1
0
 /// <summary>
 /// Verify that a stream's current position contains a serialized hierarchySync.
 /// </summary>
 /// <param name="stream">A FastTransferStream.</param>
 /// <returns>If the stream's current position contains
 /// a serialized hierarchySync, return true, else false.</returns>
 public static bool Verify(FastTransferStream stream)
 {
     return((FolderChange.Verify(stream) ||
             Deletions.Verify(stream) ||
             State.Verify(stream)) &&
            stream.VerifyMarker(
                Markers.PidTagIncrSyncEnd,
                (int)stream.Length - MarkersHelper.PidTagLength - (int)stream.Position));
 }
Exemplo n.º 2
0
        /// <summary>
        /// Deserialize fields from a FastTransferStream.
        /// </summary>
        /// <param name="stream">A FastTransferStream.</param>
        public override void Deserialize(FastTransferStream stream)
        {
            this.folderChangeList = new List <FolderChange>();
            while (FolderChange.Verify(stream))
            {
                this.folderChangeList.Add(new FolderChange(stream));
            }

            if (Deletions.Verify(stream))
            {
                this.deletions = new Deletions(stream);
            }

            this.state = new State(stream);
            if (!stream.ReadMarker(Markers.PidTagIncrSyncEnd))
            {
                AdapterHelper.Site.Assert.Fail("The stream cannot be deserialized successfully.");
            }
        }