2 // System.Data.TypedDataSetGeneratorException.cs
4 // Author: Duncan Mak (duncan@ximian.com)
9 // Copyright (C) 2004 Novell, Inc (http://www.novell.com)
11 // Permission is hereby granted, free of charge, to any person obtaining
12 // a copy of this software and associated documentation files (the
13 // "Software"), to deal in the Software without restriction, including
14 // without limitation the rights to use, copy, modify, merge, publish,
15 // distribute, sublicense, and/or sell copies of the Software, and to
16 // permit persons to whom the Software is furnished to do so, subject to
17 // the following conditions:
19 // The above copyright notice and this permission notice shall be
20 // included in all copies or substantial portions of the Software.
22 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
23 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
24 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
25 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
26 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
27 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
28 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
32 using System.Collections;
33 using System.Globalization;
34 using System.Runtime.Serialization;
39 public class TypedDataSetGeneratorException : DataException
41 readonly ArrayList errorList;
45 public TypedDataSetGeneratorException ()
46 : base (Locale.GetText ("System error."))
50 public TypedDataSetGeneratorException (ArrayList list)
51 : base (Locale.GetText ("System error."))
56 protected TypedDataSetGeneratorException (SerializationInfo info, StreamingContext context)
57 : base (info, context)
59 int count = info.GetInt32 ("KEY_ARRAYCOUNT");
60 errorList = new ArrayList (count);
62 for (int i=0; i < count; i++)
63 errorList.Add (info.GetString("KEY_ARRAYVALUES" + i));
67 public TypedDataSetGeneratorException (String message) : base (message)
71 public TypedDataSetGeneratorException (String message, Exception innerException)
72 : base (message, innerException)
76 #endregion //Constructors
78 public ArrayList ErrorList {
79 get { return errorList; }
84 public override void GetObjectData (SerializationInfo info, StreamingContext context)
86 base.GetObjectData (info, context);
88 int count = (errorList != null) ? ErrorList.Count : 0;
89 info.AddValue ("KEY_ARRAYCOUNT", count);
91 for (int i=0; i < count; i++)
92 info.AddValue ("KEY_ARRAYVALUES" + i, ErrorList [i]);