/// <summary> /// Gets an instance of particular type. Registers this type with transient life time if needed. /// </summary> public object GetInstance(Type type) { if (!_container.CanGetInstance(type, string.Empty)) { _container.Register(type); } return(_container.GetInstance(type)); }
public void Run <TPresenter>() where TPresenter : class, IPresenter { if (!container.CanGetInstance(typeof(TPresenter), String.Empty)) { container.Register <TPresenter>(); } IPresenter presenter = container.GetInstance <TPresenter>(); presenter.Run(); }
public void Test() { var notFound = _container.CanGetInstance(typeof(NotDependencyStub), string.Empty); Assert.IsFalse(notFound); _dependencyRegister.RegisterAssemblyDependencies(_container, new List <Assembly> { GetType().Assembly }); var found = _container.CanGetInstance(typeof(NotDependencyStub), string.Empty); Assert.IsTrue(found); var stub = _container.GetInstance <NotDependencyStub>(); Assert.IsNotNull(stub); Assert.IsInstanceOfType(stub, typeof(NotDependencyStub)); }
public void RunApplication(string[] args) { if (!container.CanGetInstance(typeof(Startup), startupServiceName)) { throw new Exception("Dependences wasn't initialised! Please, provide call 'InitializeDependences' before 'RunApplication'."); } var startup = container.TryGetInstance <Startup>(); startup.Execute(args); }
public void Run <TPresenter>() where TPresenter : IPresenter { if (!ServiceContainer.CanGetInstance(typeof(TPresenter), string.Empty)) { ServiceContainer.Register <TPresenter>(); } TPresenter presenter = ServiceContainer.GetInstance <TPresenter>(); presenter.Run(); }
public Initialization(IMod mod) { var container = new ServiceContainer(); container.RegisterAssembly(GetType().Assembly); container.RegisterInstance(mod.Helper); container.RegisterInstance(mod.Monitor); container.Register <IHarmonyWrapper, HarmonyWrapper>(); container.Register <IWrapperFactory, WrapperFactory>(); container.Decorate <IMonitor, Logger>(); container.RegisterInstance <IServiceFactory>(container.BeginScope()); foreach (var service in container.AvailableServices) { mod.Monitor.Log(service.ServiceType.FullName + " | " + container.CanGetInstance(service.ServiceType, String.Empty), LogLevel.Debug); } container.GetInstance <IHarmonyPatch>(); container.GetInstance <IDialogueApi>(); }
public bool IsRegistered <TService>() { return(_container.CanGetInstance(typeof(TService), string.Empty)); }
public bool CanGet <T>(string name) => container.CanGetInstance(typeof(T), name);
public bool IsRegistered <T>() { return(r_Container.CanGetInstance(typeof(T), string.Empty)); }