private void Unclone(Item item) { if (item.IsClone) { var clone = new CloneItem(item); var fullItem = clone.Unclone(); if (PassThru) { WriteItem(fullItem); } } else { if (!item.IsItemClone) { WriteError(typeof(InvalidTypeException), $"Item `{item.GetProviderPath()}` is not a clone.", ErrorIds.InvalidItemType, ErrorCategory.InvalidType, item); } } if (Recurse) { foreach (Item child in item.Children) { Unclone(child); } } }
protected override void ProcessItem(Item item) { if (!item.IsItemClone) { WriteError(typeof(ArgumentException), "The specified item is not a clone.", ErrorIds.InvalidItemType, ErrorCategory.InvalidArgument, null); return; } if (ShouldProcess(item.GetProviderPath(), "Convert item clone to full item")) { var clone = new CloneItem(item); WriteItem(clone.Unclone()); } }
protected void UncloneItemRecursive(Item item) { if (item.IsClone) { var clone = new CloneItem(item); clone.Unclone(); } foreach (Item child in item.Children) { UncloneItemRecursive(child); } }
protected override void ProcessItem(Item item) { if (!item.IsItemClone) { WriteError ( new ErrorRecord ( new PSArgumentException("The supplied Item is not a clone!"), "supplied_item_is_not_a_clone", ErrorCategory.InvalidArgument, null ) ); return; } if (ShouldProcess(item.GetProviderPath(), "Convert item clone to full item")) { var clone = new CloneItem(item); WriteItem(clone.Unclone()); } }
private void UncloneItem([NotNull] Item clone) { var cloneItem = new CloneItem(clone); cloneItem.Unclone(); }