Example #1
0
        /// ------------------------------------------------------------------------------------
        /// <summary>
        /// This override loads the cache with the data from the given XML file.
        /// </summary>
        /// <returns>the FdoCache, now loaded</returns>
        /// ------------------------------------------------------------------------------------
        protected override FdoCache CreateCache()
        {
            // Get the full path to the given xml file
            // TODO: move some of this to a new DirectoryFinder.FWTestDirectory()
            string projdir        = Path.GetDirectoryName(DirectoryFinder.FwSourceDirectory);
            string testdir        = Path.Combine(projdir, "Test");
            string sourcePathname = Path.Combine(testdir, m_xmlProjectFilename);

            // Copy the given xml file to a writeable temp file
            string xmlTempFilename = "temp.xml";
            string tempPathname    = Path.Combine(testdir, xmlTempFilename);

            File.Copy(sourcePathname, tempPathname, true);

            // Start the cache using the temp xml file
            System.Diagnostics.Debug.WriteLine("loading project from " + m_xmlProjectFilename);
            //Logger.WriteEvent("loading project from " + m_xmlProjectFilename);
            DateTime beg = DateTime.Now;

            m_internalRestart = true;             //what does this mean in English?
            BackendBulkLoadDomain loadType = BackendBulkLoadDomain.All;
            FdoCache c = BootstrapSystem(FDOBackendProviderType.kXML, new object[] { tempPathname }, loadType);

            System.Diagnostics.Debug.WriteLine("project load time: " + (DateTime.Now - beg));
            //Logger.WriteEvent("project load time: " + (DateTime.Now - beg));
            return(c);
        }
		/// ------------------------------------------------------------------------------------
		/// <summary>
		/// Create a new instance.
		/// </summary>
		/// <param name="useMemoryWsManager">if set to <c>true</c> a memory-based writing system
		/// manager will be used.</param>
		/// <param name="bulkLoadDomain">The domain to bulk load.</param>
		/// <param name="projectId">the project identification</param>
		/// ------------------------------------------------------------------------------------
		public BackendStartupParameter(bool useMemoryWsManager, BackendBulkLoadDomain bulkLoadDomain,
			IProjectIdentifier projectId)
		{
			m_useMemoryWsManager = useMemoryWsManager;
			m_bulkLoadDomain = bulkLoadDomain;
			m_projectId = projectId;
		}
 /// ------------------------------------------------------------------------------------
 /// <summary>
 /// Create a new instance.
 /// </summary>
 /// <param name="useMemoryWsManager">if set to <c>true</c> a memory-based writing system
 /// manager will be used.</param>
 /// <param name="bulkLoadDomain">The domain to bulk load.</param>
 /// <param name="projectId">the project identification</param>
 /// ------------------------------------------------------------------------------------
 public BackendStartupParameter(bool useMemoryWsManager, BackendBulkLoadDomain bulkLoadDomain,
                                IProjectIdentifier projectId)
 {
     m_useMemoryWsManager = useMemoryWsManager;
     m_bulkLoadDomain     = bulkLoadDomain;
     m_projectId          = projectId;
 }
Example #4
0
        protected FdoCache BootstrapSystem(IProjectIdentifier projectId, BackendBulkLoadDomain loadType, FdoSettings settings)
        {
            var retval = m_internalRestart ? FdoCache.CreateCacheFromExistingData(projectId, "en", new DummyFdoUI(), FwDirectoryFinder.FdoDirectories, settings, new DummyProgressDlg()) :
                         FdoCache.CreateCacheWithNewBlankLangProj(projectId, "en", "fr", "en", new DummyFdoUI(), FwDirectoryFinder.FdoDirectories, settings);
            var dataSetup = retval.ServiceLocator.GetInstance <IDataSetup>();

            dataSetup.LoadDomain(loadType);
            return(retval);
        }
Example #5
0
        /// <summary>
        /// Actually create the system.
        /// Called by subclass overrides of CreateCache(), with parameters that suit
        /// the subclass.
        /// </summary>
        /// <param name="projectId"></param>
        /// <param name="loadType"></param>
        /// <returns>a working FdoCache</returns>
        protected FdoCache BootstrapSystem(IProjectIdentifier projectId, BackendBulkLoadDomain loadType)
        {
            // This thread helper will be disposed in FixtureTeardown along with the cache.
            var retval = m_internalRestart ? FdoCache.CreateCacheFromExistingData(projectId, "en", new DummyProgressDlg()) :
                         FdoCache.CreateCacheWithNewBlankLangProj(projectId, "en", "fr", "en", new ThreadHelper());
            var dataSetup = retval.ServiceLocator.GetInstance <IDataSetup>();

            dataSetup.LoadDomain(loadType);
            return(retval);
        }
        public void OnDemandLoadTest()
        {
            var originalLoadType = m_loadType;

            try
            {
                m_loadType = BackendBulkLoadDomain.None;
                RestartCache(false);

                var lp    = Cache.LanguageProject;
                var lexDb = lp.LexDbOA;
                Assert.IsNotNull(lexDb, "Null Lex DB.");
            }
            finally
            {
                m_loadType = originalLoadType;
                RestartCache(false);
            }
        }
Example #7
0
        /// <summary>
        /// Actually create the system.
        /// Called by subclass overrides of CreateCache(), with parameters that suit
        /// the subclass.
        /// </summary>
        /// <param name="projectId"></param>
        /// <param name="loadType"></param>
        /// <param name="settings"></param>
        /// <returns>a working LcmCache</returns>
        protected LcmCache BootstrapSystem(IProjectIdentifier projectId, BackendBulkLoadDomain loadType, LcmSettings settings)
        {
            LcmCache retval;

            if (m_internalRestart)
            {
                retval = LcmCache.CreateCacheFromExistingData(projectId, "en", new DummyLcmUI(), TestDirectoryFinder.LcmDirectories,
                                                              settings, new DummyProgressDlg());
            }
            else
            {
                retval = LcmCache.CreateCacheWithNewBlankLangProj(projectId, "en", "fr", "en", new DummyLcmUI(),
                                                                  TestDirectoryFinder.LcmDirectories, settings);
            }

            var dataSetup = retval.ServiceLocator.GetInstance <IDataSetup>();

            dataSetup.LoadDomain(loadType);
            return(retval);
        }
		public void OnDemandLoadTest()
		{
			var originalLoadType = m_loadType;
			try
			{
				m_loadType = BackendBulkLoadDomain.None;
				RestartCache(false);

				var lp = Cache.LanguageProject;
				var lexDb = lp.LexDbOA;
				Assert.IsNotNull(lexDb, "Null Lex DB.");
			}
			finally
			{
				m_loadType = originalLoadType;
				RestartCache(false);
			}
		}
Example #9
0
		/// <summary>
		/// Actually create the system.
		/// Called by subclass overrides of CreateCache(), with parameters that suit
		/// the subclass.
		/// </summary>
		/// <param name="projectId"></param>
		/// <param name="loadType"></param>
		/// <param name="settings"></param>
		/// <returns>a working FdoCache</returns>
		protected FdoCache BootstrapSystem(IProjectIdentifier projectId, BackendBulkLoadDomain loadType, FdoSettings settings)
		{
			var retval = m_internalRestart ? FdoCache.CreateCacheFromExistingData(projectId, "en", new DummyFdoUI(), FwDirectoryFinder.FdoDirectories, settings, new DummyProgressDlg()) :
				FdoCache.CreateCacheWithNewBlankLangProj(projectId, "en", "fr", "en", new DummyFdoUI(), FwDirectoryFinder.FdoDirectories, settings);
			var dataSetup = retval.ServiceLocator.GetInstance<IDataSetup>();
			dataSetup.LoadDomain(loadType);
			return retval;
		}