GSF.Diagnostics.LogMessageSaveHelper.SaveEventPublisherDetails C# (CSharp) Method

SaveEventPublisherDetails() public method

public SaveEventPublisherDetails ( Stream stream, LogEventPublisherDetails publisherDetails ) : void
stream Stream
publisherDetails LogEventPublisherDetails
return void
        public void SaveEventPublisherDetails(Stream stream, LogEventPublisherDetails publisherDetails)
        {
            if (publisherDetails == null)
                throw new ArgumentNullException(nameof(publisherDetails));

            if (m_isSimple)
            {
                stream.Write((byte)0);
                publisherDetails.Save(stream, this);
            }
            else
            {
                int lookupId;
                if (m_ownerSaveLookup.TryGetValue(publisherDetails, out lookupId))
                {
                    stream.Write((byte)1);
                    stream.Write(lookupId);
                }
                else
                {
                    lookupId = m_ownerSaveLookup.Count;
                    stream.Write((byte)3);
                    publisherDetails.Save(stream, this);
                    m_ownerSaveLookup.Add(publisherDetails, lookupId);
                }
            }
        }

Usage Example

Ejemplo n.º 1
0
        /// <summary>
        /// Writes the log data to the stream
        /// </summary>
        /// <param name="stream"></param>
        /// <param name="saveHelper"></param>
        internal void Save(Stream stream, LogMessageSaveHelper saveHelper = null)
        {
            if (saveHelper == null)
            {
                saveHelper = LogMessageSaveHelper.Create(true);
            }

            stream.Write((byte)4);
            saveHelper.SaveEventPublisherDetails(stream, EventPublisherDetails);
            saveHelper.SaveStackMessages(stream, InitialStackMessages);
            saveHelper.SaveStackTrace(stream, InitialStackTrace);
            saveHelper.SaveStackMessages(stream, CurrentStackMessages);
            saveHelper.SaveStackTrace(stream, CurrentStackTrace);
            stream.Write(UtcTime);
            LogMessageAttributes.Save(stream);
            saveHelper.SaveString(stream, Message);
            saveHelper.SaveString(stream, Details);
            saveHelper.SaveString(stream, ExceptionString);
            stream.Write(ManagedThreadID);
            stream.Write(PreviousFirstChanceExceptionSequenceNumber);
        }
All Usage Examples Of GSF.Diagnostics.LogMessageSaveHelper::SaveEventPublisherDetails