Пример #1
0
 public static void AnyFolders(IStorageProvider provider)
 {
     if (provider.IsFolderExits("container\\TestFolder\\TestFolder"))
     {
         provider.DeleteFolder("container\\TestFolder\\TestFolder");
     }
     provider.CreateFolder("container\\TestFolder\\TestFolder");
     Assert.IsTrue(provider.ListFolders("container\\TestFolder\\").Any());
     provider.DeleteFolder("container\\TestFolder\\TestFolder");
 }
 public void CreateFolderAndDeleteFolderTakesAnySlash()
 {
     Assert.Equal(_storageProvider.ListFolders(@"Subfolder1").Count(), 1);
     _storageProvider.CreateFolder(@"SubFolder1/SubSubFolder2");
     _storageProvider.CreateFolder(@"SubFolder1\SubSubFolder3");
     Assert.Equal(_storageProvider.ListFolders(@"Subfolder1").Count(), 3);
     _storageProvider.DeleteFolder(@"SubFolder1/SubSubFolder2");
     _storageProvider.DeleteFolder(@"SubFolder1\SubSubFolder3");
     Assert.Equal(_storageProvider.ListFolders(@"Subfolder1").Count(), 1);
 }
Пример #3
0
 public static void SuccessCreateFolder(IStorageProvider provider)
 {
     if (provider.IsFolderExits("container\\TestFolder"))
     {
         provider.DeleteFolder("container\\TestFolder");
     }
     provider.CreateFolder("container\\TestFolder");
     Assert.IsTrue(provider.IsFolderExits("container\\TestFolder"));
     provider.DeleteFolder("container\\TestFolder");
     Assert.IsFalse(provider.IsFolderExits("container\\TestFolder"));
 }
Пример #4
0
        //public void Delete(int hashCode)
        //{
        //    DeleteFiles(GetRecords(hashCode));

        //    TriggerCacheChangedSignal(hashCode);
        //}

        public void Empty()
        {
            var files = _fileRepository.Table.ToList();

            DeleteFiles(files);

            // These will throw an exception if a folder doesn't exist. Since currently there is no method
            // in IStorageProvider to check the existence of a file/folder (see: http://orchard.codeplex.com/discussions/275146)
            // this is the only way to deal with it.
            // We don't check if there were any files in a DB here, we try to delete even if there weren't. This adds robustness: with emptying the cache
            // everything can be reset, even if the user or a deploy process manipulated the DB or the file system.
            try
            {
                _storageProvider.DeleteFolder(_scriptsPath);
                Thread.Sleep(300); // This is to ensure we don't get an "access denied" when deleting the root folder
            }
            catch (Exception ex)
            {
                if (ex.IsFatal())
                {
                    throw;
                }
            }

            try
            {
                _storageProvider.DeleteFolder(_stylesPath);
                Thread.Sleep(300);
            }
            catch (Exception ex)
            {
                if (ex.IsFatal())
                {
                    throw;
                }
            }

            try
            {
                _storageProvider.DeleteFolder(_rootPath);
            }
            catch (Exception ex)
            {
                if (ex.IsFatal())
                {
                    throw;
                }
            }

            _combinatorEventHandler.CacheEmptied();
        }
Пример #5
0
        public void AppendModel(ContentItem c)
        {
            var m = c.As <BlockModelPart>();

            string            statusMessage = "";
            bool              completed     = false;
            BaseImportTools   bit           = new BaseImportTools();
            string            targetFolder;
            bool              attmemptModelLoad;
            var               bmFileName   = ExtractBlockModelFromZip(m.BmFileName, out targetFolder, out attmemptModelLoad);
            IStorageFile      bmFile       = _storageProvider.GetFile(bmFileName);
            Stream            bmFileStream = bmFile.OpenRead();
            ModelImportStatus mos          = new ModelImportStatus();

            try
            {
                // Special append method for GF requirements - contains X, Y, Z, and value to append.
                // target model must have matching X, Y and Z centroids.
                // auto generate a format defintion based on Goldfields typical input column data
                var opts = new TransactionOptions();
                opts.IsolationLevel = System.Transactions.IsolationLevel.ReadUncommitted;
                using (new TransactionScope(TransactionScopeOption.Suppress, opts))
                {
                    mos = bit.PerformBMAppend(bmFileStream, m.BmGuid, m.Alias, m.ColumnNameToAdd, m.ColumnIndexToAdd, _users.ApplicationConnectionString, ',');
                    mos.importTextFileName = m.BmFileName;
                    mos.targetModelName    = m.Alias;
                }
                statusMessage += string.Format("Successfully appended data to block model:\n{0} - {1}\n\nFrom file:{2}\n\n", m.Alias, m.BmGuid, m.BmFileName);
                completed      = true;
            }
            catch (Exception ex)
            {
                statusMessage += string.Format("Error appending data to block model:\n{0} - {1}\n\nFrom file:{2}\n\nError:\n{3}\n\n", m.Alias, m.BmGuid, m.BmFileName, ex.ToString());
            }
            finally {
                statusMessage += mos.GenerateStringMessage();
                bmFileStream.Close();
                _storageProvider.DeleteFile(bmFileName);
                _storageProvider.DeleteFolder(targetFolder);
            }
            statusMessage += string.Format("Time Elapsed: {0}\n\n", m.Processed.HasValue ? (DateTime.UtcNow - m.Processed.Value).ToString(@"hh\h\:mm\m\:ss\s\:fff\m\s") : "Unknown");

            Logger.Information(statusMessage);

            _users.EmailUsers(m.Recipients.SplitStringArray(), completed ? "Model Append Succeeded" : "Model Append Failed", statusMessage);
        }
Пример #6
0
        public void RemoveSnapshot(Uri uri)
        {
            var folderPath = _storageProvider.Combine("_ArchivedLinks", uri.ToString().GetHashCode().ToString());

            if (_storageProvider.FolderExists(folderPath))
            {
                _storageProvider.DeleteFolder(folderPath);
            }
        }
 public static void TryDeleteFolder(this IStorageProvider storageProvider, string path)
 {
     try {
         if (storageProvider.FolderExists(path))
         {
             storageProvider.DeleteFolder(path);
         }
     }
     catch {}
 }
Пример #8
0
        public void Empty()
        {
            _sessionLocator.For(typeof(CombinedFileRecord)).CreateQuery("DELETE FROM " + typeof(CombinedFileRecord).FullName).ExecuteUpdate();

            if (_storageProvider.FolderExists(RootPath))
            {
                _storageProvider.DeleteFolder(RootPath);
            }

            _combinatorEventHandler.CacheEmptied();
        }
        // Use this action to remove everything created with Create() so you can run the latter again.
        public string CleanUp()
        {
            // Deleting the folder also deletes every file inside it, surprisingly :-).
            if (_storageProvider.FolderExists(DemoFolderPath))
            {
                _storageProvider.DeleteFolder(DemoFolderPath);
            }

            // But we could also delete individual files of course.
            //_storageProvider.DeleteFile(DemoFile1Path);

            return("Everything OK");
        }
Пример #10
0
        /// <summary>
        /// Deletes a media folder.
        /// </summary>
        /// <param name="folderPath">The path to the folder to be deleted.</param>
        public void DeleteFolder(string folderPath)
        {
            Argument.ThrowIfNullOrEmpty(folderPath, "folderPath");

            try {
                var contentManager = _tomeltServices.ContentManager;
                var mediaParts     = BuildGetMediaContentItemsQuery(contentManager, folderPath, true).List();
                foreach (var mediaPart in mediaParts)
                {
                    contentManager.Remove(mediaPart.ContentItem);
                }

                _storageProvider.DeleteFolder(folderPath);
            }
            catch (Exception) {
                _tomeltServices.TransactionManager.Cancel();
                throw;
            }
        }
        /// <summary>
        /// Deletes a media folder.
        /// </summary>
        /// <param name="folderPath">The path to the folder to be deleted.</param>
        public void DeleteFolder(string folderPath)
        {
            Argument.ThrowIfNullOrEmpty(folderPath, "folderPath");

            _storageProvider.DeleteFolder(folderPath);
        }
 public void StorageUniversalTest_TearDown()
 {
     SUT.ListFiles(TEST_FOLDER).ToList().ForEach(f => SUT.DeleteFile(f.GetPath()));
     SUT.DeleteFolder(TEST_FOLDER);
 }
Пример #13
0
 public bool DeleteFolder(string path)
 {
     return(_storage.DeleteFolder(path));
 }