You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4net-dev@logging.apache.org by ni...@apache.org on 2004/08/19 23:32:23 UTC

cvs commit: logging-log4net/tests/src Utils.cs

nicko       2004/08/19 14:32:23

  Modified:    tests/src Utils.cs
  Log:
  Added more utility methods
  
  Revision  Changes    Path
  1.3       +30 -0     logging-log4net/tests/src/Utils.cs
  
  Index: Utils.cs
  ===================================================================
  RCS file: /home/cvs/logging-log4net/tests/src/Utils.cs,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- Utils.cs	27 Feb 2004 13:03:38 -0000	1.2
  +++ Utils.cs	19 Aug 2004 21:32:23 -0000	1.3
  @@ -30,6 +30,16 @@
   		{
   		}
   
  +		public static object CreateInstance(string targetType)
  +		{
  +			return CreateInstance(Type.GetType(targetType, true, true));
  +		}
  +
  +		public static object CreateInstance(Type targetType)
  +		{
  +			return targetType.GetConstructor(BindingFlags.NonPublic|BindingFlags.Public|BindingFlags.Static|BindingFlags.Instance, null, new Type[0], null).Invoke(null);
  +		}
  +
   		public static object InvokeMethod(object target, string name, params object[] args)
   		{
   			return target.GetType().GetMethod(name, BindingFlags.NonPublic|BindingFlags.Public|BindingFlags.Static|BindingFlags.Instance, null, GetTypesArray(args), null).Invoke(target, args);
  @@ -48,6 +58,26 @@
   		public static void SetField(object target, string name, object val)
   		{
   			target.GetType().GetField(name, BindingFlags.NonPublic|BindingFlags.Public|BindingFlags.Static|BindingFlags.Instance).SetValue(target, val);
  +		}
  +
  +		public static object GetProperty(object target, string name)
  +		{
  +			return target.GetType().GetProperty(name, BindingFlags.NonPublic|BindingFlags.Public|BindingFlags.Static|BindingFlags.Instance).GetValue(target, null);
  +		}
  +
  +		public static void SetProperty(object target, string name, object val)
  +		{
  +			target.GetType().GetProperty(name, BindingFlags.NonPublic|BindingFlags.Public|BindingFlags.Static|BindingFlags.Instance).SetValue(target, val, null);
  +		}
  +
  +		public static object GetProperty(object target, string name, params object[] index)
  +		{
  +			return target.GetType().GetProperty(name, BindingFlags.NonPublic|BindingFlags.Public|BindingFlags.Static|BindingFlags.Instance).GetValue(target, index);
  +		}
  +
  +		public static void SetProperty(object target, string name, object val, params object[] index)
  +		{
  +			target.GetType().GetProperty(name, BindingFlags.NonPublic|BindingFlags.Public|BindingFlags.Static|BindingFlags.Instance).SetValue(target, val, index);
   		}
   
   		private static Type[] GetTypesArray(object[] args)