// i should make it clan for DRY // TODO :Ferhat bunu ben ekledim gerek de olmayabilir. public static MethodMap CreateMethodMap(this object [] instances) { var map = new MethodMap(); foreach (var method in instances.SelectMany(t=>t.GetType().GetMethods())) { var paths = PathAttribute.PathsForMethod(method); if (paths.Length == 0) continue; var verbs = VerbAttribute.VerbsForMethod(method); foreach (var path in paths) foreach (var verb in verbs) map.MapMethod(path, verb, method); } return map; }
public static MethodMap CreateMethodMap(this IEnumerable<Type> types) { var map = new MethodMap(); foreach (var method in types.SelectMany(t => t.GetMethods())) { var paths = PathAttribute.PathsForMethod(method); if (paths.Length == 0) continue; var verbs = VerbAttribute.VerbsForMethod(method); if (verbs.Length == 0) verbs = new string[] { "GET" }; foreach (var path in paths) foreach (var verb in verbs) map.MapMethod(path, verb, method); } return map; }