private static void SetValue(BuildStatus changedBuildStatus, IDictionary<string, BuildStatus> dictionary)
{
try
{
if (!dictionary.ContainsKey(changedBuildStatus.BuildDefinitionId))
dictionary.Add(changedBuildStatus.BuildDefinitionId, changedBuildStatus);
else
dictionary[changedBuildStatus.BuildDefinitionId] = changedBuildStatus;
}
catch (IndexOutOfRangeException)
{
_log.Error("Tried to update the cache from the thread '" + Thread.CurrentThread.Name + "' but failed because the cache was previously accessed from a different thread. This could cause errors in determining whether a build changed.");
}
}