public object ReadFile (FilePath file, Type expectedType, IProgressMonitor monitor) { if (file == null || monitor == null) return null; ProtobuildModule module; try { ProjectExtensionUtil.BeginLoadOperation(); module = new ProtobuildModule(); monitor.BeginTask(GettextCatalog.GetString("Loading Protobuild module: {0}", file), 1); var projectLoadMonitor = monitor as IProjectLoadProgressMonitor; if (projectLoadMonitor != null) projectLoadMonitor.CurrentSolution = module; LoadModule(module, file, monitor); } catch (Exception ex) { monitor.ReportError(GettextCatalog.GetString("Could not load Protobuild module: {0}", file), ex); throw; } finally { ProjectExtensionUtil.EndLoadOperation(); monitor.EndTask(); } return module; }
void LoadModule (ProtobuildModule module, FilePath file, IProgressMonitor monitor) { module.Load(file, monitor); }
private async Task<TargetEvaluationResult> RunDefinitionTarget(ProtobuildModule module, ProgressMonitor monitor, string target, ConfigurationSelector configuration, TargetEvaluationContext context) { var project = await module.GetShadowProject(this, monitor, configuration); var value = await project.RunTarget(monitor, target, configuration, context); if (target == ProjectService.BuildTarget) { module.OnDefinitionBuilt(this); } return value; }