remove warning
[mono.git] / mcs / class / corlib / System / OperatingSystem.cs
index 51639066616625ce57eea4b6c1d7810ffdb957fb..1684631210e75dd000a3302b8b664c75d595f443 100644 (file)
@@ -5,10 +5,7 @@
 //   Jim Richardson (develop@wtfo-guru.com)
 //
 // (C) 2001 Moonlight Enterprises, All Rights Reserved
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
+// Copyright (C) 2004, 2006 Novell, Inc (http://www.novell.com)
 //
 // Permission is hereby granted, free of charge, to any person obtaining
 // a copy of this software and associated documentation files (the
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 //
 
-namespace System
-{
-       /// <summary>
-       /// Class representing a specific operating system version for a specific platform
-       /// </summary>
+using System.Runtime.InteropServices;
+using System.Runtime.Serialization;
+
+namespace System {
+
+#if NET_2_0
+       [ComVisible (true)]
+#endif
        [Serializable]
        public sealed class OperatingSystem : ICloneable
+#if NET_2_0
+               , ISerializable
+#endif
        {
                private System.PlatformID _platform;
                private Version _version;
+#if NET_2_0
+               private string _servicePack = String.Empty;
+#endif
 
                public OperatingSystem (PlatformID platform, Version version)
                {
@@ -63,11 +69,30 @@ namespace System
                        }
                }
 
+#if NET_2_0
+               public string ServicePack {
+                       get { return _servicePack; }
+               }
+
+               public string VersionString {
+                       get { return ToString (); }
+               }
+#endif
+
                public object Clone ()
                {
                        return new OperatingSystem (_platform, _version);
                }
 
+#if NET_2_0
+               public void GetObjectData (SerializationInfo info, StreamingContext context)
+               {
+                       info.AddValue ("_platform", _platform);
+                       info.AddValue ("_version", _version);
+                       info.AddValue ("_servicePack", _servicePack);
+               }
+#endif
+
                public override string ToString ()
                {
                        string str;