public async Task <VegaDevice> AddDeviceAsync(VegaDevice tempDevice, CancellationToken token = default)
        {
            _context.TempDevices.Add(tempDevice);
            await _context.SaveChangesAsync(token).ConfigureAwait(false);

            return(tempDevice);
        }
Esempio n. 2
0
        public async Task <ActionResult <VegaDevice> > PostDeviceAsync(VegaDevice vegaTempDevice)
        {
            if (vegaTempDevice is null)
            {
                return(BadRequest());
            }

            try
            {
                await _repository.AddDeviceAsync(vegaTempDevice).ConfigureAwait(false);
            }
            catch (DbUpdateException)
            {
                if (_repository.DeviceExists(vegaTempDevice.Id))
                {
                    return(Conflict());
                }
                else
                {
                    throw;
                }
            }

            return(CreatedAtAction("GetDevice", new { id = vegaTempDevice.Id }, vegaTempDevice));
        }
Esempio n. 3
0
        public async Task <IActionResult> PutDeviceAsync(long id, VegaDevice vegaTempDevice)
        {
            if (vegaTempDevice is null)
            {
                throw new System.ArgumentNullException(nameof(vegaTempDevice));
            }

            if (id != vegaTempDevice.Id)
            {
                return(BadRequest());
            }

            try
            {
                await _repository.EditDeviceAsync(vegaTempDevice).ConfigureAwait(false);
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!_repository.DeviceExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
 public async Task EditDeviceAsync(VegaDevice vegaTempDevice, CancellationToken token = default)
 {
     _context.Entry(vegaTempDevice).State = EntityState.Modified;
     await _context.SaveChangesAsync(token).ConfigureAwait(false);
 }
Esempio n. 5
0
        private async Task UpdateTemperatureDataAsync(ITemperatureDeviceDataRepository repository, VegaDevice device)
        {
            var lastUpdateTime = await repository
                                 .GetUptimeAsync(device.Id, _cancellationToken)
                                 .ConfigureAwait(false);

            var vegaServerLoadedData = await communicator
                                       .GetTemperatureDeviceDatasAsync(device.Eui, device.Id, lastUpdateTime, _cancellationToken)
                                       .ConfigureAwait(false);

            await repository
            .AddAsync(vegaServerLoadedData, _cancellationToken)
            .ConfigureAwait(false);
        }
Esempio n. 6
0
        private async Task UpdateMoveDataAsync(IMovingDeviceDataRepository repository, VegaDevice device)
        {
            var lastUpdateTime = await repository
                                 .GetLastUpdateTime(device.Id, _cancellationToken)
                                 .ConfigureAwait(false);

            var vegaServerLoadedData = await communicator
                                       .GetMoveDeviceDataAsync(device.Eui, device.Id, lastUpdateTime, _cancellationToken)
                                       .ConfigureAwait(false);

            await repository
            .AddVegaMovingDeviceDataAsync(vegaServerLoadedData, _cancellationToken)
            .ConfigureAwait(false);
        }