Ejemplo n.º 1
0
        private static void DownloadTimeRecords()
        {
            try
            {
                Log.Logger.Information("Download timeRecords started");

                var timeRecordImporter   = ImporterFactory.GetTimeRecordImporter();
                var timeRecordRepository = new TimeRecordRepository();

                foreach (var issueId in _dbContext.Issues.Where(i => i.ExternalId.HasValue).Select(i => i.ExternalId.Value).ToArray())
                {
                    var timeRecords = timeRecordImporter.GetMany(issueId: issueId).ToArray();
                    timeRecordRepository.Save(timeRecords);
                }

                Log.Logger.Information("Download timeRecords finished");
            }
            catch (Exception ex)
            {
                Log.Logger.Error(ex.InnerException.Message);
            }
        }
Ejemplo n.º 2
0
        private static void RegisterCommandHandlers(InMemoryBus bus)
        {
            Container.Add <DataContext>(new DataContext());

            Container.Add <IUserStorage <DB.Models.User.User> >(new UserStorage(Container.Get <DataContext>()));
            Container.Add <IProjectStorage <DB.Models.Project.Project> >(new ProjectStorage(Container.Get <DataContext>()));
            Container.Add <ITimeRecordStorage <DB.Models.Project.TimeRecord> >(new TimeRecordStorage(Container.Get <DataContext>()));

            var userRepository = new UserRepository(Container.Get <IEventStore>(),
                                                    Container.Get <IUserStorage <DB.Models.User.User> >());

            Container.Add <IRepository <User, UserId> >(userRepository);

            Container.Add(new UserCommandService(userRepository));

            var projectRepository = new ProjectRepository(Container.Get <IEventStore>(),
                                                          Container.Get <IProjectStorage <DB.Models.Project.Project> >());

            Container.Add <IRepository <Project, ProjectId> >(projectRepository);

            Container.Add(new ProjectCommandService(projectRepository, Container.Get <DataContext>()));

            var timeRecordRepository = new TimeRecordRepository(Container.Get <IEventStore>(),
                                                                Container.Get <ITimeRecordStorage <DB.Models.Project.TimeRecord> >());

            Container.Add <IRepository <TimeRecord, TimeRecordId> >(timeRecordRepository);

            Container.Add(new TimeRecordCommandService(timeRecordRepository));

            var commandHandlersAssemblies = new List <Assembly>
            {
                //assemblies with command handlers
                Assembly.Load(new AssemblyName("TEMPUS.UserDomain.Services")),
                Assembly.Load(new AssemblyName("TEMPUS.ProjectDomain.Services"))
            };

            AutomaticCommandHandlers.Register(commandHandlersAssemblies, bus);
        }
 public IHttpActionResult Delete(int id)
 {
     TimeRecordRepository.Delete(id);
     return(Ok());
 }
 public IHttpActionResult Put(int id, [FromBody] TimeRecord value)
 {
     value.TimeRecordID = id;
     TimeRecordRepository.Update(value);
     return(Ok());
 }
 public IHttpActionResult Post([FromBody] TimeRecord value)
 {
     TimeRecordRepository.Create(value);
     return(Ok());
 }
 public IHttpActionResult Get(int id)
 {
     return(Ok(TimeRecordRepository.ReadById(id)));
 }
 public IHttpActionResult Get()
 {
     return(Ok(TimeRecordRepository.ReadAll()));
 }