protected HierarchyEntry(string name, EntryContainer parent, DateTime lastWriteTime)
{
#region Preconditions
Debug.Assert(name != null);
#endregion
if (name != null && name.IndexOfAny(Path.GetInvalidFileNameChars()) != -1) throw new ArgumentException("Invalid file name.");
_parent = parent;
Name = name;
LastWriteTime = lastWriteTime;
}