public override void Accept(IAddressableObjectVisitor visitor) { if (visitor == null) { throw new ArgumentNullException("visitor"); } visitor.VisitFile(this); }
/// <summary> /// Принять указанного посетителя (Visitor, Gof). /// </summary> /// <param name="visitor"></param> public override void Accept(IAddressableObjectVisitor visitor) { if (visitor == null) { throw new ArgumentNullException("visitor"); } visitor.VisitFolder(this); foreach (FileAddressable file in Files) { file.Accept(visitor); } foreach (FolderAddressable subfolder in Subfolders) { subfolder.Accept(visitor); } }
/// <summary> /// Принимает посетителя (Visitor, GoF). /// </summary> /// <param name="visitor"></param> public abstract void Accept(IAddressableObjectVisitor visitor);