protected override void OnCreate(Bundle savedInstanceState) { TabLayoutResource = Resource.Layout.Tabbar; ToolbarResource = Resource.Layout.Toolbar; base.OnCreate(savedInstanceState); // Init IoC Container var container = TinyIoCContainer.Current; var tinyContainer = new TinyContainer(container); container.Register <IDependencyContainer>(tinyContainer); Resolver.SetResolver(new TinyResolver(container)); // Init Forms Forms.SetFlags("FastRenderers_Experimental"); Forms.Init(this, savedInstanceState); // Handle Device Rotation MessagingCenter.Subscribe <RotationAwarePage, InterfaceOrientationTypes>(this, RotationAwarePage.NewPageOrientationRequestedMessage, NewOrientationRequested); // Set default orientation RequestedOrientation = ScreenOrientation.Portrait; // Load App LoadApplication(new App()); }
public override bool FinishedLaunching(UIApplication uiApplication, NSDictionary launchOptions) { // Init IoC Container var container = TinyIoCContainer.Current; var tinyContainer = new TinyContainer(container); container.Register <IDependencyContainer>(tinyContainer); Resolver.SetResolver(new TinyResolver(container)); // Init Forms Forms.Init(); LoadApplication(new App()); // Init PDF Viewer var builder = new ContainerBuilder(); builder.RegisterType <DocumentBookmarksManager>().As <IDocumentBookmarksManager>().SingleInstance(); builder.RegisterType <DocumentNoteManager>().As <IDocumentNoteManager>().SingleInstance(); builder.RegisterType <SettingsManager>().As <ISettingsManager>().SingleInstance(); MgrAccessor.Initialize(builder); // Print out path to the documents folder System.Diagnostics.Debug.WriteLine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)); // Return... return(base.FinishedLaunching(uiApplication, launchOptions)); }
public void TestContainerResolveInstance() { var container = new TinyContainer(); container.RegisterTransient <SimpleDependency>(); var dependency1 = container.Resolve <SimpleDependency>(); Assert.IsNotNull(dependency1); Assert.IsInstanceOfType(dependency1, typeof(SimpleDependency)); Assert.AreEqual(SimpleDependency.ActiveDependecies, 1); Assert.AreEqual(SimpleDependency.ResolveCounter, 1); var dependency2 = container.Resolve <SimpleDependency>(); Assert.IsNotNull(dependency2); Assert.IsInstanceOfType(dependency2, typeof(SimpleDependency)); Assert.AreEqual(SimpleDependency.ActiveDependecies, 2); Assert.AreEqual(SimpleDependency.ResolveCounter, 2); Assert.AreNotSame(dependency1, dependency2); container.Dispose(); Assert.AreEqual(SimpleDependency.ActiveDependecies, 0); }
public void WithFactory() { var tiny = new TinyContainer(); tiny.Register(factory => new Simple()); Assert.IsNotNull(tiny.Resolve <Simple>()); }
public void Interface() { var tiny = new TinyContainer(); tiny.Register <ISimple, Simple>(); Assert.IsNotNull(tiny.Resolve <ISimple>()); }
public void Basic() { var container = new TinyContainer(); new MyModule().RegisterServices(container); Assert.IsNotNull(container.Resolve <Simple>()); }
public IosAppBootstrapper() { var container = TinyIoCContainer.Current; _tinyContainer = new TinyContainer(container); container.Register <IDependencyContainer>(_tinyContainer); Resolver.SetResolver(new TinyResolver(container)); }
public void Class() { var tiny = new TinyContainer(); tiny.Register <Simple>(); Assert.IsNotNull(tiny.Resolve <Simple>()); }
public void ThrowsOnReRegister() { var tiny = new TinyContainer(); tiny.Register <Simple>(); Assert.ThrowsException <TinyError>(() => tiny.Register <Simple>()); Assert.ThrowsException <TinyError>(() => tiny.Register(factory => new Simple())); }
public void Delegate() { var tiny = new TinyContainer(); tiny.Register <Simple>() .Register <Func <Simple> >(factory => factory.Resolve <Simple>); Assert.IsNotNull(tiny.Resolve <Func <Simple> >()()); }
private void Awake() { TinyContainer.Global .Register(new LifeCyclePrinter()) .Register <ILocalization>(new MockLocalization()); TinyContainer.ForSceneOf(this) .Register <ISerializer>(new JsonSerializer()); }
public void RegisterService_NoConstructorValid() { var container = new TinyContainer(); var typeInstance = new EmptyConreteType(); container.RegisterService <IInterfaceParam, InterfaceParam>(); container.RegisterService <ConcreteTypeMultiParam>(); var instance = container.ResolveService <ConcreteTypeMultiParam>(); }
protected override ContainerFor <T> CreateSut <T>() { var container = new TinyContainer(); container.Register <IDependency1, Dependency1>(); container.Register <IDependency2, Dependency2>(); container.Register <ConcreteObjectWithNoConstructor>(); container.Register <ConcreteObjectWithMultipleConstructors>(); return(new ContainerFor <T>(container)); }
public void RegisterSingleton_WithInstanceTest() { var container = new TinyContainer(); var typeInstance = new EmptyConreteType(); container.RegisterSingleton(typeInstance); var instance = container.ResolveService <EmptyConreteType>(); Assert.AreEqual(instance, typeInstance); }
protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); var container = new TinyContainer(TinyIoCContainer.Current); var resolver = TinyIoCModule.Setup(TinyIoCContainer.Current); Resolver.SetResolver(resolver); Forms.Init(this, bundle); LoadApplication(new App(container)); }
protected override ContainerFor <T> CreateSut <T>() { var container = new TinyContainer(new TinyIoCContainer()); container.Set <IDependency1, Dependency1>(); container.Set <IDependency2, Dependency2>(); container.SetMultiple <IDependency3>(new [] { typeof(Dependency3), typeof(Dependency4) }); container.Set <ConcreteObjectWithNoConstructor>(); container.Set <ConcreteObjectWithMultipleConstructors>(); container.Set <ConcreteObjectWithOneInterfaceCollectionConstructor>(); return(new ContainerFor <T>(container)); }
public void ComplexClass() { var tiny = new TinyContainer(); tiny.Register <Simple>() .Register <ISimple, Simple>() .Register <Func <Simple> >(factory => () => new Simple()) .Register <IComplex, Complex>(); var simpleInstance = tiny.Resolve <IComplex>(); Assert.IsNotNull(simpleInstance); }
public void RegisterService_OnlyOneConstructorValid() { var container = new TinyContainer(); var typeInstance = new EmptyConreteType(); container.RegisterService <SecondParam>(); container.RegisterService <IInterfaceParam, InterfaceParam>(); container.RegisterService <ConcreteTypeMultiParam>(); var instance = container.ResolveService <ConcreteTypeMultiParam>(); Assert.AreEqual(true, instance != null); }
public void ExtensionMethods() { var container = new TinyContainer(); new MyModule().RegisterServices(container); // or container.RegisterModule(new MyModule()); // or container.RegisterModule <MyOtherModule>(); Assert.IsNotNull(container.Resolve <Simple>()); Assert.IsNotNull(container.Resolve <ISimple>()); }
public static void SetupIoC() { var container = TinyIoCContainer.Current; var tinyContainer = new TinyContainer(container); container.Register <IDependencyContainer>(tinyContainer); Resolver.SetResolver(new TinyResolver(container)); // tinyContainer.RegisterSingle<IDevice, IosDevice>(); // Set up Forms IoC FormsBootstrapper.SetupForms(); }
protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); var container = new TinyContainer(TinyIoCContainer.Current); var resolver = TinyIoCModule.Setup(TinyIoCContainer.Current); Resolver.SetResolver(resolver); Corcav.Behaviors.Infrastructure.Init(); UserDialogs.Init(this); Forms.Init(this, bundle); LoadApplication(new App(container)); }
public void TestContainerResolveSingleton() { var container = new TinyContainer(); container.RegisterSignleton <SimpleDependency>(); var result1 = container.Resolve <SimpleDependency>(); var result2 = container.Resolve <SimpleDependency>(); Assert.AreSame(result1, result2); Assert.AreEqual(SimpleDependency.ActiveDependecies, 1); container.Dispose(); }
public static void SetupIoC() { var container = TinyIoCContainer.Current; var tinyContainer = new TinyContainer(container); container.Register <IDependencyContainer>(tinyContainer); if (!Resolver.IsSet) { Resolver.SetResolver(new TinyResolver(container)); } // Set up Forms IoC FormsBootstrapper.SetupForms(); }
public void TestResolitionWithAutowiring() { var container = new TinyContainer(); container.RegisterTransient <ITestDependency, SimpleDependency>() .RegisterTransient <CompositeDependecy>(); var dependency = container.Resolve <CompositeDependecy>(); Assert.IsNotNull(dependency); Assert.IsInstanceOfType(dependency, typeof(CompositeDependecy)); Assert.IsNotNull(dependency.InnerDependency); Assert.IsInstanceOfType(dependency.InnerDependency, typeof(SimpleDependency)); container.Dispose(); Assert.IsNull(dependency.InnerDependency); // Checking that dependecny was disposed }
public static TinyContainer RegisterTransient <TMappedType, TActualType>(this TinyContainer container, string name = null) { container.Register(typeof(TMappedType), new TransientLifetimeManager(typeof(TActualType))); return(container); }
private void Start() { TinyContainer.For(this) .Get(out _localization) .Get(out _serializer); }
public static TinyContainer RegisterSignleton <TObject>(this TinyContainer container, TObject instance) { container.Register(typeof(TObject), new SingletonLifetimeManager(instance)); return(container); }
public static TDependency Resolve <TDependency>(this TinyContainer container) { return((TDependency)container.Resolve(typeof(TDependency))); }
public static TinyContainer RegisterTransient <TDependency>(this TinyContainer container) => RegisterTransient <TDependency, TDependency>(container);