public static object Delete(IHierarchyItem item, string lockToken) { try { item.Delete(lockToken); return(null); } catch (Exception ex) { return(ex); } }
public static object Delete(IHierarchyItem item, LockUriTokenPair[] lockUriTokenPairs) { try { item.Delete(lockUriTokenPairs); return(null); } catch (Exception ex) { return(ex); } }
/// <summary> /// Copies this folder to another folder with option to rename it. /// </summary> /// <param name="destFolder">Folder to copy this folder to.</param> /// <param name="destName">New name of this folder.</param> /// <param name="deep">Whether children shall be copied.</param> /// <param name="multistatus">Container for errors. We put here errors which occur with /// individual items being copied.</param> public override void CopyTo(IItemCollection destFolder, string destName, bool deep, MultistatusException multistatus) { DavFolder destDavFolder = destFolder as DavFolder; if (destFolder == null) { throw new DavException("Destination folder doesn't exist", DavStatus.CONFLICT); } if (!destDavFolder.ClientHasToken()) { throw new LockedException("Doesn't have token for destination folder."); } if (isRecursive(destDavFolder)) { throw new DavException("Cannot copy folder to its subtree", DavStatus.FORBIDDEN); } IHierarchyItem destItem = destDavFolder.FindChild(destName); if (destItem != null) { try { destItem.Delete(multistatus); } catch (DavException ex) { multistatus.AddInnerException(destItem.Path, ex); return; } } DavFolder newDestFolder = CopyThisItem(destDavFolder, null, destName); // copy children if (deep) { foreach (IHierarchyItem child in GetChildren(new PropertyName[0])) { var dbchild = child as DavHierarchyItem; try { dbchild.CopyTo(newDestFolder, child.Name, deep, multistatus); } catch (DavException ex) { multistatus.AddInnerException(dbchild.Path, ex); } } } }