public static void BindDisposableExecutionOrder( this DiContainer container, Type type, int order) { Assert.That(type.DerivesFrom <IDisposable>(), "Expected type '{0}' to derive from IDisposable", type.Name()); container.BindInstance( ModestTree.Util.Tuple.New(type, order)).WhenInjectedInto <DisposableManager>(); }
public static void BindInitializableExecutionOrder( this DiContainer container, Type type, int order) { Assert.That(type.DerivesFrom <IInitializable>(), "Expected type '{0}' to derive from IInitializable", type.Name()); container.BindInstance( ValuePair.New(type, order)).WhenInjectedInto <InitializableManager>(); }
public static void BindTickableExecutionOrder( this DiContainer container, Type type, int order) { Assert.That(type.DerivesFrom <ITickable>(), "Expected type '{0}' to derive from ITickable", type); container.BindInstance( ModestTree.Util.ValuePair.New(type, order)).WhenInjectedInto <TickableManager>(); }
protected virtual void Initialize() { Assert.IsNull(_container); _container = new DiContainer(new[] { StaticContext.Container }); // Make sure we don't create any game objects since editor windows don't have a scene _container.AssertOnNewGameObjects = true; ZenjectManagersInstaller.Install(_container); _container.Bind <Kernel>().AsSingle(); _container.Bind <GuiRenderableManager>().AsSingle(); _container.BindInstance(this); InstallBindings(); _container.QueueForInject(this); _container.ResolveRoots(); _kernel.Initialize(); }