public async Task <VegaDevice> AddDeviceAsync(VegaDevice tempDevice, CancellationToken token = default) { _context.TempDevices.Add(tempDevice); await _context.SaveChangesAsync(token).ConfigureAwait(false); return(tempDevice); }
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)); }
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); }
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); }
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); }