Exemplo n.º 1
0
        public static IDryvBuilder Configure(IDependencyContainer container, Action <DryvOptions> setupAction = null)
        {
            if (container == null)
            {
                throw new ArgumentNullException(nameof(container));
            }

            ModelValidatorProviders.Providers.Add(new DryvModelValidatorProvider());

            var options = new DryvOptions();

            setupAction?.Invoke(options);

            container.RegisterSingleton(typeof(IDryvClientModelValidator), typeof(DryvClientModelValidator));
            container.RegisterSingleton(typeof(ITranslator), typeof(JavaScriptTranslator));
            container.RegisterSingleton(typeof(ITranslatorProvider), typeof(TranslatorProvider));
            container.RegisterInstance(typeof(DryvOptions), options);

            return(new DryvBuilder(container)
                   .AddTranslator <ObjectTranslator>()
                   .AddTranslator <DryvResultTranslator>()
                   .AddTranslator <StringTranslator>()
                   .AddTranslator <EnumerableTranslator>()
                   .AddTranslator <RegexTranslator>());
        }
Exemplo n.º 2
0
        public static IDependencyContainer RegisterFormsDependencies(this IDependencyContainer container)
        {
            container.RegisterSingleton <IDialogService, DialogService>();
            container.RegisterSingleton <INavigationService, NavigationService>();
            container.Register <IAuthenticationService, AuthenticationService>();

            return(container);
        }
        static ApplicationContainer()
        {
            Container = DependencyContainer.Create();

            //In House Types
            Container.RegisterSingleton <IZoo, Zoo>(() => new Zoo(Container.Resolve <IAnimalService>(), Container.Resolve <IVisitorService>()));
            Container.Register <IVisitorService, VisitorService>(() => new VisitorService(Container.Resolve <IPersonNameGenerator>()));
            Container.Register <IAnimalService, AnimalService>();

            //External Types
            Container.Register <IPersonNameGenerator, PersonNameGenerator>();
        }
		public void Configure(IDependencyContainer container) {
			container.Register<IEventPublisher, EventPublisher>();
			container.Register<IEventListener, AsyncTestEventListener>();
			AConf aSyncConf = new AConf();
			aSyncConf.EndPoint = () => {
				return "async/execute";
			};
			aSyncConf.SiteUrl = () => {
				return ConfigurationManager.AppSettings["SiteURL"];
			};
			container.RegisterSingleton<IAsyncConfiguration>(aSyncConf);
			container.Register<IAsyncTask, AsyncWebTask>();
		}
Exemplo n.º 5
0
        public void Configure(IDependencyContainer container)
        {
            container.Register <IEventPublisher, EventPublisher>();
            container.Register <IEventListener, AsyncTestEventListener>();
            AConf aSyncConf = new AConf();

            aSyncConf.EndPoint = () => {
                return("async/execute");
            };
            aSyncConf.SiteUrl = () => {
                return(ConfigurationManager.AppSettings["SiteURL"]);
            };
            container.RegisterSingleton <IAsyncConfiguration>(aSyncConf);
            container.Register <IAsyncTask, AsyncWebTask>();
        }
Exemplo n.º 6
0
 public static IDependencyContainer RegisterCoreDependencies(this IDependencyContainer container)
 {
     container.RegisterSingleton <IDataManager, DataManager>();
     container.RegisterSingleton <IAuthenticationManager, AuthenticationManager>();
     return(container);
 }
Exemplo n.º 7
0
        public void Bootstrap(IDependencyContainer container)
        {
            var dbFactory = InitTableMappings();

            container.RegisterSingleton(dbFactory);
        }
        public static IDependencyContainer AddDependencies(this IDependencyContainer container)
        {
            container.RegisterType <IMappingService, MappingService>();

            container.RegisterType <IConfig, DeveloperConfig>();

            //container.RegisterType<IConfig, Config>();
            container.RegisterSingleton <ILogger, Logger>();
            container.RegisterType <IExecutionTimerLogger, ExecutionTimerLogger>();

            container.RegisterType <IDependencyContainer, DependencyContainer>();
            container.RegisterType <IHost, Host>();
            container.RegisterType <IAuthenticationManager, AuthenticationManager>();

            container.RegisterType(typeof(IService <>), typeof(BaseService <>));
            container.RegisterType <IUserService, UserService>();
            container.RegisterType <ICryptographyService, CryptographyService>();
            container.RegisterType <ICarService, CarService>();

            container.RegisterType <IUserRepository, UserRepository>();
            container.RegisterType <ICarRepository, CarRepository>();

            var types = AppDomain.CurrentDomain.GetAssemblies()
                        .SelectMany(s => s.GetExportedTypes())
                        .Where(t => !t.IsAbstract && t.IsClass && t.GetInterfaces()
                               .Any(c => c.IsGenericType && typeof(IRepository <>)
                                    .IsAssignableFrom(c.GetGenericTypeDefinition())));

            foreach (var type in types)
            {
                var inheritedFrom = type.GetInterfaces()
                                    .First(x => x.IsGenericType && typeof(IRepository <>).IsAssignableFrom(x.GetGenericTypeDefinition()));

                container.RegisterType(inheritedFrom, type);
            }

            container.RegisterType <IValidator, Validator>();

            container.RegisterType <ICommandUser, CommandUser>();

            container.RegisterType <IParser, Parser>();

            container.RegisterType <IModelBinder, DefaultModelBinder>();

            var commandTypes = AppDomain.CurrentDomain.GetAssemblies()
                               .SelectMany(s => s.GetExportedTypes())
                               .Where(x => typeof(ICommand).IsAssignableFrom(x) && !x.IsAbstract && x.IsClass && x.IsDefined(typeof(CommandRouteAttribute)));

            foreach (var type in commandTypes)
            {
                var attributeValue = type.GetCustomAttributesData()
                                     .First(c => c.AttributeType == typeof(CommandRouteAttribute))
                                     .ConstructorArguments
                                     .Select(z => z.Value)
                                     .First()
                                     .ToString();

                container.RegisterType(typeof(ICommand), type, attributeValue);
            }

            return(container);
        }
Exemplo n.º 9
0
        public void Bootstrap(IDependencyContainer container)
        {
            // Framework "er"s
            container.RegisterSingleton<IHttpRequestHandler, HttpRequestHandler>();
            container.RegisterSingleton<IJsonSerializer, NewtonsoftJsonSerializer>();
            container.RegisterSingleton<IRouteResolver, RouteResolver>();
            container.RegisterSingleton<IParameterResolver, ParameterResolver>();
            container.RegisterSingleton<IActionInvoker, ActionInvoker>();
            container.RegisterSingleton<IOwinHandler, GenericOwinHandler>();
            container.RegisterSingleton<IServiceConfigBuilder, ServiceConfigBuilder>();
            container.RegisterSingleton<ILogger, SimpleLogger>();

            // Database
            container.RegisterTransient<IUnitOfWork, UnitOfWork>();
            container.RegisterSingleton<IUnitOfWorkStack, UnitOfWorkStack>();
            container.RegisterSingleton<IRepository, Repository>();

            // Interceptors
            container.RegisterSingleton<IActionInterceptorBuilder, MonospadActionInterceptorBuilder>();

            // Providers
            container.RegisterSingleton<IAuthProvider, AuthProvider>();
            container.RegisterSingleton<ICryptoProvider, CryptoProvider>();
            container.RegisterSingleton<IMailProvider, MailProvider>();
            container.RegisterSingleton<IServiceRouteProvider, MonospadRouteProvider>();

            // Auth
            container.RegisterSingleton<IUserService, UserService>();
            container.RegisterSingleton<INoteService, NoteService>();
        }