/// <summary> /// 添加一个 ExtractItem 项。 /// </summary> /// <param name="mode">提取模式。</param> /// <param name="path">提取所在路径。</param> /// <param name="owner">拥有该提取项的设备。</param> /// <returns>ExtractItem 类型实例。</returns> public ExtractItem AddExtract(String mode, String path, DeviceExtraction owner) { ExtractItem item = ExtractItem.New(mode, path, owner); AddExtract(item, owner); return(item); }
/// <summary> /// 移除一个 ExtractItem 项。 /// </summary> /// <param name="item">提取项。</param> /// <param name="owner">拥有该提取项的设备。</param> /// <returns>如果该提取项并不存在,则忽略并返回false;否则移除并返回true。</returns> public Boolean RemoveExtract(ExtractItem item, DeviceExtraction owner) { if (item == null) { return(false); } IEnumerable <ExtractItem> extractItems = GetAllExtractItems(owner); ExtractItem found = extractItems.SingleOrDefault(x => x == item); if (found == null) { return(false); } item.Element.Remove(); return(true); }
/// <summary> /// 添加一个 ExtractItem 项。 /// </summary> /// <param name="item">提取项。</param> /// <param name="owner">拥有该提取项的设备。</param> /// <returns>如果已存在相同的提取项,则忽略并返回false;否则添加并返回true。</returns> public Boolean AddExtract(ExtractItem item, DeviceExtraction owner) { if (item == null) { return(false); } if (!item.IsValid) { return(false); } IEnumerable <ExtractItem> extractItems = GetAllExtractItems(owner); ExtractItem found = extractItems.SingleOrDefault(x => x == item); if (found != null) { return(false); } _itemGroup.Add(item.Element); return(true); }