private bool CheckInsideChange(IFolder targetIFolder, IChangeEvents changeTokens)
{
var children = targetIFolder.GetChildren();
var leafFolders = children.OfType<IFolder>();
var leafFiles = children.OfType<IDocument>();
var changed =
leafFolders.Any(childFolder => changeTokens.ChangeEventList.Any(change => childFolder.Id == change.ObjectId))
|| leafFiles.Any(childFile => changeTokens.ChangeEventList.Any(change => childFile.VersionSeriesId == change.Properties["versionSeriesId"][0] as string))
;
if (changed) return true;
foreach (var leafFolder in leafFolders)
{
changed = CheckInsideChange(leafFolder, changeTokens);
if (changed) return true;
}
return false;
}