/// <summary> /// Parse the RopGetSearchCriteriaResponse structure. /// </summary> /// <param name="s">An stream containing RopGetSearchCriteriaResponse structure.</param> public override void Parse(Stream s) { base.Parse(s); this.RopId = (RopIdType)ReadByte(); this.InputHandleIndex = ReadByte(); HelpMethod help = new HelpMethod(); this.ReturnValue = help.FormatErrorCode(ReadUint()); if ((ErrorCodes)ReturnValue == ErrorCodes.Success) { this.RestrictionDataSize = ReadUshort(); if (RestrictionDataSize > 0) { this.RestrictionData = new RestrictionType(); this.RestrictionData.Parse(s); } this.LogonId = ReadByte(); this.FolderIdCount = ReadUshort(); List<FolderID> tempFolderIDs = new List<FolderID>(); for (int i = 0; i < FolderIdCount; i++) { FolderID folderID = new FolderID(); folderID.Parse(s); tempFolderIDs.Add(folderID); } this.FolderIds = tempFolderIDs.ToArray(); this.SearchFlags = (SearchResponseFlags)ReadUint(); } }
/// <summary> /// Parse the RopSetSearchCriteriaRequest structure. /// </summary> /// <param name="s">An stream containing RopSetSearchCriteriaRequest structure.</param> public override void Parse(Stream s) { base.Parse(s); this.RopId = (RopIdType)ReadByte(); this.LogonId = ReadByte(); this.InputHandleIndex = ReadByte(); this.RestrictionDataSize = ReadUshort(); if (RestrictionDataSize > 0) { this.RestrictionData = new RestrictionType(); this.RestrictionData.Parse(s); } this.FolderIdCount = ReadUshort(); List<FolderID> tempFolderIDs = new List<FolderID>(); for (int i = 0; i < FolderIdCount; i++) { FolderID folderID = new FolderID(); folderID.Parse(s); tempFolderIDs.Add(folderID); } this.FolderIds = tempFolderIDs.ToArray(); this.SearchFlags = (SearchRequestFlags)ReadUint(); }