/src/LinFu.IoC/Configuration/Interfaces/IMethodFinder.cs

http://github.com/philiplaureano/LinFu · C# · 27 lines · 11 code · 1 blank · 15 comment · 0 complexity · 9a62889b795132bc627759f40071d389 MD5 · raw file

  1. using System.Collections.Generic;
  2. using System.Reflection;
  3. using LinFu.IoC.Interfaces;
  4. namespace LinFu.IoC.Configuration.Interfaces
  5. {
  6. /// <summary>
  7. /// Represents a class that determines which method best matches the
  8. /// services currently in the target container.
  9. /// </summary>
  10. /// <typeparam name="T">The method type to search.</typeparam>
  11. public interface IMethodFinder<T>
  12. where T : MethodBase
  13. {
  14. /// <summary>
  15. /// Determines which method best matches the
  16. /// services currently in the target container.
  17. /// </summary>
  18. /// <param name="items">The list of methods to search.</param>
  19. /// <param name="finderContext">The <see cref="IMethodFinderContext" /> that describes the target method.</param>
  20. /// <returns>
  21. /// Returns the method with the most resolvable parameters from the target <see cref="IServiceContainer" />
  22. /// instance.
  23. /// </returns>
  24. T GetBestMatch(IEnumerable<T> items, IMethodFinderContext finderContext);
  25. }
  26. }