public void AssembleProject(IProject project)
        {
            bool succeeded;

            lock (AssemblyLock)
            {
                succeeded = project.BuildSystem.Build();
            }

            if (succeeded && !string.IsNullOrEmpty(project.BuildSystem.ListOutput))
            {
                string fileText = _fileService.GetFileText(project.BuildSystem.ListOutput);
                _symbolService.ParseListFile(fileText);
            }

            if (succeeded && !string.IsNullOrEmpty(project.BuildSystem.LabelOutput))
            {
                string fileText = _fileService.GetFileText(project.BuildSystem.LabelOutput);
                _symbolService.ParseSymbolFile(fileText);
            }

            OnAssemblerProjectFinished(this, new AssemblyFinishProjectEventArgs(project, project.BuildSystem.OutputText, succeeded));
        }