void UpdateMonitor( MultiLogReader reader, long streamOffset, Dictionary<Guid, RawLogFileMonitorOccurence> monitorOccurrence, List<RawLogFileMonitorOccurence> monitorOccurenceList, IMulticastLogEntry log )
{
bool newOccurrence = false;
RawLogFileMonitorOccurence occ;
if( !monitorOccurrence.TryGetValue( log.MonitorId, out occ ) )
{
occ = new RawLogFileMonitorOccurence( this, log.MonitorId, streamOffset );
monitorOccurrence.Add( log.MonitorId, occ );
monitorOccurenceList.Add( occ );
newOccurrence = true;
}
if( occ.FirstEntryTime > log.LogTime ) occ.FirstEntryTime = log.LogTime;
if( occ.LastEntryTime < log.LogTime ) occ.LastEntryTime = log.LogTime;
occ.LastOffset = streamOffset;
reader.RegisterOneLog( occ, newOccurrence, streamOffset, log );
}