void RemoveItem( string path, INodeFactory factory, bool recurse)
{
var remove = factory as IRemoveItem;
if (null == factory || null == remove)
{
WriteCmdletNotSupportedAtNodeError(path, ProviderCmdlet.RemoveItem, RemoveItemNotSupportedErrorID);
return;
}
if (!ShouldProcess(path, ProviderCmdlet.RemoveItem))
{
return;
}
try
{
DoRemoveItem(path, recurse, remove);
}
catch (Exception e)
{
WriteGeneralCmdletError(e, RemoveItemInvokeErrorID, path);
}
}