public PhotoEditHelper(IPermissionsHelper permissionsHelper,
                        IPhotoCaptureHelper photoCaptureHelper, IEncryptionHelper encryptionHelper)
 {
     _permissionsHelper  = permissionsHelper;
     _photoCaptureHelper = photoCaptureHelper;
     _encryptionHelper   = encryptionHelper;
 }
Esempio n. 2
0
        public override void Initialize()
        {
            CreatableTypes()
            .EndingWith("Repository")
            .AsInterfaces()
            .RegisterAsLazySingleton();

            Mvx.IoCProvider.RegisterSingleton <IUserDialogs>(() => UserDialogs.Instance);
            Mvx.IoCProvider.RegisterSingleton(typeof(IUserRepository), new UserRepository());
            Mvx.IoCProvider.RegisterSingleton(typeof(ITodoItemRepository), new TodoItemRepository());
            Mvx.IoCProvider.RegisterSingleton(typeof(IDialogsHelper), new DialogsHelper());
            Mvx.IoCProvider.RegisterSingleton(typeof(IPermissionsHelper), new PermissionsHelper());
            Mvx.IoCProvider.RegisterSingleton(typeof(IEncryptionHelper), new EncryptionHelper());
            Mvx.IoCProvider.RegisterSingleton(typeof(IPhotoCaptureHelper), new PhotoCaptureHelper());

            IDialogsHelper dialogsHelper = Mvx.IoCProvider.Resolve <IDialogsHelper>();

            Mvx.IoCProvider.RegisterSingleton(typeof(IValidationHelper), new ValidationHelper(dialogsHelper));

            IUserRepository userRepository = Mvx.IoCProvider.Resolve <IUserRepository>();

            Mvx.IoCProvider.RegisterSingleton(typeof(IUserStorageHelper), new UserStorageHelper(userRepository));

            IPermissionsHelper  permissionsHelper  = Mvx.IoCProvider.Resolve <IPermissionsHelper>();
            IPhotoCaptureHelper photoCaptureHelper = Mvx.IoCProvider.Resolve <IPhotoCaptureHelper>();
            IEncryptionHelper   encryptionHelper   = Mvx.IoCProvider.Resolve <IEncryptionHelper>();
            var photoEditHelper = new PhotoEditHelper(permissionsHelper, photoCaptureHelper, encryptionHelper);

            Mvx.IoCProvider.RegisterSingleton(typeof(IPhotoEditHelper), photoEditHelper);

            IValidationHelper  validationHelper = Mvx.IoCProvider.Resolve <IValidationHelper>();
            IUserStorageHelper storage          = Mvx.IoCProvider.Resolve <IUserStorageHelper>();

            var userService = new UserService(validationHelper, dialogsHelper, userRepository, storage, photoEditHelper);

            Mvx.IoCProvider.RegisterSingleton(typeof(IUserService), userService);

            Mvx.IoCProvider.RegisterSingleton(typeof(ITodoItemService), new TodoItemService(validationHelper));

            RegisterCustomAppStart <AppStart>();
        }