Example #1
0
 public void Register(String commandName, Type type)
 {
     var aMethod = new ExtendedMethodInfo {MethodInfo = type.GetMethod(commandName)};
     aMethod.Method =
         (ExtendedMethodInfo.MethodType)
         Delegate.CreateDelegate(typeof (ExtendedMethodInfo.MethodType), aMethod.MethodInfo);
     _commands.Add(commandName, aMethod);
 }
Example #2
0
 public void Register(Type type)
 {
     MethodInfo[] methods = type.GetMethods(BindingFlags.Public | BindingFlags.Static);
     foreach (MethodInfo rawMethod in methods)
     {
         var aMethod = new ExtendedMethodInfo {MethodInfo = rawMethod};
         aMethod.Method =
             (ExtendedMethodInfo.MethodType)
             Delegate.CreateDelegate(typeof (ExtendedMethodInfo.MethodType), aMethod.MethodInfo);
         _commands.Add(rawMethod.Name, aMethod);
     }
 }
Example #3
0
 public void Register(Object type)
 {
     MethodInfo[] methods =
         type.GetType().GetMethods(BindingFlags.Public | BindingFlags.Instance | BindingFlags.Static | BindingFlags.FlattenHierarchy);
     foreach (MethodInfo rawMethod in methods)
     {
         if (rawMethod.ReturnType == typeof (Object))
         {
             var aMethod = new ExtendedMethodInfo();
             if (!rawMethod.IsStatic)
             {
                 aMethod.Context = type;
             }
             aMethod.MethodInfo = rawMethod;
             aMethod.Method =
                 (ExtendedMethodInfo.MethodType)
                 Delegate.CreateDelegate(typeof (ExtendedMethodInfo.MethodType), aMethod.Context,
                                         aMethod.MethodInfo);
             _commands.Add(rawMethod.Name, aMethod);
         }
     }
 }
Example #4
0
 public void Register(String commandName, Object type)
 {
     var aMethod = new ExtendedMethodInfo { MethodInfo = type.GetType().GetMethod(commandName, BindingFlags.Public | BindingFlags.Instance | BindingFlags.Static | BindingFlags.FlattenHierarchy), Context = type };
     aMethod.Method =
         (ExtendedMethodInfo.MethodType)
         Delegate.CreateDelegate(typeof (ExtendedMethodInfo.MethodType), aMethod.Context, aMethod.MethodInfo);
     _commands.Add(commandName, aMethod);
 }