コード例 #1
0
        public IDeviceEventRepository GetEventRepository()
        {
            if (deviceEventRepository == null)
            {
                deviceEventRepository = new DbDeviceEventRepository(connection, transaction);
            }

            return(deviceEventRepository);
        }
コード例 #2
0
        public async Task DeleteForDevice(Guid deviceId)
        {
            using (IUnitOfWork uow = factory.Create())
            {
                IDeviceEventRepository deviceEventsRepository = uow.GetEventRepository();

                await deviceEventsRepository.DeleteForDevice(deviceId);

                uow.Commit();
            }
        }
コード例 #3
0
        public async Task <List <DeviceEventResponse> > GetForDevice(Guid deviceId)
        {
            using (IUnitOfWork uow = factory.Create())
            {
                IDeviceEventRepository deviceEventsRepository = uow.GetEventRepository();

                List <EventDescription> response = await deviceEventsRepository.GetForDevice(deviceId);

                return(response.Adapt <List <DeviceEventResponse> >());
            }
        }
コード例 #4
0
        public void Setup()
        {
            DbContextOptionsBuilder optionsBuilder = new DbContextOptionsBuilder <RdxDBContext>();

            optionsBuilder.UseSqlServer(ConnectionString);

            context = new RdxDBContext(optionsBuilder.Options);

            repository = new DeviceEventRepository(context);
            validator  = new DeviceEventDTOValidator();
            business   = new EventBusiness(validator, repository);
        }
コード例 #5
0
        private static async Task SaveEvents(List <DeviceEvent> events, Guid id, IDeviceEventRepository deviceEventRepository, IEventRepository eventRepository)
        {
            foreach (DeviceEvent newEvent in events)
            {
                newEvent.DeviceId = id;
                await deviceEventRepository.Add(newEvent);

                if (!CheckExist(eventRepository, newEvent))
                {
                    await eventRepository.Add(newEvent.Name);
                }
            }
        }
コード例 #6
0
        public async Task Save(DeviceRequest device)
        {
            using (IUnitOfWork uow = uowFactory.Create())
            {
                IDeviceRepository      devicesRepository      = uow.GetDeviceRepository();
                IDeviceEventRepository deviceEventsRepository = uow.GetEventRepository();
                IEventRepository       eventRepository        = uow.GetDeviceEventRepository();

                await SaveOrUpdateDevice(device, devicesRepository);

                await SaveEvents(device.DeviceEvents.Adapt <List <DeviceEvent> >(), device.Id, deviceEventsRepository, eventRepository);

                uow.Commit();
            }
        }
コード例 #7
0
ファイル: EventBusiness.cs プロジェクト: tdpmendes/RadixTest
 public EventBusiness(IValidatable <DeviceEventDTO> validator, IDeviceEventRepository dvcEvtRepository)
 {
     _validator        = validator;
     _dvcEvtRepository = dvcEvtRepository;
 }