コード例 #1
0
        //void DSPersistentBase_OnObjectCreated(DSEntityBase obj)
        //{
        //    if (_type2BllMap.ContainsKey(obj.GetType()))
        //        Activator.CreateInstance(_type2BllMap[obj.GetType()], obj);
        //}
        public DXApplication1Module()
        {
            InitializeComponent();
            BaseObject.OidInitializationMode = OidInitializationMode.AfterConstruction;

            AdditionalExportedTypes.AddRange(ModuleHelper.CollectExportedTypesFromAssembly(typeof(Client).Assembly, t => !t.ContainsGenericParameters));

            //var x = new PolicyBl(new DBRepository());
            //var y = new PC3Bl(new DBRepository());
            //DSEntityBase.OnObjectCreated += DSPersistentBase_OnObjectCreated;

            //var result = typeof(BlBase<>).Assembly
            //    .GetTypes()
            //    .Where(t => t.BaseType != null && t.BaseType.IsGenericType &&
            //                t.BaseType.GetGenericTypeDefinition() == typeof(BlBase<>)
            //    );

            var result = typeof(BlBase <>).Assembly
                         .GetTypes()
                         .Where(t => t.ParentTypes().Any(p => p.IsGenericType && p.GetGenericTypeDefinition() == typeof(BlBase <>)));

            foreach (var type in result)
            {
                //var constructedType = typeof(DBRepository<>).MakeGenericType(type);

                //var x = Activator.CreateInstance(constructedType, new object[] { });

                var blInstance = (IBllBase)Activator.CreateInstance(type);
                _type2BllMap.Add(blInstance.BoType, blInstance);
            }
        }
コード例 #2
0
        public FeatureCenterModule()
        {
            AdditionalExportedTypes.AddRange(ModuleHelper.CollectExportedTypesFromAssembly(Assembly.GetAssembly(typeof(Analysis)), IsExportedType));
            AdditionalExportedTypes.AddRange(ModuleHelper.CollectExportedTypesFromAssembly(Assembly.GetAssembly(typeof(Xpand.Persistent.BaseImpl.Updater)), IsExportedType));
            AdditionalExportedTypes.AddRange(ModuleHelper.CollectExportedTypesFromAssembly(Assembly.GetAssembly(typeof(ThresholdSeverity)), IsExportedType));

            InitializeComponent();
        }
コード例 #3
0
        public AptekaModule()
        {
            InitializeComponent();
            DevExpress.ExpressApp.Security.SecurityModule.UsedExportedTypes = DevExpress.Persistent.Base.UsedExportedTypes.Custom;
            AdditionalExportedTypes.Add(typeof(DevExpress.Persistent.BaseImpl.EF.Analysis));

            // Register entites from another assembly
            AdditionalExportedTypes.AddRange(
                ModuleHelper.CollectExportedTypesFromAssembly(
                    typeof(Invoice).Assembly,
                    type => type.Namespace.StartsWith("Apteka.Model.Entities")));
        }
コード例 #4
0
        public override void Setup(ApplicationModulesManager moduleManager)
        {
            base.Setup(moduleManager);
            AdditionalExportedTypes.AddRange(ModuleHelper.CollectExportedTypesFromAssembly(Assembly.GetAssembly(typeof(Analysis)), IsExportedType));
            AdditionalExportedTypes.AddRange(ModuleHelper.CollectExportedTypesFromAssembly(Assembly.GetAssembly(typeof(SequenceObject)), IsExportedType));
            AdditionalExportedTypes.AddRange(ModuleHelper.CollectExportedTypesFromAssembly(Assembly.GetAssembly(typeof(Customer)), IsExportedType));

            var modelDifferenceBaseModule = (ModelDifferenceModule)moduleManager.Modules.SingleOrDefault(mbase => mbase is ModelDifferenceModule);

            if (modelDifferenceBaseModule != null)
            {
                modelDifferenceBaseModule.CreateCustomModelDifferenceStore += ModelDifferenceBaseModuleOnCreateCustomModelDifferenceStore;
            }
        }
コード例 #5
0
ファイル: Updater.cs プロジェクト: xwagner2/eXpand
        public bool Run(RuntimeSetupInfo setupInfo)
        {
            var typesInfo = new TypesInfo();

            typesInfo.AddEntityStore(new NonPersistentEntityStore(typesInfo));
            var reflectionDictionary = new ReflectionDictionary(); reflectionDictionary.CollectClassInfos(typeof(ModuleArtifact).Assembly);
            var xpoTypeInfoSource    = new XpoTypeInfoSource(typesInfo, reflectionDictionary);

            typesInfo.AddEntityStore(xpoTypeInfoSource);
            typesInfo.LoadTypes(typeof(ModuleArtifact).Assembly);
            var exportedTypesFromAssembly = ModuleHelper.CollectExportedTypesFromAssembly(typeof(ModuleArtifact).Assembly, ExportedTypeHelpers.IsExportedType);

            foreach (var type in exportedTypesFromAssembly)
            {
                xpoTypeInfoSource.RegisterEntity(type);
            }

            var objectSpace = new XPObjectSpace(typesInfo, xpoTypeInfoSource, () => new UnitOfWork(reflectionDictionary)
            {
                ConnectionString = setupInfo.ConnectionString
            });

            if (!objectSpace.Contains <ModuleChild>())
            {
                var moduleTypes  = GetModuleTypes(setupInfo);
                var childModules = objectSpace.GetModuleChilds(moduleTypes);
                foreach (var childModule in childModules)
                {
                    childModule.Value.CreateArtifacts(childModule.Key);
                    childModule.Value.CreateExtenderInterfaces(childModule.Key);
                }
                UpdateMapViewModule(childModules, objectSpace);
            }
            CreateObjects(objectSpace, setupInfo);
            objectSpace.CommitChanges();
            return(true);
        }
コード例 #6
0
 public XpandWorkFlowModule()
 {
     InitializeComponent();
     AdditionalExportedTypes.AddRange(ModuleHelper.CollectExportedTypesFromAssembly(GetType().Assembly, IsExportedType));
 }
コード例 #7
0
 public ExternalApplicationWindowsFormsModule()
 {
     AdditionalExportedTypes.AddRange(ModuleHelper.CollectExportedTypesFromAssembly(Assembly.GetAssembly(typeof(Xpand.Persistent.BaseImpl.ImportExport.ClassInfoGraphNode)), IsExportedType));
     InitializeComponent();
 }
コード例 #8
0
 public static IEnumerable <Type> CollectExportedTypesFromAssembly(this Assembly assembly)
 => ModuleHelper.CollectExportedTypesFromAssembly(assembly, type1 => type1.IsExportedType());
コード例 #9
0
 public XpandWorkFlowModule()
 {
     RequiredModuleTypes.Add(typeof(WorkflowModule));
     RequiredModuleTypes.Add(typeof(ConditionalAppearanceModule));
     AdditionalExportedTypes.AddRange(ModuleHelper.CollectExportedTypesFromAssembly(GetType().Assembly, IsExportedType));
 }
コード例 #10
0
 public PolicyNormalModule()
 {
     InitializeComponent();
     BaseObject.OidInitializationMode = OidInitializationMode.AfterConstruction;
     AdditionalExportedTypes.AddRange(ModuleHelper.CollectExportedTypesFromAssembly(typeof(Human).Assembly, t => !t.ContainsGenericParameters));
 }