DisposableDependencyObjectWrapperOfT.cs 788 B

1234567891011121314151617181920212223242526272829
  1. namespace Abp.Dependency
  2. {
  3. internal class DisposableDependencyObjectWrapper : DisposableDependencyObjectWrapper<object>, IDisposableDependencyObjectWrapper
  4. {
  5. public DisposableDependencyObjectWrapper(IIocResolver iocResolver, object obj)
  6. : base(iocResolver, obj)
  7. {
  8. }
  9. }
  10. internal class DisposableDependencyObjectWrapper<T> : IDisposableDependencyObjectWrapper<T>
  11. {
  12. private readonly IIocResolver _iocResolver;
  13. public T Object { get; private set; }
  14. public DisposableDependencyObjectWrapper(IIocResolver iocResolver, T obj)
  15. {
  16. _iocResolver = iocResolver;
  17. Object = obj;
  18. }
  19. public void Dispose()
  20. {
  21. _iocResolver.Release(Object);
  22. }
  23. }
  24. }