Пример #1
0
        /// -----------------------------------------------------------------------------------
        /// <summary>
        /// Initializes a new instance of the <see cref="Form1"/> class.
        /// </summary>
        /// -----------------------------------------------------------------------------------
        public Form1()
        {
            //
            // Required for Windows Form Designer support
            //
            InitializeComponent();
            AccessibleName = GetType().Name;
            m_parsers      = new List <ParserConnection>();

            m_selectedFdoCache = FdoCache.Create("TestLangProj");

            // per KenZ, convention is for server to already include the \\SILFW,e.g. HATTON1\\SILFW
            //m_parsers.Add(new ParserConnection(".\\SILFW", "test", "test"));
            m_parsers.Add(new ParserConnection(".\\SILFW", "TestLangProj", "TestLangProj", true));
            m_selectedParserConnection = m_parsers[0];
        }
Пример #2
0
		public void DisconnectFromParser()
		{
			CheckDisposed();

			if (Connection!=null)
			{
				Connection.Dispose();
			}
			Connection = null;
		}
Пример #3
0
		public void ConnectToParser(bool fParseAllWordforms)
		{
			CheckDisposed();

			if(Connection == null)
			{
				Connection = new ParserConnection(m_cache.ServerName, m_cache.DatabaseName,
					m_cache.LangProject.Name.AnalysisDefaultWritingSystem, fParseAllWordforms);
				m_mediator.PropertyTable.SetProperty("ParserConnection", Connection);
			}
		}
Пример #4
0
		/// <summary>
		/// Executes in two distinct scenarios.
		///
		/// 1. If disposing is true, the method has been called directly
		/// or indirectly by a user's code via the Dispose method.
		/// Both managed and unmanaged resources can be disposed.
		///
		/// 2. If disposing is false, the method has been called by the
		/// runtime from inside the finalizer and you should not reference (access)
		/// other managed objects, as they already have been garbage collected.
		/// Only unmanaged resources can be disposed.
		/// </summary>
		/// <param name="disposing"></param>
		/// <remarks>
		/// If any exceptions are thrown, that is fine.
		/// If the method is being done in a finalizer, it will be ignored.
		/// If it is thrown by client code calling Dispose,
		/// it needs to be handled by fixing the bug.
		///
		/// If subclasses override this method, they should call the base implementation.
		/// </remarks>
		protected virtual void Dispose(bool disposing)
		{
			Debug.WriteLineIf(!disposing, "****** Missing Dispose() call for " + GetType().Name + ". ****** ");
			// Must not be run more than once.
			if (m_isDisposed)
				return;

			// m_sda COM object block removed due to crash in Finializer thread LT-6124

			if (disposing)
			{
				// other clients may now parse
				// Dispose managed resources here.
				if (m_timer != null)
				{
					m_timer.Stop();
					m_timer.Tick -= m_timer_Tick;
				}
				if (m_sda != null)
					m_sda.RemoveNotification(this);
				m_mediator.RemoveColleague(this);
				if (m_parserConnection != null)
					m_parserConnection.Dispose();
				if (m_lock != null)
					m_lock.Dispose();
			}

			// Dispose unmanaged resources here, whether disposing is true or false.
			m_timer = null;
			m_sda = null;
			m_mediator = null;
			m_cache = null;
			m_traceSwitch = null;
			m_lock = null;
			m_parserConnection = null;

			m_isDisposed = true;
		}
Пример #5
0
		public void DisconnectFromParser()
		{
			CheckDisposed();

			StopUpdateProgressTimer();
			if (m_parserConnection != null)
			{
				m_parserConnection.Dispose();
				Unlock();
			}
			m_parserConnection = null;
		}
Пример #6
0
		public bool ConnectToParser()
		{
			CheckDisposed();

			if (m_parserConnection == null)
			{
				if (!GetLock())
					return false;
				// Don't bother if the lexicon is empty.  See FWNX-1019.
				if (m_cache.ServiceLocator.GetInstance<ILexEntryRepository>().Count == 0)
					return false;
				m_parserConnection = new ParserConnection(m_cache, m_mediator.IdleQueue);
			}
			StartProgressUpdateTimer();
			return true;
		}