コード例 #1
0
        private ISyncService[] CreateSyncServices()
        {
            var userService            = new UserSyncService(_logger);
            var orgService             = new OrganizationSyncService(userService, _logger);
            var personService          = new PersonSyncService(userService, _logger);
            var dealService            = new DealSyncService(userService, _logger);
            var activityService        = new ActivitySyncService(userService, _logger);
            var noteService            = new NoteSyncService(userService, _logger);
            var orgRelationshipService = new OrganizationRelationshipSyncService(orgService, _logger);

            return(new ISyncService[]
            {
                userService,
                orgService,
                personService,
                dealService,
                activityService,
                noteService,
                orgRelationshipService,
                new ActivityFieldSyncService(_logger),
                new ActivityTypeSyncService(_logger),
                new PersonFieldSyncService(_logger),
                new DealFieldSyncService(_logger),
                new NoteFieldSyncService(_logger),
                new OrganizationFieldSyncService(_logger)
            });
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: os2indberetning/os2ferie
        static void Main(string[] args)
        {
            var logger = NinjectWebKernel.CreateKernel().Get <ILogger>();

            // hacks because of error with Entity Framework.
            // This forces the dmzconnection to use MySql.
            new DataContext();

            var personSync = new PersonSyncService(new GenericDmzRepository <Profile>(new DmzContext()),
                                                   new GenericRepository <Person>(new DataContext()),
                                                   NinjectWebKernel.CreateKernel().Get <IPersonService>());

            var driveSync = new DriveReportSyncService(new GenericDmzRepository <DriveReport>(new DmzContext()),
                                                       new GenericRepository <Core.DomainModel.DriveReport>(new DataContext()), new GenericRepository <Rate>(new DataContext()), new GenericRepository <LicensePlate>(new DataContext()), NinjectWebKernel.CreateKernel().Get <IDriveReportService>(), NinjectWebKernel.CreateKernel().Get <IRoute <RouteInformation> >(), NinjectWebKernel.CreateKernel().Get <IAddressCoordinates>(), NinjectWebKernel.CreateKernel().Get <IGenericRepository <Core.DomainModel.Employment> >(), NinjectWebKernel.CreateKernel().Get <ILogger>());

            var rateSync = new RateSyncService(new GenericDmzRepository <Core.DmzModel.Rate>(new DmzContext()),
                                               new GenericRepository <Rate>(new DataContext()));

            try
            {
                Console.WriteLine("DriveReportsSyncFromDmz");
                driveSync.SyncFromDmz();
            }
            catch (Exception ex)
            {
                logger.Log("Fejl under synkronisering af indberetninger fra DMZ. Mobilindberetninger er ikke synkroniserede.", "dmz", ex, 1);
                throw;
            }

            try
            {
                Console.WriteLine("PersonSyncToDmz");
                personSync.SyncToDmz();
            }
            catch (Exception ex)
            {
                logger.Log("Fejl under synkronisering af medarbejdere til DMZ. Mobil-app er ikke opdateret med nyeste medarbejderdata.", "dmz", ex, 1);
                throw;
            }

            try
            {
                Console.WriteLine("RateSyncToDmz");
                rateSync.SyncToDmz();
            }
            catch (Exception ex)
            {
                logger.Log("Fejl under synkronisering af takster til DMZ. Mobil-app er ikke opdateret med nyeste rater.", "dmz", ex, 1);
                throw;
            }

            Console.WriteLine("Done");
        }
コード例 #3
0
        static void Main(string[] args)
        {
            var logger = NinjectWebKernel.CreateKernel().Get <ILogger>();

            // hacks because of error with Entity Framework.
            // This forces the dmzconnection to use MySql.
            new DataContext();

            var personSync = new PersonSyncService(new GenericDmzRepository <Profile>(new DmzContext()),
                                                   new GenericRepository <Person>(new DataContext()), new GenericDmzRepository <Core.DmzModel.Employment>(new DmzContext()),
                                                   NinjectWebKernel.CreateKernel().Get <IPersonService>(), logger);

            var driveSync = new DriveReportSyncService(new GenericDmzRepository <DriveReport>(new DmzContext()),
                                                       new GenericRepository <Core.DomainModel.DriveReport>(new DataContext()), new GenericRepository <Rate>(new DataContext()), new GenericRepository <LicensePlate>(new DataContext()), NinjectWebKernel.CreateKernel().Get <IDriveReportService>(), NinjectWebKernel.CreateKernel().Get <IRoute <RouteInformation> >(), NinjectWebKernel.CreateKernel().Get <IAddressCoordinates>(), NinjectWebKernel.CreateKernel().Get <IGenericRepository <Core.DomainModel.Employment> >(), logger);

            var rateSync = new RateSyncService(new GenericDmzRepository <Core.DmzModel.Rate>(new DmzContext()),
                                               new GenericRepository <Rate>(new DataContext()), logger);

            var orgUnitSync = new OrgUnitSyncService(new GenericDmzRepository <Core.DmzModel.OrgUnit>(new DmzContext()),
                                                     new GenericRepository <Core.DomainModel.OrgUnit>(new DataContext()), logger);

            var userAuthSync = new UserAuthSyncService(new GenericRepository <Core.DomainModel.AppLogin>(new DataContext()),
                                                       new GenericDmzRepository <Core.DmzModel.UserAuth>(new DmzContext()), logger);

            var auditlogSync = new AuditlogSyncService(new GenericDmzRepository <Core.DmzModel.Auditlog>(new DmzContext()), new GenericRepository <Core.DomainModel.Auditlog>(new DataContext()), logger);

            logger.Debug("-------- DMZSYNC STARTED --------");

            try
            {
                logger.Debug("SyncFromDMZ started");
                Console.WriteLine("DriveReportsSyncFromDmz");
                driveSync.SyncFromDmz();
            }
            catch (Exception ex)
            {
                logger.Error($"Error during drivereport synchronization from DMZ", ex);
                logger.LogForAdmin("Fejl under synkronisering af indberetninger fra DMZ. Mobilindberetninger er ikke synkroniserede.");
                throw;
            }

            try
            {
                logger.Debug("OrgUnitSyncToDmz started");
                Console.WriteLine("OrgUnitSyncToDmz");
                orgUnitSync.SyncToDmz();
            }
            catch (Exception ex)
            {
                logger.Error($"Error during orgunit synchronization to DMZ", ex);
                logger.LogForAdmin("Fejl ved synkronisering af organisationsenheder til DMZ.");
                throw;
            }

            try
            {
                logger.Debug("PersonSyncToDmz started");
                Console.WriteLine("PersonSyncToDmz");
                personSync.SyncToDmz();
            }
            catch (Exception ex)
            {
                logger.Error($"Error during people synchronization to DMZ", ex);
                logger.LogForAdmin("Fejl ved synkronisering af medarbejdere til DMZ.");
                throw;
            }

            try
            {
                logger.Debug("RateSyncToDmz started");
                Console.WriteLine("RateSyncToDmz");
                rateSync.SyncToDmz();
            }
            catch (Exception ex)
            {
                logger.Error($"Error during rate synchronization from DMZ", ex);
                logger.LogForAdmin("Fejl ved synkronisering af takster til DMZ.");
                throw;
            }

            try
            {
                logger.Debug("UserAuthSyncToDmz started");
                Console.WriteLine("UserAuthSyncToDmz");
                userAuthSync.SyncToDmz();
            }
            catch (Exception ex)
            {
                logger.Error($"Error during userauth synchronization from DMZ", ex);
                logger.LogForAdmin("Fejl ved synkronisering af app-logins til DMZ. Nogle brugere vil muligvis ikke kunne logge på app.");
                throw;
            }

            try
            {
                logger.Debug("AuditlogSyncFromDmz started");
                Console.WriteLine("AuditlogSyncFromDmz");
                auditlogSync.SyncFromDmz();
            }
            catch (Exception ex)
            {
                logger.Error($"Error during auditlog synchronization from DMZ", ex);
                logger.LogForAdmin("Fejl ved synkronisering af auditlogs fra DMZ.");
                throw;
            }

            logger.Debug("-------- DMZSYNC FINISHED --------");
            Console.WriteLine("Done");
        }