/// <summary> /// Parse the EphemeralEntryID payload of session. /// </summary> /// <param name="s">The stream to parse</param> public override void Parse(Stream s) { base.Parse(s); this.Type = ReadByte(); this.R1 = ReadByte(); this.R2 = ReadByte(); this.R3 = ReadByte(); this.ProviderUID = ReadGuid(); this.R4 = ReadUint(); this.DisplayType = (DisplayTypeValues)ReadUint(); this.Mid = new MinimalEntryID(); this.Mid.Parse(s); }
/// <summary> /// Parse the SeekEntriesRequest structure. /// </summary> /// <param name="s">An stream containing SeekEntriesRequest structure.</param> public override void Parse(Stream s) { base.Parse(s); this.Reserved = ReadUint(); this.HasState = ReadBoolean(); if (this.HasState) { this.State = new STAT(); this.State.Parse(s); } this.HasTarget = ReadBoolean(); if (this.HasTarget) { this.Target = new AddressBookTaggedPropertyValue(); this.Target.Parse(s); } this.HasExplicitTable = ReadBoolean(); if (this.HasExplicitTable) { this.ExplicitTableCount = ReadUint(); List<MinimalEntryID> miniEIDList = new List<MinimalEntryID>(); for (int i = 0; i < this.ExplicitTableCount; i++) { MinimalEntryID miniEID = new MinimalEntryID(); miniEID.Parse(s); miniEIDList.Add(miniEID); } this.ExplicitTable = miniEIDList.ToArray(); } this.HasColumns = ReadBoolean(); if (this.HasColumns) { this.Columns = new LargePropertyTagArray(); this.Columns.Parse(s); } this.AuxiliaryBufferSize = ReadUint(); if (this.AuxiliaryBufferSize > 0) { this.AuxiliaryBuffer = new ExtendedBuffer(); this.AuxiliaryBuffer.Parse(s); } }
/// <summary> /// Parse the ResortRestrictionRequest structure. /// </summary> /// <param name="s">An stream containing ResortRestrictionRequest structure.</param> public override void Parse(Stream s) { base.Parse(s); this.Reserved = ReadUint(); this.HasState = ReadBoolean(); if (this.HasState) { this.State = new STAT(); this.State.Parse(s); } this.HasMinimalIds = ReadBoolean(); if (this.HasMinimalIds) { this.MinimalIdCount = ReadUint(); List<MinimalEntryID> miniEIDList = new List<MinimalEntryID>(); for (int i = 0; i < this.MinimalIdCount; i++) { MinimalEntryID miniEID = new MinimalEntryID(); miniEID.Parse(s); miniEIDList.Add(miniEID); } this.MinimalIds = miniEIDList.ToArray(); } this.AuxiliaryBufferSize = ReadUint(); if (this.AuxiliaryBufferSize > 0) { this.AuxiliaryBuffer = new ExtendedBuffer(); this.AuxiliaryBuffer.Parse(s); } }
/// <summary> /// Parse the ResortRestrictionResponse structure. /// </summary> /// <param name="s">An stream containing ResortRestrictionResponse structure.</param> public override void Parse(Stream s) { base.Parse(s); List<MAPIString> metaTags = new List<MAPIString>(); List<MAPIString> additionalHeaders = new List<MAPIString>(); ParseMAPIMethod parseMAPIMethod = new ParseMAPIMethod(); parseMAPIMethod.ParseAddtionlHeader(s, out metaTags, out additionalHeaders); this.MetaTags = metaTags.ToArray(); this.AdditionalHeaders = additionalHeaders.ToArray(); this.StatusCode = ReadUint(); if (this.StatusCode == 0) { this.ErrorCode = ReadUint(); this.HasState = ReadBoolean(); if (this.HasState) { this.State = new STAT(); this.State.Parse(s); } this.HasMinimalIds = ReadBoolean(); if (this.HasMinimalIds) { this.MinimalIdCount = ReadUint(); List<MinimalEntryID> miniEIDList = new List<MinimalEntryID>(); for (int i = 0; i < this.MinimalIdCount; i++) { MinimalEntryID miniEID = new MinimalEntryID(); miniEID.Parse(s); miniEIDList.Add(miniEID); } this.MinimalIds = miniEIDList.ToArray(); } this.AuxiliaryBufferSize = ReadUint(); if (this.AuxiliaryBufferSize > 0) { this.AuxiliaryBuffer = new ExtendedBuffer(); this.AuxiliaryBuffer.Parse(s); } } }
/// <summary> /// Parse the ResolveNamesResponse structure. /// </summary> /// <param name="s">An stream containing ResolveNamesResponse structure.</param> public override void Parse(Stream s) { base.Parse(s); List<MAPIString> metaTags = new List<MAPIString>(); List<MAPIString> additionalHeaders = new List<MAPIString>(); ParseMAPIMethod parseMAPIMethod = new ParseMAPIMethod(); parseMAPIMethod.ParseAddtionlHeader(s, out metaTags, out additionalHeaders); this.MetaTags = metaTags.ToArray(); this.AdditionalHeaders = additionalHeaders.ToArray(); this.StatusCode = ReadUint(); if (this.StatusCode == 0) { this.ErrorCode = ReadUint(); this.CodePage = ReadUint(); this.HasMinimalIds = ReadBoolean(); if (this.HasMinimalIds) { this.MinimalIdCount = ReadUint(); List<MinimalEntryID> miniEIDList = new List<MinimalEntryID>(); for (int i = 0; i < this.MinimalIdCount; i++) { MinimalEntryID miniEID = new MinimalEntryID(); miniEID.Parse(s); miniEIDList.Add(miniEID); } this.MinimalIds = miniEIDList.ToArray(); } this.HasRowsAndCols = ReadBoolean(); if (this.HasRowsAndCols) { this.PropertyTags = new LargePropertyTagArray(); this.PropertyTags.Parse(s); this.RowCount = ReadUint(); List<AddressBookPropertyRow> addressPRList = new List<AddressBookPropertyRow>(); for (int i = 0; i < this.RowCount; i++) { AddressBookPropertyRow addressPR = new AddressBookPropertyRow(this.PropertyTags); addressPR.Parse(s); addressPRList.Add(addressPR); } this.RowData = addressPRList.ToArray(); } } this.AuxiliaryBufferSize = ReadUint(); if (this.AuxiliaryBufferSize > 0) { this.AuxiliaryBuffer = new ExtendedBuffer(); this.AuxiliaryBuffer.Parse(s); } }
/// <summary> /// Parse the ModLinkAttRequest structure. /// </summary> /// <param name="s">An stream containing ModLinkAttRequest structure.</param> public override void Parse(Stream s) { base.Parse(s); this.Flags = ReadUint(); this.PropertyTag = new PropertyTag(); this.PropertyTag.Parse(s); this.MinimalId = new MinimalEntryID(); this.MinimalId.Parse(s); this.HasEntryIds = ReadBoolean(); if (this.HasEntryIds) { this.EntryIdCount = ReadUint(); List<object> tempObj = new List<object>(); for (int i = 0; i < this.EntryIdCount; i++) { byte currentByte = ReadByte(); s.Position -= 1; if (currentByte == 0x87) { EphemeralEntryID ephemeralEntryID = new EphemeralEntryID(); ephemeralEntryID.Parse(s); tempObj.Add(ephemeralEntryID); } else if (currentByte == 0x00) { PermanentEntryID permanentEntryID = new PermanentEntryID(); permanentEntryID.Parse(s); tempObj.Add(permanentEntryID); } } this.EntryIds = tempObj.ToArray(); } this.AuxiliaryBufferSize = ReadUint(); if (this.AuxiliaryBufferSize > 0) { this.AuxiliaryBuffer = new ExtendedBuffer(); this.AuxiliaryBuffer.Parse(s); } }
/// <summary> /// Parse the GetPropListRequest structure. /// </summary> /// <param name="s">An stream containing GetPropListRequest structure.</param> public override void Parse(Stream s) { base.Parse(s); this.Flags = ReadUint(); this.MinimalId = new MinimalEntryID(); this.MinimalId.Parse(s); this.CodePage = ReadUint(); this.AuxiliaryBufferSize = ReadUint(); if (this.AuxiliaryBufferSize > 0) { this.AuxiliaryBuffer = new ExtendedBuffer(); this.AuxiliaryBuffer.Parse(s); } }
/// <summary> /// Parse the GetMatchesRequest structure. /// </summary> /// <param name="s">An stream containing GetMatchesRequest structure.</param> public override void Parse(Stream s) { base.Parse(s); this.Reserved = ReadUint(); this.HasState = ReadBoolean(); if (this.HasState) { STAT stat = new STAT(); stat.Parse(s); this.State = stat; } this.HasMinimalIds = ReadBoolean(); if (this.HasMinimalIds) { this.MinimalIdCount = ReadUint(); List<MinimalEntryID> me = new List<MinimalEntryID>(); for (int i = 0; i < this.MinimalIdCount; i++) { MinimalEntryID mEntryId = new MinimalEntryID(); mEntryId.Parse(s); me.Add(mEntryId); } this.MinimalIds = me.ToArray(); } this.InterfaceOptionFlags = ReadUint(); this.HasFilter = ReadBoolean(); if (this.HasFilter) { RestrictionType restriction = new RestrictionType(); restriction.Parse(s); this.Filter = restriction; } this.HasPropertyName = ReadBoolean(); if (this.HasPropertyName) { this.PropertyNameGuid = ReadGuid(); this.PropertyNameId = ReadUint(); } this.RowCount = ReadUint(); this.HasColumns = ReadBoolean(); if (this.HasColumns) { LargePropertyTagArray largePTA = new LargePropertyTagArray(); largePTA.Parse(s); this.Columns = largePTA; } this.AuxiliaryBufferSize = ReadUint(); if (this.AuxiliaryBufferSize > 0) { this.AuxiliaryBuffer = new ExtendedBuffer(); this.AuxiliaryBuffer.Parse(s); } else { this.AuxiliaryBuffer = null; } }
/// <summary> /// Parse the HTTP payload of session. /// </summary> /// <param name="s">An stream of HTTP payload of session</param> public override void Parse(Stream s) { base.Parse(s); this.Reserved = ReadUint(); this.HasState = ReadByte(); if (this.HasState != 0) { this.State = new STAT(); this.State.Parse(s); } else { this.State = null; } this.MinimalId1 = new MinimalEntryID(); this.MinimalId1.Parse(s); this.MinimalId2 = new MinimalEntryID(); this.MinimalId2.Parse(s); this.AuxiliaryBufferSize = ReadUint(); if (this.AuxiliaryBufferSize > 0) { this.AuxiliaryBuffer = new ExtendedBuffer(); this.AuxiliaryBuffer.Parse(s); } else { this.AuxiliaryBuffer = null; } }