in code/KustoCopyConsole/Entity/InMemory/RowItemInMemoryCache.cs [286:323]
private IImmutableDictionary<string, ActivityCache> AppendExtent(ExtentRowItem item)
{
var activityName = item.ActivityName;
if (ActivityMap.ContainsKey(activityName))
{
var activity = ActivityMap[activityName];
if (activity.IterationMap.ContainsKey(item.IterationId))
{
var iteration = activity.IterationMap[item.IterationId];
if (iteration.BlockMap.ContainsKey(item.BlockId))
{
var block = iteration.BlockMap[item.BlockId];
var newActivityMap = ActivityMap.SetItem(
activityName,
activity.AppendIteration(
iteration.AppendBlock(
block.AppendExtent(new ExtentCache(item)))));
return newActivityMap;
}
else
{
throw new NotSupportedException("Block should come before extent in logs");
}
}
else
{
throw new NotSupportedException("Iteration should come before block in logs");
}
}
else
{
throw new NotSupportedException("Activity should come before iteration in logs");
}
}