public override void OnUsing(AppModuleUsingArguments args)
        {
            var setup = args.AppSetup;
            ProxyAppContainerBuilder builder = setup.GetAppContainerBuilder <ProxyAppContainerBuilder>();

            args.ScannedAttributeAndTypeInfos.ForEach(x =>
            {
                if (!(x.Attribute is AttachedImplementorAttribute))
                {
                    return;
                }

                var attachments = x.Type.GetCustomAttributes <AttachmentAttribute>();
                if (!attachments.Any())
                {
                    return;
                }

                builder.AttachImplementor(new AttachedInfo()
                {
                    AttachedType = x.Type,
                    Attachments  = attachments
                });
            });
        }
Exemplo n.º 2
0
        public override void OnUsing(AppModuleUsingArguments args)
        {
            var setup = args.AppSetup;
            ProxyAppContainerBuilder builder = setup.GetAppContainerBuilder <ProxyAppContainerBuilder>();

            args.ScannedAttributeAndTypeInfos.ForEach(x =>
            {
                if (!(x.Attribute is AttachedProxyAttribute))
                {
                    return;
                }

                var attrs = x.Type.GetCustomAttributes();
                if (!attrs.Any())
                {
                    return;
                }

                var attachments       = attrs.OfType <IAttachment>();
                var methodAttachments = attrs.OfType <IMethodAttachment>();

                if (!attachments.Any() && !methodAttachments.Any())
                {
                    return;
                }

                builder.AttachProxy(new ProxyAttachedInfo()
                {
                    AttachedType      = x.Type,
                    Attachments       = attachments,
                    MethodAttachments = methodAttachments
                });
            });
        }
 public override void OnUsing(AppModuleUsingArguments args)
 {
     foreach (var info in args.ScannedAttributeAndTypeInfos)
     {
         Console.WriteLine($"{this.GetType()} : {info.Type}");
     }
 }
        public override void OnUsing(AppModuleUsingArguments args)
        {
            AutofacContainerBuilder builder = args.AppSetup.GetAppContainerBuilder <AutofacContainerBuilder>();

            builder.Building += Builder_Building;

            ConfigAppContainerBuilder configBuilder = args.AppSetup.GetAppContainerBuilder <ConfigAppContainerBuilder>();

            configBuilder.ConfigObjectRegisted += ConfigBuilder_ConfigObjectRegisted;
        }
Exemplo n.º 5
0
        public override void OnUsing(AppModuleUsingArguments args)
        {
            EntityAppContainerBuilder builder = args.AppSetup.GetAppContainerBuilder <EntityAppContainerBuilder>();

            args
            .ScannedAttributeAndTypeInfos
            .Where(x => x.Attribute is EntityAttribute)
            .Select(x => x.Type)
            .ForEach(x => builder.AddEntityType(x));
        }
        public override void OnUsing(AppModuleUsingArguments arguments)
        {
            var setup        = arguments.AppSetup;
            var targetModule = arguments.TargetAppModule;
            var infos        = arguments.ScannedAttributeAndTypeInfos;

            AutofacContainerBuilder autofacContainerBuilder
                = setup.GetAppContainerBuilder <AutofacContainerBuilder>();

            RegisterScanResult(setup, targetModule, autofacContainerBuilder, infos);
        }
        public override void OnUsing(AppModuleUsingArguments arguments)
        {
            var setup        = arguments.AppSetup;
            var targetModule = arguments.TargetAppModule;

            ConfigAppContainerBuilder builder = setup.GetAppContainerBuilder <ConfigAppContainerBuilder>();

            arguments.ScannedAttributeAndTypeInfos
            .Where(x => x.Attribute is ConfigAttribute)
            .ForEach(x => builder.AutoConfig(x));
        }
Exemplo n.º 8
0
        public override void OnUsing(AppModuleUsingArguments args)
        {
            var setup             = args.AppSetup;
            var targetModule      = args.TargetAppModule;
            var controllerBuilder = setup.GetAppContainerBuilder <ControllerAppContainerBuilder>();
            var filterBuilder     = setup.GetAppContainerBuilder <AutoFilterAppContainerBuilder>();

            controllerBuilder.RegsiterControllerAssembly(targetModule.GetType().Assembly);

            args.ScannedAttributeAndTypeInfos
            .Where(x => x.Attribute is AutoFilterAttribute)
            .ForEach(x =>
            {
                filterBuilder.AddFilter(x);
            });
        }
        public override void OnUsing(AppModuleUsingArguments args)
        {
            var setup = args.AppSetup;
            ProxyAppContainerBuilder builder = setup.GetAppContainerBuilder <ProxyAppContainerBuilder>();

            args.ScannedAttributeAndTypeInfos.ForEach(x =>
            {
                if (!x.Type.IsInterface)
                {
                    return;
                }
                if (x.Attribute is ImplementorAttribute)
                {
                    builder.RegisterImplementor(x);
                }
            });
        }
Exemplo n.º 10
0
        public override void OnAppModuleBeforeUsing(AppSetup setup, AppModuleUsingArguments arguments)
        {
            if (!(arguments.UsingAppModule is INamespaceFilter))
            {
                return;
            }

            INamespaceFilter filter = (INamespaceFilter)arguments.UsingAppModule;

            IEnumerable <AttributeAndTypeInfo> infos = arguments.ScannedAttributeAndTypeInfos;

            if (filter.IncludeNamespaces != null && filter.IncludeNamespaces.Length > 0)
            {
                infos = infos.Where(info =>
                {
                    string fullNameOfType = info.Type.FullName;
                    foreach (var ns in filter.IncludeNamespaces)
                    {
                        if (fullNameOfType.StartsWith(ns))
                        {
                            return(true);
                        }
                    }
                    return(false);
                });
            }
            if (filter.ExcludeNamespaces != null && filter.ExcludeNamespaces.Length > 0)
            {
                infos = infos.Where(info =>
                {
                    string fullNameOfType = info.Type.FullName;
                    foreach (var ns in filter.ExcludeNamespaces)
                    {
                        if (fullNameOfType.StartsWith(ns))
                        {
                            return(false);
                        }
                    }
                    return(true);
                });
            }
            arguments.ScannedAttributeAndTypeInfos = infos.ToList();
        }
        public override void OnUsing(AppModuleUsingArguments args)
        {
            var builder = args.AppSetup.GetAppContainerBuilder <TaskContainerBuilder>();

            args.ScannedAttributeAndTypeInfos.ForEach(info => builder.AddTask(info));
        }
Exemplo n.º 12
0
 public override void OnUsing(AppModuleUsingArguments args)
 {
     var builder1 = args.AppSetup.GetAppContainerBuilder <TestContainerBuilder>();
     var builder2 = args.AppSetup.GetAppContainerBuilder <TestContainerBuilder2>();
 }
 public override void OnUsing(AppModuleUsingArguments arguments)
 {
     //var container = setup.GetAppContainerBuilder<TestContainerBuilder>();
     //container.DoNothing();
 }
 public override void OnUsing(AppModuleUsingArguments arguments)
 {
     var setup = arguments.AppSetup;
     ProxyAppContainerBuilder builder = setup.GetAppContainerBuilder <ProxyAppContainerBuilder>();
 }
Exemplo n.º 15
0
 public virtual void OnUsing(AppModuleUsingArguments args)
 {
 }
 public override void OnUsing(AppModuleUsingArguments args)
 {
     args.AppSetup.GetAppContainerBuilder <TestBuilder>();
 }
Exemplo n.º 17
0
 public virtual void OnAppModuleBeforeUsing(AppSetup setup, AppModuleUsingArguments arguments)
 {
 }