Copied remotely
[mono.git] / mcs / class / Novell.Directory.Ldap / Novell.Directory.Ldap.Events / LdapEventArgs.cs
1 /******************************************************************************
2 * The MIT License
3 * Copyright (c) 2003 Novell Inc.  www.novell.com
4
5 * Permission is hereby granted, free of charge, to any person obtaining  a copy
6 * of this software and associated documentation files (the Software), to deal
7 * in the Software without restriction, including  without limitation the rights
8 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 
9 * copies of the Software, and to  permit persons to whom the Software is 
10 * furnished to do so, subject to the following conditions:
11
12 * The above copyright notice and this permission notice shall be included in 
13 * all copies or substantial portions of the Software.
14
15 * THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 
16 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 
17 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 
19 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 * SOFTWARE.
22 *******************************************************************************/
23 //
24 // Novell.Directory.Ldap.Events.LdapEventArgs.cs
25 //
26 // Author:
27 //   Anil Bhatia (banil@novell.com)
28 //
29 // (C) 2003 Novell, Inc (http://www.novell.com)
30 //
31
32
33 using System;
34 using System.Text;
35
36 using Novell.Directory.Ldap.Controls;
37
38 namespace Novell.Directory.Ldap.Events
39 {
40   /// <summary> 
41   /// This class represents the EventArgs for Ldap events in general.
42   /// This is also the base class for more specific Ldap events.
43   /// </summary>
44   /// <seealso cref='Novell.Directory.Ldap.Events.SearchResultEventArgs'/>
45   /// <seealso cref='Novell.Directory.Ldap.Events.SearchReferralEventArgs'/>
46   public class LdapEventArgs : DirectoryEventArgs
47   {
48     protected LdapEventType eType;
49     public LdapEventType EventType
50     {
51       get
52       {
53         return eType;
54       }
55       set
56       {
57         eType = value;
58       }
59     }
60
61     public LdapEventArgs(
62                      LdapMessage sourceMessage,
63                      EventClassifiers aClassification,
64                      LdapEventType aType)
65       : base(sourceMessage, aClassification)
66     {
67       eType = aType;
68     }
69
70     public override string ToString()
71     {
72       StringBuilder buf = new StringBuilder();
73       buf.Append("[");
74       buf.AppendFormat("{0}:", GetType());
75       buf.AppendFormat("(Classification={0})", eClassification);
76       buf.AppendFormat("(Type={0})", eType);
77       buf.AppendFormat("(EventInformation:{0})", ldap_message);
78       buf.Append("]");
79
80       return buf.ToString();
81     }
82   } // end of class LdapEventArgs
83 }