internal void UpdateFileTime(string canonicalName, LocalState.FileTimestamp ft, bool? present)
{
lock (this)
{
LocalState.FileTimestamp prior = null;
if (!present.HasValue || present.Value == true)
prior = Find<LocalState.FileTimestamp>(x => x.CanonicalName == canonicalName);
if (prior == null)
{
prior = new FileTimestamp() { CanonicalName = canonicalName, LastSeenTime = ft.LastSeenTime, DataIdentifier = ft.DataIdentifier };
Insert(prior);
}
else
{
prior.LastSeenTime = ft.LastSeenTime;
prior.DataIdentifier = ft.DataIdentifier;
Update(prior);
}
}
}