1 /******************************************************************************
3 * Copyright (c) 2003 Novell Inc. www.novell.com
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:
12 * The above copyright notice and this permission notice shall be included in
13 * all copies or substantial portions of the Software.
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
22 *******************************************************************************/
24 // Novell.Directory.Ldap.Events.Edir.EventData.DebugEventData.cs
27 // Anil Bhatia (banil@novell.com)
29 // (C) 2003 Novell, Inc (http://www.novell.com)
32 using System.Collections;
35 using Novell.Directory.Ldap.Asn1;
37 namespace Novell.Directory.Ldap.Events.Edir.EventData
40 /// This class represents the data for Debug Events.
42 public class DebugEventData : BaseEdirEventData
44 protected int ds_time;
53 protected int milli_seconds;
54 public int MilliSeconds
62 protected string strPerpetratorDN;
63 public string PerpetratorDN
67 return strPerpetratorDN;
71 protected string strFormatString;
72 public string FormatString
76 return strFormatString;
89 protected int parameter_count;
90 public int ParameterCount
94 return parameter_count;
98 protected ArrayList parameter_collection;
99 public ArrayList Parameters
103 return parameter_collection;
107 public DebugEventData(EdirEventDataType eventDataType, Asn1Object message)
108 : base(eventDataType, message)
110 int[] length = new int[1];
112 ds_time = ((Asn1Integer) decoder.decode(decodedData, length)).intValue();
114 ((Asn1Integer) decoder.decode(decodedData, length)).intValue();
117 ((Asn1OctetString) decoder.decode(decodedData, length)).stringValue();
119 ((Asn1OctetString) decoder.decode(decodedData, length)).stringValue();
120 nVerb = ((Asn1Integer) decoder.decode(decodedData, length)).intValue();
122 ((Asn1Integer) decoder.decode(decodedData, length)).intValue();
124 parameter_collection = new ArrayList();
126 if (parameter_count > 0)
128 Asn1Sequence seq = (Asn1Sequence) decoder.decode(decodedData, length);
129 for (int i = 0; i < parameter_count; i++)
131 parameter_collection.Add(
132 new DebugParameter((Asn1Tagged) seq.get_Renamed(i))
141 /// Returns a string representation of the object.
143 public override string ToString()
145 StringBuilder buf = new StringBuilder();
146 buf.Append("[DebugEventData");
147 buf.AppendFormat("(Millseconds={0})", milli_seconds);
148 buf.AppendFormat("(DSTime={0})", ds_time);
149 buf.AppendFormat("(PerpetratorDN={0})", strPerpetratorDN);
150 buf.AppendFormat("(Verb={0})",nVerb);
151 buf.AppendFormat("(ParameterCount={0})", parameter_count);
152 for (int i = 0; i < parameter_count; i++)
154 buf.AppendFormat("(Parameter[{0}]={1})", i, parameter_collection[i]);
158 return buf.ToString();