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)