1 // 2 // System.EnterpriseServices.SharedPropertyGroup.cs 3 // 4 // Author: 5 // Tim Coleman (tim@timcoleman.com) 6 // 7 // Copyright (C) Tim Coleman, 2002 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.Runtime.InteropServices; 33 34 namespace System.EnterpriseServices { 35 [ComVisible (false)] 36 public sealed class SharedPropertyGroup { 37 38 #region Fields 39 40 ISharedPropertyGroup propertyGroup; 41 42 #endregion 43 44 #region Constructors 45 SharedPropertyGroup(ISharedPropertyGroup propertyGroup)46 internal SharedPropertyGroup (ISharedPropertyGroup propertyGroup) 47 { 48 this.propertyGroup = propertyGroup; 49 } 50 51 #endregion // Constructors 52 53 #region Methods 54 CreateProperty(string name, out bool fExists)55 public SharedProperty CreateProperty (string name, out bool fExists) 56 { 57 return new SharedProperty (propertyGroup.CreateProperty (name, out fExists)); 58 } 59 CreatePropertyByPosition(int position, out bool fExists)60 public SharedProperty CreatePropertyByPosition (int position, out bool fExists) 61 { 62 return new SharedProperty (propertyGroup.CreatePropertyByPosition (position, out fExists)); 63 } 64 Property(string name)65 public SharedProperty Property (string name) 66 { 67 return new SharedProperty (propertyGroup.Property (name)); 68 } 69 PropertyByPosition(int position)70 public SharedProperty PropertyByPosition (int position) 71 { 72 return new SharedProperty (propertyGroup.PropertyByPosition (position)); 73 } 74 75 #endregion // Methods 76 } 77 } 78