public void RegisterAssembly(IConventionalRegistrationContext context)
        {
            //Transient
            context.IocManager.IocContainer.Register(
                Classes.FromAssembly(context.Assembly)
                    .IncludeNonPublicTypes()
                    .BasedOn<ITransientDependency>()
                    .WithService.Self()
                    .WithService.DefaultInterfaces()
                    .LifestyleTransient()
                );

            //Singleton
            context.IocManager.IocContainer.Register(
                Classes.FromAssembly(context.Assembly)
                    .IncludeNonPublicTypes()
                    .BasedOn<ISingletonDependency>()
                    .WithService.Self()
                    .WithService.DefaultInterfaces()
                    .LifestyleSingleton()
                );

            //Windsor Interceptors
            context.IocManager.IocContainer.Register(
                Classes.FromAssembly(context.Assembly)
                    .IncludeNonPublicTypes()
                    .BasedOn<IInterceptor>()
                    .WithService.Self()
                    .LifestyleTransient()
                );
        }
 public void RegisterAssembly(IConventionalRegistrationContext context)
 {
     context.IocManager.IocContainer.Register(
        Classes.FromAssembly(context.Assembly).BasedOn<Controller>().LifestyleTransient()
         );
     ControllerBuilder.Current.SetControllerFactory(new WindsorControllerFactory(context.IocManager.IocContainer.Kernel));
 }
 public void RegisterAssembly(IConventionalRegistrationContext context)
 {
     context.IocManager.IocContainer.Register(
         Classes.FromAssembly(context.Assembly)
             .BasedOn<ApiController>()
             .LifestyleTransient()
         );
 }
 public void RegisterAssembly(IConventionalRegistrationContext context)
 {
     context.IocManager.IocContainer.Register(
         Classes.FromAssembly(context.Assembly)
             .IncludeNonPublicTypes()
             .BasedOn<AbpDbContext>()
             .WithServiceSelf()
             .LifestyleTransient()
             .Configure(c => c.DynamicParameters(
                 (kernel, dynamicParams) =>
                 {
                     var connectionString = GetNameOrConnectionStringOrNull(context.IocManager);
                     if (!string.IsNullOrWhiteSpace(connectionString))
                     {
                         dynamicParams["nameOrConnectionString"] = connectionString;
                     }
                 })));
 }
 public void RegisterAssembly(IConventionalRegistrationContext context)
 {
     context.IocManager.IocContainer.Register(
         Classes.FromAssembly(context.Assembly)
             .IncludeNonPublicTypes()
             .BasedOn<AdoDbContext>()
             .WithServiceSelf()
             .LifestyleTransient()
             .Configure(c => c.DynamicParameters((kernel, dynamicParams) =>
             {
                 var dbSetting = context.IocManager.Resolve<DatabaseConfiguration>();
                 if (!string.IsNullOrWhiteSpace(dbSetting.ConnectionString))
                 {
                     dynamicParams["dbConnection"] =
                         IocManager.Instance.ResolveNamed<IDbConnection>(dbSetting.Dialect.ToString()
                             , new {dbSetting.ConnectionString});
                 }
             })));
 }
        /// <inheritdoc/>
        public void RegisterAssembly(IConventionalRegistrationContext context)
        {
            context.IocManager.IocContainer.Register(
                Classes.FromAssembly(context.Assembly)
                .BasedOn <Controller>()
                .If(type => !type.GetTypeInfo().IsGenericTypeDefinition)
                .LifestyleTransient()
                );

            //PerWebRequest
            context.IocManager.IocContainer.Register(
                Classes.FromAssembly(context.Assembly)
                .IncludeNonPublicTypes()
                .BasedOn <IPerWebRequestDependency>()
                .If(type => !type.GetTypeInfo().IsGenericTypeDefinition)
                .WithService.Self()
                .WithService.DefaultInterfaces()
                .LifestylePerWebRequest()
                );
        }
        public void RegisterAssembly(IConventionalRegistrationContext context)
        {
            // 注册瞬态对象
            context.IocManager.IocContainer.Register(Classes.FromAssembly(context.Assembly)
                                                     .IncludeNonPublicTypes()
                                                     .BasedOn <ITransientDependency>()
                                                     .If(type => !type.GetTypeInfo().IsConstructedGenericType)
                                                     .WithService.Self()
                                                     .WithService.DefaultInterfaces()
                                                     .LifestyleTransient());

            // 注册单例对象
            context.IocManager.IocContainer.Register(Classes.FromAssembly(context.Assembly)
                                                     .IncludeNonPublicTypes()
                                                     .BasedOn <ISingletonDependency>()
                                                     .If(type => !type.GetTypeInfo().IsConstructedGenericType)
                                                     .WithService.Self()
                                                     .WithService.DefaultInterfaces()
                                                     .LifestyleSingleton());
        }
        public void RegisterAssembly(IConventionalRegistrationContext context)
        {
            //Singleton
            context.IocManager.IocContainer.Register(
                Classes.FromAssembly(context.Assembly)
                .IncludeNonPublicTypes()
                .BasedOn <ISingletonDependency>()
                .WithService.Self()
                .WithService.DefaultInterfaces()
                .LifestyleSingleton()
                );

            //PerWebRequest
            context.IocManager.IocContainer.Register(
                Classes.FromAssembly(context.Assembly)
                .IncludeNonPublicTypes()
                .BasedOn <IPerWebRequestDependency>()
                .WithService.Self()
                .WithService.DefaultInterfaces()
                .LifestyleCustom <PerWebRequestLifestyleManager>()
                );

            //Transient
            context.IocManager.IocContainer.Register(
                Classes.FromAssembly(context.Assembly)
                .IncludeNonPublicTypes()
                .BasedOn <ITransientDependency>()
                .WithService.Self()
                .WithService.DefaultInterfaces()
                .LifestyleTransient()
                );

            //Windsor Interceptors
            context.IocManager.IocContainer.Register(
                Classes.FromAssembly(context.Assembly)
                .IncludeNonPublicTypes()
                .BasedOn <IInterceptor>()
                .WithService.Self()
                .LifestyleTransient()
                );
        }
Exemple #9
0
        /// <inheritdoc/>
        public void RegisterAssembly(IConventionalRegistrationContext context)
        {
            var currentAssmeblyName = context.Assembly.GetName().Name;
            var extensionDescriptor = _extensionDescriptors.FirstOrDefault(t => t.Id == currentAssmeblyName);

            if (extensionDescriptor == null)
            {
                LogHelper.Log(new LogModel()
                {
                    LogSeverity = LogSeverity.Warn,
                    Message     = $"{currentAssmeblyName} can't found extension depond on it.so ignore to register BlockWebController"
                });
                return;
            }

            context.IocManager.IocContainer.Register(
                Classes.FromAssembly(context.Assembly)
                .BasedOn(typeof(IEntityTypeConfiguration <>))
                .WithServiceBase()
                .LifestyleTransient()
                );
        }
Exemple #10
0
        /// <inheritdoc />
        public void RegisterAssembly(IConventionalRegistrationContext context)
        {
            var currentAssmeblyName = context.Assembly.GetName().Name;
            var extensionDescriptor = _extensionDescriptors.FirstOrDefault(t => t.Id == currentAssmeblyName);

            if (extensionDescriptor == null)
            {
                LogHelper.Logger.WarnFormat(
                    $"{currentAssmeblyName} can't found extension depond on it.so ignore to register BlocksConfiguration");
                return;
            }
            var configKey = $"{extensionDescriptor.Name}\\{AppConfigKey}";

            context.IocManager.IocContainer.Register(
                Classes.FromAssembly(context.Assembly)
                .BasedOn <IConfiguration>()
                .If(type => !type.GetTypeInfo().IsGenericTypeDefinition)
                .ConfigureIf(t => !context.IocManager.IsRegistered(configKey), t => t.Named(configKey))
                .WithService.Select((t, baseTypes) => t.GetInterfaces().Where(bType => typeof(IConfiguration) != bType && typeof(IConfiguration).IsAssignableFrom(bType)))
                .LifestyleTransient()
                );
        }
Exemple #11
0
 public void RegisterAssembly(IConventionalRegistrationContext context)
 {
     context.IocManager.IocContainer.Register(
         Classes.FromAssembly(context.Assembly)
         .IncludeNonPublicTypes()
         .BasedOn <ITransientDependency>()
         .WithService.Self()
         .WithService.DefaultInterfaces()
         .LifestyleTransient());
     context.IocManager.IocContainer.Register(
         Classes.FromAssembly(context.Assembly)
         .IncludeNonPublicTypes()
         .BasedOn <ISingletonDependency>()
         .WithServiceSelf()
         .WithServiceAllInterfaces()
         .LifestyleSingleton());
     context.IocManager.IocContainer.Register(
         Classes.FromAssembly(context.Assembly)
         .IncludeNonPublicTypes()
         .BasedOn <IInterceptor>()
         .WithService.Self()
         .LifestyleTransient());
 }
Exemple #12
0
        /// <inheritdoc/>
        public void RegisterAssembly(IConventionalRegistrationContext context)
        {
            var currentAssmeblyName = context.Assembly.GetName().Name;
            var extensionDescriptor = _extensionDescriptors.FirstOrDefault(t => t.Id == currentAssmeblyName);

            if (extensionDescriptor == null)
            {
                LogHelper.logger.WarnFormat($"{currentAssmeblyName} can't found extension depond on it.so ignore to register BlockWebController");
                return;
            }

            context.IocManager.IocContainer.Register(
                Classes.FromAssembly(context.Assembly)
                .BasedOn <BlocksWebMvcController>()
                .If(type => !type.GetTypeInfo().IsGenericTypeDefinition)
                .Configure(t => {
                t.Named(GetControllerSerivceName(extensionDescriptor.Name, t.Implementation.Name));
                t.Activator <DefaultBlocksComponentActivator>();
            })

                .LifestyleTransient()
                );
        }
Exemple #13
0
 public void Register(IConventionalRegistrationContext context) => context.DoConventionalAction <BackgroundJobsConventionalAction>(c => c.Where(t => t.IsStandardType() && (t.IsAssignableToGenericType(typeof(IBackgroundJob <>)) || t.IsAssignableToGenericType(typeof(IAsyncBackgroundJob <>)))));
Exemple #14
0
 public void Register(IConventionalRegistrationContext context)
 {
     Assembly = context.Assembly;
     RegisterAssemblyInvoked = true;
 }
Exemple #15
0
 public void Register(IConventionalRegistrationContext context) => context.RegisterConventionalInterceptor(c => c.Where(t => t.IsAssignableTo <IDomainService>()).Intercept <UnitOfWorkInterceptor>());
Exemple #16
0
 public void Register(IConventionalRegistrationContext context) =>
     context.RegisterConventionalInterceptor(c => c.Where(t => t.IsAssignableTo<IProxiedService>()).Intercept<TestInterceptor>());
Exemple #17
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="context"></param>
 /// <param name="configureAction"></param>
 /// <returns></returns>
 public static IConventionalRegistrationContext RegisterConventionalDependencyInject(this IConventionalRegistrationContext context, Action <IConventionalConfiguration <ConventionalDependencyAction> > configureAction) => context.DoConventionalAction(configureAction);
Exemple #18
0
 /// <inheritdoc/>
 public void RegisterAssembly(IConventionalRegistrationContext context)
 {
     context.IocManager.IocContainer.Register(Classes.FromAssembly(context.Assembly).BasedOn<Controller>().LifestyleTransient());
 }
Exemple #19
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="context"></param>
 /// <param name="configureAction"></param>
 /// <returns></returns>
 public static IConventionalRegistrationContext RegisterEventHandler(this IConventionalRegistrationContext context, Action <IConventionalConfiguration <EventHandlerConventionalAction> > configureAction) => context.DoConventionalAction(configureAction);
Exemple #20
0
 public void Register(IConventionalRegistrationContext context) => context.RegisterConventionalInterceptor(c => c.Where(t => ShouldIntercept(t)).Intercept <AuthorizationInterceptor>());
Exemple #21
0
 public void Register(IConventionalRegistrationContext context)
 {
     Types = context.Types;
     RegisterAssemblyInvoked = true;
 }
 /// <inheritdoc/>
 public void RegisterAssembly(IConventionalRegistrationContext context)
 {
     context.IocManager.IocContainer.Register(Component.For <ILog>().ImplementedBy <Log4Net>());
     context.IocManager.IocContainer.Register(Component.For <ILog>().ImplementedBy <NullLog>());
 }
 public void RegisterAssembly(IConventionalRegistrationContext context)
 {
     context.IocManager.IocContainer.Register(
         Classes.FromAssembly(context.Assembly).IncludeNonPublicTypes().BasedOn <DbContext>().WithService.Self().WithService.DefaultInterfaces().LifestyleTransient()
         );
 }
Exemple #24
0
 public void Register(IConventionalRegistrationContext context) => context.RegisterConventionalDependencyInject(config => config.Where(t => t.IsClass && !t.IsAbstract && t.IsAssignableToGenericType(typeof(IObjectMapper <,>))).As(ObjectMappingServiceSelector.Instance));
Exemple #25
0
 public void RegisterAssembly(IConventionalRegistrationContext context)
 {
     Debug.WriteLine("瓦胡同");
 }
Exemple #26
0
 /// <summary>
 ///
 /// </summary>
 /// <typeparam name="TAction"></typeparam>
 /// <param name="context"></param>
 /// <param name="configureAction"></param>
 /// <returns></returns>
 public static IConventionalRegistrationContext DoConventionalAction <TAction>(this IConventionalRegistrationContext context, Action <IConventionalConfiguration> configureAction) where TAction : ConventionalActionBase
 {
     context.Services.DoConventionalAction <TAction>(context.Types, configureAction);
     return(context);
 }
Exemple #27
0
 public void Register(IConventionalRegistrationContext context) => context.RegisterConventionalDependencyInject(config => config.Where(t => t.IsStandardType()).Where(t => t.IsAssignableTo <IJob>()).AsSelf().Lifetime(ServiceLifetime.Transient));
Exemple #28
0
 public void Register(IConventionalRegistrationContext context) =>
 context.RegisterConventionalInterceptor(c => c.Where(t => t.AttributeExists <UnitOfWorkAttribute>()).Intercept <UnitOfWorkInterceptor>());