public static CLogTraceLineInformation_V2 ConvertFromV1(CLogTraceLineInformation v1) { CLogTraceLineInformation_V2 ret = new CLogTraceLineInformation_V2(); ret.UniquenessHash = v1.UniquenessHash; ret.TraceID = v1.TraceID; ret.EncodingString = "Unknown: in back compat mode, please rebuild sidecar using newer tools"; return(ret); }
public void Insert(ICLogOutputModule module, CLogDecodedTraceLine traceLine) { string asString; Guid hash = GenerateUniquenessHash(module, traceLine, out asString); CLogTraceLineInformation info = TraceInformation .Where(x => x.TraceID.Equals(traceLine.UniqueId)).FirstOrDefault(); if (null == info) { info = new CLogTraceLineInformation(); info.Unsaved = true; info.PreviousFileMatch = traceLine; info.TraceID = traceLine.UniqueId; info.UniquenessHash = hash; TraceInformation.Add(info); } if (info.UniquenessHash != hash) { throw new CLogEnterReadOnlyModeException("DuplicateID", CLogHandledException.ExceptionType.DuplicateId, traceLine.match); } }
public void Remove(CLogTraceLineInformation trace) { TraceInformation.Remove(trace); }
public bool IsUnique(ICLogOutputModule module, CLogDecodedTraceLine traceLine, out CLogTraceLineInformation existingTraceInformation) { existingTraceInformation = TraceInformation .Where(x => x.TraceID.Equals(traceLine.UniqueId)).FirstOrDefault(); if (null == existingTraceInformation) { return(true); } string asString; Guid hash = GenerateUniquenessHash(module, traceLine, out asString); if (hash != existingTraceInformation.UniquenessHash) { return(false); } return(true); }