public Folder Delete(Guid libraryId, FolderGetOptions options)
        {
            var folder = Get(libraryId, options);

            if (folder != null)
            {
                var url = !String.IsNullOrEmpty(options.SPWebUrl) ? options.SPWebUrl : GetUrl(libraryId);
                folders.Delete(url, libraryId, options.Path);
                ExpireTags(libraryId);
            }
            return(folder);
        }
        public Folder GetParent(Guid libraryId, FolderGetOptions options)
        {
            var cacheId   = ParentFolderCacheKey(libraryId, options.Path);
            var folderBox = (CacheBox <Folder>)cacheService.Get(cacheId, CacheScope.Context | CacheScope.Process);

            if (folderBox == null)
            {
                var url    = !string.IsNullOrEmpty(options.SPWebUrl) ? options.SPWebUrl : GetUrl(libraryId);
                var folder = folders.GetParent(url, libraryId, options.Path);
                folderBox = new CacheBox <Folder>(folder);
                cacheService.Put(cacheId, folderBox, CacheScope.Context | CacheScope.Process, new[] { Tag(libraryId) }, CacheTimeOut);
            }
            return(folderBox.Data);
        }