Add more classes
[mono.git] / mcs / class / System / System.Net.Sockets / MulticastOption.cs
1 //
2 // System.Net.Sockets.MulticastOption.cs
3 //
4 // Author:
5 //   Andrew Sutton
6 //
7 // (C) Andrew Sutton
8 //
9
10 using System;
11 using System.Net;
12
13 namespace System.Net.Sockets
14 {
15         // <remarks>
16         //   Encapsulates a multicast option
17         // </remarks>
18         public class MulticastOption
19         {
20                 protected IPAddress group;
21                 protected IPAddress local;
22
23                 public MulticastOption (IPAddress grp)
24                 {
25                         group = grp;
26                 }
27
28                 public MulticastOption (IPAddress grp, IPAddress addr)
29                 {
30                         group = grp;
31                         local = addr;
32                 }
33
34                 public IPAddress Group
35                 {
36                         get { return group; }
37                         set { group = value; }
38                 }
39
40                 public IPAddress LocalAddress
41                 {
42                         get { return local };
43                         set { local = value; };
44                 }
45
46                 public override bool Equals (object o)
47                 {
48                         return group.Equals (o.group) && local.Equals (o.local);
49                 }
50
51                 public override int GetHashCode()
52                 {
53                         return group.GetHashCode();
54                 }
55
56                 public override string ToString()
57                 {
58                         return group.ToString() + " " + local.ToString();
59                 }
60         }
61 }