コード例 #1
0
ファイル: PersistenceApi.cs プロジェクト: ArtiDi/HTM.Net
            public Dictionary <string, DateTime> ListCheckPointFiles()
            {
                Dictionary <string, DateTime> chkPntFiles;

                try
                {
                    //readMonitor.lock () ;
                    String        path      = Environment.CurrentDirectory + "\\" + serialConfig.GetFileDir();
                    DirectoryInfo customDir = new DirectoryInfo(path);

                    chkPntFiles = customDir.GetFiles()
                                  .Where(f => f.FullName.IndexOf(serialConfig.GetCheckPointFileName()) != -1)
                                  .OrderBy(f => f.CreationTime)
                                  .ToDictionary(f => f.FullName, f => f.CreationTime);
                }
                catch (Exception e)
                {
                    throw;
                }
                finally
                {
                    //readMonitor.unlock();
                }

                return(chkPntFiles);
            }
コード例 #2
0
ファイル: PersistenceApi.cs プロジェクト: ArtiDi/HTM.Net
            private FileInfo EnsurePathExists(SerialConfig config, String fileName)
            {
                FileInfo serializedFile = null;

                try
                {
                    //writeMonitor.lock () ;

                    String        path      = Environment.CurrentDirectory + "\\" + config.GetFileDir();
                    DirectoryInfo customDir = new DirectoryInfo(path);
                    // Make sure container directory exists
                    Directory.CreateDirectory(customDir.FullName);

                    // Check to make sure the fileName doesn't already include the full path.
                    serializedFile = new FileInfo(fileName.IndexOf(customDir.FullName) != -1 ?
                                                  fileName : customDir.FullName + "\\" + fileName);
                    if (!serializedFile.Exists)
                    {
                        using (serializedFile.Create())
                        {
                            // just create it.
                        }
                    }
                }
                catch (Exception io)
                {
                    throw;
                }
                finally
                {
                    //writeMonitor.unlock();
                }

                return(serializedFile);
            }
コード例 #3
0
ファイル: PersistanceAPITest.cs プロジェクト: ArtiDi/HTM.Net
        public void TestEnsurePathExists()
        {
            SerialConfig    config  = new SerialConfig("testEnsurePathExists", SerialConfig.SERIAL_TEST_DIR);
            IPersistenceAPI persist = Persistence.Get();

            persist.SetConfig(config);

            try
            {
                ((Persistence.PersistenceAccess)persist).EnsurePathExists(config);
            }
            catch (Exception e) { Assert.Fail(); }

            FileInfo f1 = new FileInfo(Environment.CurrentDirectory + "\\" + config.GetFileDir() + "\\" + "testEnsurePathExists");

            Assert.IsTrue(f1.Exists);
        }