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);
         }
     }
 }
Пример #2
0
 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());
     }
 }
Пример #3
0
        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(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 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();
        }