Merge pull request #2373 from akoeplinger/servicemodel-tcpreplychannel-race
[mono.git] / mcs / class / Microsoft.Build.Framework / Microsoft.Build.Framework / BuildWarningEventArgs.cs
index 0d7c8f40c8d5f7edda7d7ac78a6109792f3a97e5..b959fa8d3664cdc9905593f4b54593dc7593e029 100644 (file)
 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
-#if NET_2_0
-
 using System;
 
 namespace Microsoft.Build.Framework {
        [Serializable]
-       public class BuildWarningEventArgs : BuildEventArgs {
+       public class BuildWarningEventArgs
+                       : LazyFormattedBuildEventArgs {
        
                string  subcategory;
                string  code;
@@ -41,7 +40,8 @@ namespace Microsoft.Build.Framework {
                int     columnNumber;
                int     endLineNumber;
                int     endColumnNumber;
-               
+               string projectFile;
+
                protected BuildWarningEventArgs ()
                {
                }
@@ -65,6 +65,33 @@ namespace Microsoft.Build.Framework {
                        this.endColumnNumber = endColumnNumber;
                }
 
+               public BuildWarningEventArgs (string subcategory, string code,
+                               string file, int lineNumber, int columnNumber,
+                               int endLineNumber, int endColumnNumber, string message,
+                               string helpKeyword, string senderName, DateTime eventTimestamp)
+                       : this (subcategory, code, file, lineNumber, columnNumber,
+                               endLineNumber, endColumnNumber, message, helpKeyword,
+                               senderName, eventTimestamp, new object[0])
+               {
+               }
+
+               public BuildWarningEventArgs (string subcategory, string code,
+                               string file, int lineNumber, int columnNumber, int endLineNumber,
+                               int endColumnNumber, string message, string helpKeyword,
+                               string senderName, DateTime eventTimestamp,
+                               params object[] messageArgs)
+                       : base (message, helpKeyword, senderName, eventTimestamp, messageArgs)
+               {
+                       this.subcategory = subcategory;
+                       this.code = code;
+                       this.file = file;
+                       this.lineNumber = lineNumber;
+                       this.columnNumber = columnNumber;
+                       this.endLineNumber = endLineNumber;
+                       this.endColumnNumber = endColumnNumber;
+
+               }
+
                public string Code {
                        get {
                                return code;
@@ -106,7 +133,10 @@ namespace Microsoft.Build.Framework {
                                return subcategory;
                        }
                }
+
+               public string ProjectFile {
+                       get { return projectFile; }
+                       set {  projectFile = value; }
+               }
        }
 }
-
-#endif
\ No newline at end of file