/src/LinFu.IoC.Common/IServiceRequest.cs

http://github.com/philiplaureano/LinFu · C# · 37 lines · 11 code · 4 blank · 22 comment · 0 complexity · 39850ef6824efb8f3a325c8ec4b96af8 MD5 · raw file

  1. namespace LinFu.IoC.Interfaces
  2. {
  3. /// <summary>
  4. /// Represents a class that describes the context of a service request made to a service container.
  5. /// </summary>
  6. public interface IServiceRequest : IServiceInfo
  7. {
  8. /// <summary>
  9. /// The container that will handle the service request.
  10. /// </summary>
  11. IServiceContainer Container { get; }
  12. /// <summary>
  13. /// Gets or sets the value indicating the actual arguments that
  14. /// will be used for the service request.
  15. /// </summary>
  16. object[] ActualArguments { get; set; }
  17. /// <summary>
  18. /// Gets the value indicating the original arguments that
  19. /// were given during the service request.
  20. /// </summary>
  21. object[] ProposedArguments { get; }
  22. /// <summary>
  23. /// Gets the value indicating the original <see cref="IFactory" /> instance
  24. /// that will be used to handle the service request.
  25. /// </summary>
  26. IFactory ProposedFactory { get; }
  27. /// <summary>
  28. /// Gets or sets the value indicating the actual <see cref="IFactory" /> instance
  29. /// that will be used to handle the service request.
  30. /// </summary>
  31. IFactory ActualFactory { get; set; }
  32. }
  33. }