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.ValueEventData.cs
27 // Anil Bhatia (banil@novell.com)
29 // (C) 2003 Novell, Inc (http://www.novell.com)
35 using Novell.Directory.Ldap.Asn1;
37 namespace Novell.Directory.Ldap.Events.Edir.EventData
40 /// This class represents the data for Value Events.
42 public class ValueEventData : BaseEdirEventData
44 protected string strAttribute;
45 public string Attribute
53 protected string strClassId;
62 protected string strData;
71 protected byte[] binData;
72 public byte[] BinaryData
79 protected string strEntry;
88 protected string strPerpetratorDN;
89 public string PerpetratorDN
93 return strPerpetratorDN;
98 protected string strSyntax;
107 protected DSETimeStamp timeStampObj;
108 public DSETimeStamp TimeStamp
125 public ValueEventData(EdirEventDataType eventDataType, Asn1Object message)
126 : base(eventDataType, message)
128 int[] length = new int[1];
129 Asn1OctetString octData;
132 ((Asn1OctetString) decoder.decode(decodedData, length)).stringValue();
134 ((Asn1OctetString) decoder.decode(decodedData, length)).stringValue();
136 ((Asn1OctetString) decoder.decode(decodedData, length)).stringValue();
138 ((Asn1OctetString) decoder.decode(decodedData, length)).stringValue();
141 ((Asn1OctetString) decoder.decode(decodedData, length)).stringValue();
144 new DSETimeStamp((Asn1Sequence) decoder.decode(decodedData, length));
146 octData = ((Asn1OctetString) decoder.decode(decodedData, length));
147 strData = octData.stringValue();
148 binData = SupportClass.ToByteArray(octData.byteValue());
150 nVerb = ((Asn1Integer) decoder.decode(decodedData, length)).intValue();
156 /// Returns a string representation of the object.
158 public override string ToString()
160 StringBuilder buf = new StringBuilder();
162 buf.Append("[ValueEventData");
163 buf.AppendFormat("(Attribute={0})", strAttribute);
164 buf.AppendFormat("(Classid={0})", strClassId);
165 buf.AppendFormat("(Data={0})", strData);
166 buf.AppendFormat("(Data={0})", binData);
167 buf.AppendFormat("(Entry={0})", strEntry);
168 buf.AppendFormat("(Perpetrator={0})", strPerpetratorDN);
169 buf.AppendFormat("(Syntax={0})", strSyntax);
170 buf.AppendFormat("(TimeStamp={0})", timeStampObj);
171 buf.AppendFormat("(Verb={0})", nVerb);
174 return buf.ToString();