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

http://github.com/philiplaureano/LinFu · C# · 23 lines · 12 code · 1 blank · 10 comment · 0 complexity · 866dca18c064ef1b17a8239557b1a7a9 MD5 · raw file

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using LinFu.IoC.Interfaces;
  6. namespace LinFu.IoC.Configuration.Interfaces
  7. {
  8. /// <summary>
  9. /// Represents a class that can instantiate object instances.
  10. /// </summary>
  11. public interface IActivator
  12. {
  13. /// <summary>
  14. /// Creates an object instance.
  15. /// </summary>
  16. /// <param name="concreteType">The <see cref="System.Type"/> to be instantiated.</param>
  17. /// <param name="container">The <see cref="IServiceContainer"/> instance that will be used to instantiate the concrete type.</param>
  18. /// <param name="additionalArguments">The additional arguments that will be passed to the target type.</param>
  19. /// <returns>A valid object instance.</returns>
  20. object CreateInstance(Type concreteType, IServiceContainer container, object[] additionalArguments);
  21. }
  22. }