Пример #1
0
 public void DeleteAllFilesFromContainer()
 {
     foreach (Guid dataIdentifier in FileStorageFacade.GetAllDataIdentifiersBasedUponFileStorageIndexFile(FileStorageName))
     {
         FileStorageFacade.DeleteDataIdentifier(FileStorageName, dataIdentifier, DeleteFileBehaviour.IgnoreWhenNotExists);
     }
 }
Пример #2
0
        public static void GetAll
        (
            [Required] string fileStorageName,
            [Required] string fileExtension
        )
        {
            try
            {
                var startDateTime    = DateTime.Now;
                var progressNotifier = new ProgressNotifier("RetrieveAll");
                var dataIdentifiers  = FileStorageFacade.GetAllDataIdentifiersBasedUponFileStorageIndexFile(fileStorageName, new FileStorageHandler.ExposeProgressDelegate(progressNotifier.ShowProgress));

                Console.WriteLine("Dumping ...");
                foreach (var currentdataIdentifier in dataIdentifiers)
                {
                    var outputFile = currentdataIdentifier + "." + fileExtension;
                    FileStorageFacade.ExportToFile(fileStorageName, currentdataIdentifier, outputFile, ExportFileBehaviour.ThrowExceptionWhenAlreadyExists);
                    Console.Write(".");
                }
                Console.WriteLine("[Finished]");
                Console.WriteLine(string.Format("{0} files found", dataIdentifiers.LongCount()));
                var timeSpan = DateTime.Now - startDateTime;
                Console.WriteLine(string.Format("This operation took {0} msecs", (Int64)timeSpan.TotalMilliseconds));
            }
            catch (Exception e)
            {
                Console.WriteLine(string.Format("An error occured; {0}", e.Message));
            }
        }
Пример #3
0
        private static void RetrieveObjects()
        {
            var dataIdentifiers = FileStorageFacade.GetAllDataIdentifiersBasedUponFileStorageIndexFile(fileStorageName);

            foreach (var dataIdentifier in dataIdentifiers)
            {
                try
                {
                    object deserializedObject = FileStorageFacade.GetObjectData(fileStorageName, dataIdentifier);
                    if (deserializedObject == null)
                    {
                        Console.WriteLine(string.Format("{0} is null", dataIdentifier));
                    }
                    else
                    {
                        if (deserializedObject is DummyObject)
                        {
                            DummyObject dummyObject = deserializedObject as DummyObject;
                            Console.WriteLine(string.Format("{0} is a DummyObject: color {1} name {2}", dataIdentifier, dummyObject.Color, dummyObject.Name));
                        }
                        else
                        {
                            Console.WriteLine(string.Format("{0} is an object, of type other than DummyObject", dataIdentifier));
                        }
                    }
                }
                catch (Exception)
                {
                    Console.WriteLine(string.Format("{0} is not an object", dataIdentifier));
                }
            }
        }
Пример #4
0
        protected void Persist_Button_Click(object sender, EventArgs e)
        {
            Guid dataIdentifier = Guid.NewGuid();

            if (FileStorageFacade.FileCountBasedUponFileStorageIndexFile(fileStorageName) > maxAllowed)
            {
                foreach (var guid in FileStorageFacade.GetAllDataIdentifiersBasedUponFileStorageIndexFile(fileStorageName))
                {
                    FileStorageFacade.DeleteDataIdentifier(fileStorageName, guid, DeleteFileBehaviour.ThrowExceptionWhenNotExists);
                }

                InfoLabel.Text = InfoLabel.Text + "Storage was wiped to prevent generating too much traffic";
            }

            try
            {
                FileStorageFacade.StoreHttpRequest(fileStorageName, dataIdentifier, urlToPersist_TextBox.Text, null, AddFileBehaviour.ThrowExceptionWhenAlreadyExists, "NFileStorage");
                RedrawPicturesInFileStorage();
                InfoLabel.Text += string.Format("<br>File {0} was persisted.", dataIdentifier);
            }
            catch (Exception exception)
            {
                InfoLabel.Text = InfoLabel.Text + string.Format("Are you sure the URL was valid?<br><small>Caught exception; {0}</small>", exception.Message);
            }
        }
Пример #5
0
 private static void DeleteAllFilesFromContainer()
 {
     foreach (Guid dataIdentifier in FileStorageFacade.GetAllDataIdentifiersBasedUponFileStorageIndexFile(fileStorageName))
     {
         FileStorageFacade.DeleteDataIdentifier(fileStorageName, dataIdentifier, DeleteFileBehaviour.IgnoreWhenNotExists);
     }
     Console.WriteLine(FileStorageFacade.GetInfo(fileStorageName));
 }
Пример #6
0
        private static void ListAllfilesInContainer()
        {
            Console.WriteLine(FileStorageFacade.GetInfo(fileStorageName));

            foreach (Guid dataIdentifier in FileStorageFacade.GetAllDataIdentifiersBasedUponFileStorageIndexFile(fileStorageName))
            {
                Console.WriteLine(dataIdentifier.ToString());
            }
        }
Пример #7
0
        private static void DumpContainerFilesToFileSystem()
        {
            var dataIdentifiers = FileStorageFacade.GetAllDataIdentifiersBasedUponFileStorageIndexFile(fileStorageName);

            foreach (var dataIdentifier in dataIdentifiers)
            {
                var outputFile = dataIdentifier + ".jpg";
                Console.WriteLine(string.Format("Exporting {0}", outputFile));
                FileStorageFacade.ExportToFile(fileStorageName, dataIdentifier, outputFile, ExportFileBehaviour.SkipWhenAlreadyExists);
            }
        }
Пример #8
0
        public static void Count
        (
            [Required] string fileStorageName
        )
        {
            try
            {
                ProgressNotifier progressNotifier = new ProgressNotifier("Count");

                DateTime    startDateTime   = DateTime.Now;
                List <Guid> dataIdentifiers = FileStorageFacade.GetAllDataIdentifiersBasedUponFileStorageIndexFile(fileStorageName, new FileStorageHandler.ExposeProgressDelegate(progressNotifier.ShowProgress));
                Console.WriteLine(string.Format("{0} files found", dataIdentifiers.LongCount()));
                TimeSpan timeSpan = DateTime.Now - startDateTime;
                Console.WriteLine(string.Format("This operation took {0} msecs", (Int64)timeSpan.TotalMilliseconds));
            }
            catch (Exception e)
            {
                Console.WriteLine(string.Format("An error occured; {0}", e.Message));
            }
        }
Пример #9
0
        public static void Dir
        (
            [Required] string fileStorageName,
            [Required] string quickOrVerbose
        )
        {
            bool verbose = quickOrVerbose.ToLower().Equals("verbose");

            var sourceFileStorageHandler = FileStorageHandler.Open(fileStorageName);
            var features = FileStorageFeatureFactory.CreateFileStorageFeatureList(sourceFileStorageHandler.DataFileHeaderStruct.fileStorageFeatures);

            if (verbose && !sourceFileStorageHandler.SupportsFeature(FileStorageFeatureEnum.StoreMetaData))
            {
                Console.WriteLine();
                Console.WriteLine("The datastore does not support metadata feature and thus the verbose output is not available.");
                Console.WriteLine("Hint: Use the replicate option to promote this FileStorage to one that does support this feature.");
                Console.WriteLine("Press a key to continue outputting quick dir");
                Console.ReadKey();
                verbose = false;
            }
            else
            {
                Console.WriteLine(sourceFileStorageHandler.DataFileHeaderStruct.fileStorageFeatures);
            }

            Int64 totalSize = 0;

            try
            {
                ProgressNotifier progressNotifier = new ProgressNotifier("Dir");
                var         count           = 0;
                DateTime    startDateTime   = DateTime.Now;
                List <Guid> dataIdentifiers = FileStorageFacade.GetAllDataIdentifiersBasedUponFileStorageIndexFile(fileStorageName, new FileStorageHandler.ExposeProgressDelegate(progressNotifier.ShowProgress));

                if (verbose)
                {
                    Console.WriteLine("Data identifier                      | Text identifier  | Creation date     | Size ");
                    Console.WriteLine("-------------------------------------+------------------+-------------------+-----------------");
                }
                else
                {
                    Console.WriteLine("Data identifier                      | Text identifier   ");
                    Console.WriteLine("-------------------------------------+-------------------");
                }


                foreach (Guid currentDataIdentifier in dataIdentifiers)
                {
                    string interpretedString = currentDataIdentifier.ToNFileStorageOrigFileName();

                    if (verbose)
                    {
                        var   metaDataContainer = FileStorageFacade.GetMetaData(fileStorageName, currentDataIdentifier);
                        Int64 binarySizeInBytes = metaDataContainer.BinarySizeInBytes;
                        totalSize += binarySizeInBytes;
                        DateTime creationDate = metaDataContainer.CreationDateUTC;
                        Console.WriteLine(string.Format("{0} | {1} | {2} | {3:0,0,0,0}", currentDataIdentifier, interpretedString, creationDate.ToString("yyyyMMdd hh:mm:ss"), binarySizeInBytes));
                    }
                    else
                    {
                        Console.WriteLine(string.Format("{0} | {1} | ", currentDataIdentifier, interpretedString));
                    }

                    count++;
                }

                if (verbose)
                {
                    Console.WriteLine(string.Format("{0} files found ({1:0,0,0,0} bytes)", count, (int)totalSize));
                }
                else
                {
                    Console.WriteLine(string.Format("{0} files found", count));
                }

                TimeSpan timeSpan = DateTime.Now - startDateTime;
                Console.WriteLine(string.Format("This operation took {0} msecs", (Int64)timeSpan.TotalMilliseconds));
            }
            catch (Exception e)
            {
                Console.WriteLine(string.Format("An error occured; {0}", e.Message));
                Console.WriteLine(string.Format("An error occured; {0}", e.StackTrace));
            }
        }
Пример #10
0
 private void RedrawPicturesInFileStorage()
 {
     FileStorageContentRepeater.DataSource = FileStorageFacade.GetAllDataIdentifiersBasedUponFileStorageIndexFile(fileStorageName).Take(maxAllowed);
     FileStorageContentRepeater.DataBind();
 }