/src/LinFu.AOP.Interfaces/IActivator.cs

http://github.com/philiplaureano/LinFu · C# · 19 lines · 8 code · 0 blank · 11 comment · 0 complexity · 40ef77f946b82b2d60885e480c45c17a MD5 · raw file

  1. namespace LinFu.AOP.Interfaces
  2. {
  3. /// <summary>
  4. /// Represents a class that can instantiate object instances.
  5. /// </summary>
  6. /// <typeparam name="TContext">
  7. /// The type that describes the context of the object instantiation.
  8. /// </typeparam>
  9. public interface IActivator<TContext>
  10. where TContext : IActivationContext
  11. {
  12. /// <summary>
  13. /// Creates an object instance.
  14. /// </summary>
  15. /// <param name="context">The context that describes the request to instantiate the target type.</param>
  16. /// <returns>A valid object instance.</returns>
  17. object CreateInstance(TContext context);
  18. }
  19. }