public virtual void Emit(IEmitContext context, IProject project) { if (Configuration.GetBool(Constants.Configuration.InstallPackage.ShowDiagnostics)) { var treatWarningsAsErrors = Configuration.GetBool(Constants.Configuration.CheckProject.TreatWarningsAsErrors); Trace.TraceDiagnostics(project.Diagnostics, treatWarningsAsErrors); } project.Lock(Locking.ReadOnly); var emitters = Emitters.OrderBy(e => e.Sortorder).ToList(); var retries = new List <Tuple <IProjectItem, Exception> >(); Emit(context, project, emitters, retries); EmitRetry(context, emitters, retries); project.Lock(Locking.ReadWrite); }