/// <summary>
        /// Dispose Method
        /// </summary>
        /// <param name="disposing">If should free managed objects</param>
        protected virtual void Dispose(bool disposing)
        {
            if (disposing)
            {
                if (m_eventLog != null)
                {
                    m_eventLog.Dispose();
                    m_eventLog = null;
                }

                if (m_propertyBagWriter != null)
                {
                    m_propertyBagWriter.Dispose();
                    m_propertyBagWriter = null;
                }
                if (m_pipeLine != null)
                {
                    m_pipeLine.Dispose();
                    m_pipeLine = null;
                }
                if (m_runSpace != null)
                {
                    m_runSpace.Close();
                    m_runSpace = null;
                }
            }
        }