/// <summary> /// Create create directory op. /// </summary> /// <param name="session"></param> /// <param name="filesystem"></param> /// <param name="path"></param> /// <param name="option"></param> /// <param name="policy">(optional) Responds to <see cref="OperationPolicy.DstThrow"/>, <see cref="OperationPolicy.DstSkip"/> and <see cref="OperationPolicy.DstOverwrite"/> policies</param> public CreateDirectory(IOperationSession session, IFileSystem filesystem, string path, IOption option = null, OperationPolicy policy = OperationPolicy.Unset) : base(session, policy) { this.fileSystem = filesystem ?? throw new ArgumentNullException(nameof(filesystem)); this.path = path ?? throw new ArgumentNullException(nameof(path)); // Can rollback if can delete this.CanRollback = filesystem.CanDelete(); this.Option = option; }