1 // 2 // System.Web.Configuration.BufferModesCollection 3 // 4 // Authors: 5 // Chris Toshok (toshok@ximian.com) 6 // 7 // (C) 2005 Novell, Inc (http://www.novell.com) 8 // 9 10 // 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: 18 // 19 // The above copyright notice and this permission notice shall be 20 // included in all copies or substantial portions of the Software. 21 // 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. 29 // 30 31 using System; 32 using System.Configuration; 33 34 35 namespace System.Web.Configuration { 36 37 [ConfigurationCollection (typeof (BufferModeSettings), CollectionType = ConfigurationElementCollectionType.AddRemoveClearMap)] 38 public sealed class BufferModesCollection : ConfigurationElementCollection 39 { 40 static ConfigurationPropertyCollection properties; 41 BufferModesCollection()42 static BufferModesCollection () 43 { 44 properties = new ConfigurationPropertyCollection (); 45 } 46 Add(BufferModeSettings bufferModeSettings)47 public void Add (BufferModeSettings bufferModeSettings) 48 { 49 BaseAdd (bufferModeSettings); 50 } 51 Clear()52 public void Clear () 53 { 54 BaseClear (); 55 } 56 CreateNewElement()57 protected override ConfigurationElement CreateNewElement () 58 { 59 return new BufferModeSettings(); 60 } 61 GetElementKey(ConfigurationElement element)62 protected override object GetElementKey (ConfigurationElement element) 63 { 64 return ((BufferModeSettings)element).Name; 65 } 66 Remove(string s)67 public void Remove (string s) 68 { 69 BaseRemove (s); 70 } 71 72 public BufferModeSettings this [int index] { 73 get { return (BufferModeSettings)BaseGet (index); } 74 set { if (BaseGet(index) != null) BaseRemoveAt(index); BaseAdd(index, value); } 75 } 76 77 public new BufferModeSettings this [string key] { 78 get { return (BufferModeSettings) BaseGet (key); } 79 } 80 81 protected internal override ConfigurationPropertyCollection Properties { 82 get { return properties; } 83 } 84 } 85 86 } 87 88