summaryrefslogtreecommitdiff
path: root/src/Notepad/Infrastructure/Container/Resolve.cs
blob: 507ccb45b8ea071a673c106fa8e6f3259c43a6a3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
using System;

namespace Notepad.Infrastructure.Container {
    public static class Resolve {
        private static IDependencyRegistry underlyingRegistry;

        public static void InitializeWith(IDependencyRegistry registry) {
            underlyingRegistry = registry;
        }

        public static DependencyToResolve DependencyFor<DependencyToResolve>() {
            try {
                return underlyingRegistry.FindAnImplementationOf<DependencyToResolve>();
            }
            catch (Exception e) {
                throw new DependencyResolutionException<DependencyToResolve>(e);
            }
        }
    }
}