Exemplo n.º 1
0
Arquivo: Boot.cs Projeto: THJLI/dover
        public Boot(LicenseManager licenseValidation, IAddinManager addinManager, IAddinLoader addinLoader,
            IEventDispatcher dispatcher, IFormEventHandler formEventHandler, I18NService i18nService,
            AddinAppEventHandler addinAppEventHandler)
        {
            this.licenseManager = licenseValidation;
            this.addinManager = addinManager;
            this.dispatcher = dispatcher;
            this.formEventHandler = formEventHandler;
            this.addinLoader = addinLoader;
            this.addinAppEventHandler = addinAppEventHandler;

            i18nService.ConfigureThreadI18n(System.Threading.Thread.CurrentThread);
        }
Exemplo n.º 2
0
        public Boot(LicenseManager licenseValidation, IAddinManager addinManager, IAddinLoader addinLoader,
                    IEventDispatcher dispatcher, IFormEventHandler formEventHandler, I18NService i18nService,
                    AddinAppEventHandler addinAppEventHandler)
        {
            this.licenseManager       = licenseValidation;
            this.addinManager         = addinManager;
            this.dispatcher           = dispatcher;
            this.formEventHandler     = formEventHandler;
            this.addinLoader          = addinLoader;
            this.addinAppEventHandler = addinAppEventHandler;

            i18nService.ConfigureThreadI18n(System.Threading.Thread.CurrentThread);
        }
Exemplo n.º 3
0
 public AddinManager(PermissionManager permissionManager, FileUpdate fileUpdate,
                     BusinessOneDAO b1DAO, I18NService i18nService, AssemblyDAO assemblyDAO, IAddinLoader addinLoader,
                     LicenseManager licenseManager)
 {
     _initialized           = false;
     this.permissionManager = permissionManager;
     this.assemblyDAO       = assemblyDAO;
     this.b1DAO             = b1DAO;
     this.i18nService       = i18nService;
     this.fileUpdate        = fileUpdate;
     this.addinLoader       = addinLoader;
     this.licenseManager    = licenseManager;
 }
Exemplo n.º 4
0
 public AddinManager(PermissionManager permissionManager, FileUpdate fileUpdate,
     BusinessOneDAO b1DAO, I18NService i18nService, AssemblyDAO assemblyDAO, IAddinLoader addinLoader,
     LicenseManager licenseManager)
 {
     _initialized = false;
     this.permissionManager = permissionManager;
     this.assemblyDAO = assemblyDAO;
     this.b1DAO = b1DAO;
     this.i18nService = i18nService;
     this.fileUpdate = fileUpdate;
     this.addinLoader = addinLoader;
     this.licenseManager = licenseManager;
 }
Exemplo n.º 5
0
        internal void Run()
        {
            try
            {
                runningAddins.Add(this);
                runningAddinsHash.Add(asm.Code, this);

                var setup = new AppDomainSetup();
                setup.ApplicationName = "Dover.Inception";
                setup.ApplicationBase = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "..", "addIn", asm.Namespace, asm.Name);
                var domain = AppDomain.CreateDomain("Dover.AddIn", null, setup);
                domain.SetData("shutdownEvent", shutdownEvent); // Thread synchronization
                domain.SetData("bootEvent", bootEvent);
                domain.SetData("assemblyName", asm.Name);       // Used to get current AssemblyName for logging and reflection
                domain.SetData("frameworkManager", frameworkAddinManager);
                IApplication app = (IApplication)domain.CreateInstanceAndUnwrap("Framework", "Dover.Framework.Application");
                SAPServiceFactory.PrepareForInception(domain);
                addinFormEventHandler = app.Resolve <IFormEventHandler>();
                addinLoader           = app.Resolve <IAddinLoader>();
                eventDispatcher       = app.Resolve <IEventDispatcher>();
                Sponsor <IApplication>      appSponsor       = new Sponsor <IApplication>(app);
                Sponsor <IFormEventHandler> formEventSponsor = new Sponsor <IFormEventHandler>(addinFormEventHandler);
                Sponsor <IAddinLoader>      loaderSponsor    = new Sponsor <IAddinLoader>(addinLoader);
                Sponsor <IEventDispatcher>  eventSponsor     = new Sponsor <IEventDispatcher>(eventDispatcher);

                app.RunAddin();
                AppDomain.Unload(domain);
            }
            catch (AppDomainUnloadedException e)
            {
                // ignore and continue shutdown.
            }
            finally
            {
                runningAddins.Remove(this);
                runningAddinsHash.Remove(asm.Name);
            }
        }
Exemplo n.º 6
0
        internal void Run()
        {
            try
            {
                runningAddins.Add(this);
                runningAddinsHash.Add(asm.Code, this);

                var setup = new AppDomainSetup();
                setup.ApplicationName = "Dover.Inception";
                setup.ApplicationBase = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "..", "addIn", asm.Namespace, asm.Name);
                var domain = AppDomain.CreateDomain("Dover.AddIn", null, setup);
                domain.SetData("shutdownEvent", shutdownEvent); // Thread synchronization
                domain.SetData("bootEvent", bootEvent);
                domain.SetData("assemblyName", asm.Name); // Used to get current AssemblyName for logging and reflection
                domain.SetData("frameworkManager", frameworkAddinManager);
                IApplication app = (IApplication)domain.CreateInstanceAndUnwrap("Framework", "Dover.Framework.Application");
                SAPServiceFactory.PrepareForInception(domain);
                addinFormEventHandler = app.Resolve<IFormEventHandler>();
                addinLoader = app.Resolve<IAddinLoader>();
                eventDispatcher = app.Resolve<IEventDispatcher>();
                Sponsor<IApplication> appSponsor = new Sponsor<IApplication>(app);
                Sponsor<IFormEventHandler> formEventSponsor = new Sponsor<IFormEventHandler>(addinFormEventHandler);
                Sponsor<IAddinLoader> loaderSponsor = new Sponsor<IAddinLoader>(addinLoader);
                Sponsor<IEventDispatcher> eventSponsor = new Sponsor<IEventDispatcher>(eventDispatcher);

                app.RunAddin();
                AppDomain.Unload(domain);
            }
            catch (AppDomainUnloadedException e)
            {
                // ignore and continue shutdown.
            }
            finally
            {
                runningAddins.Remove(this);
                runningAddinsHash.Remove(asm.Name);
            }
        }