Ejemplo n.º 1
0
        /// <summary>
        /// Build Finished Event handler, logs to build log file.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void eventSource_BuildFinishedEvent(object sender, BuildFinishedEventArgs e)
        {
            LogToBuildLog(e.Message);

            if (logmemorystream != null)
            {
                MSBuildEngineCommonHelper.WritetoFilefromMemory(ref logmemorystream, this.buildlogfile);
            }
            if (errormemorystream != null)
            {
                MSBuildEngineCommonHelper.WritetoFilefromMemory(ref errormemorystream, this.builderrorfile);
            }
            if (warningmemorystream != null)
            {
                MSBuildEngineCommonHelper.WritetoFilefromMemory(ref warningmemorystream, this.buildwaringfile);
            }

            projectfilestack = null;
            currentduplicateerrorwarningid = null;
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Log to Build warning file and to Build Log file.
        /// </summary>
        /// <param name="e"></param>
        private void LogToBuildWarning(BuildWarningEventArgs e)
        {
            if (e != null)
            {
                StringBuilder sb            = new StringBuilder();
                StringBuilder tab           = new StringBuilder();
                StringBuilder warningstring = new StringBuilder();

                //if (String.IsNullOrEmpty(buildwaringfile) == false)
                //{
                //    buildwarning = new StreamWriter(buildwaringfile, true);
                //}

                for (int i = 0; i < tabcount; i++)
                {
                    tab.Append("\t");
                }

                //sb.AppendFormat("{0} - ",e.Timestamp.ToString());

                string currentprojfile = null;
                if (projectfilestack.Count > 0)
                {
                    currentprojfile = projectfilestack.Peek().ToString();
                }

                if (e.File != null && e.File.ToLowerInvariant() != currentprojfile)
                {
                    sb.Append(e.File.ToString() + " ");
                    //if (buildwarning != null)
                    //{
                    //						buildwarning.Write(PathSW.GetFullPath(e.File.ToString()) + " ");
                    //buildwarning.Write(currentprojfile + " : " + e.File.ToString() + " ");
                    warningstring.Append(currentprojfile + " : " + e.File.ToString() + " ");
                    //}

                    if (e.LineNumber >= 0 && e.ColumnNumber >= 0)
                    {
                        sb.Append("(" + e.LineNumber + "," + e.ColumnNumber + ") " + " :");
                        //if (buildwarning != null)
                        //{
                        //    buildwarning.Write("(" + e.LineNumber + "," + e.ColumnNumber + ") " + " :");
                        //}
                        warningstring.Append("(" + e.LineNumber + "," + e.ColumnNumber + ") " + " :");
                    }
                }
                else
                {
                    sb.AppendFormat("{0} - :", PathSW.GetFileName(currentprojfile));
                    //if (buildwarning != null)
                    //{
                    //    buildwarning.Write("{0} - :", currentprojfile);
                    //}
                    warningstring.AppendFormat("{0} - :", currentprojfile);
                }

                if (e.Code != null)
                {
                    sb.Append(" warning " + e.Code + ": ");
                    //if (buildwarning != null)
                    //{
                    //    buildwarning.Write(" warning " + e.Code + ": ");
                    //}
                    warningstring.Append(" warning " + e.Code + ": ");
                }

                sb.Append(e.Message);
                //if (buildwarning != null)
                //{
                //    buildwarning.Write(e.Message);
                //    buildwarning.WriteLine();
                //}
                warningstring.Append(e.Message + "\n");

                //if (buildwarning != null)
                //{
                //    //buildwarning.WriteLine(sb.ToString());
                //    buildwarning.Close();
                //    buildwarning = null;
                //}

                if (String.IsNullOrEmpty(buildwaringfile) == false)
                {
                    MSBuildEngineCommonHelper.SaveToMemory(warningstring.ToString(), ref warningmemorystream, buildwaringfile);
                    MSBuildEngineCommonHelper.WritetoFilefromMemory(ref warningmemorystream, buildwaringfile);
                }

                MSBuildEngineCommonHelper.LogWarning = sb.ToString();
                LogToBuildLog(tab.ToString() + sb.ToString());

                sb  = null;
                tab = null;
            }
        }