public async Task <bool> AddAsync(ManagerUser managerUser, RSU rsu) { var host = GetHost(managerUser); RsuDto rsuDto = rsu.ConvertToRSUDto(); try { var result = await _httpClinet.PostAsJsonAsync($"http://{host}:{managerUser.Manager.Port}/{controller}/{managerUser.Name}/{managerUser.Token}", rsuDto); return(true); } catch (HttpRequestException ex) { return(false); } }
public async Task <RSU> GetAsync(ManagerUser managerUser, int id) { var host = GetHost(managerUser); try { var result = await _httpClinet.GetStringAsync($"http://{host}:{managerUser.Manager.Port}/{controller}/{managerUser.Name}/{managerUser.Token}/{id}"); var rsu = RsuDto.FromJson(result); return(RSU.Parse(rsu, managerUser.Manager)); } catch (HttpRequestException ex) { return(null); } }
public async Task <IEnumerable <RSU> > GetAsync(ManagerUser managerUser) { var host = GetHost(managerUser); try { var result = await _httpClinet.GetStringAsync($"http://{host}:{managerUser.Manager.Port}/{controller}/{managerUser.Name}/{managerUser.Token}"); var rsus = RsuDto.FromJsonCollection(result); return(rsus.Select(r => RSU.Parse(r, managerUser.Manager)).ToList()); } catch (HttpRequestException ex) { return(null); } }
public static RSU Parse(RsuDto rsudto, Manager manager) { return(new RSU { Id = rsudto.Id, IP = IPAddress.Parse(rsudto.IP), Port = rsudto.Port, Name = rsudto.Name, Latitude = rsudto.Latitude, Longitude = rsudto.Longitude, Active = rsudto.Active, MIBVersion = rsudto.MIBVersion, FirmwareVersion = rsudto.FirmwareVersion, LocationDescription = rsudto.LocationDescription, Manufacturer = rsudto.Manufacturer, NotificationIP = IPAddress.Parse(rsudto.NotificationIP), NotificationPort = rsudto.NotificationPort, Manager = manager }); }
public IActionResult Put(string username, string token, [FromBody] RsuDto rsu) { var securityProblem = AuthenticateAuthorize(username, token); if (securityProblem != null) { return(securityProblem); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (!_contextService.UpdateRSU(new RSU { Id = rsu.Id, IP = IPAddress.Parse(rsu.IP), Port = rsu.Port, Name = rsu.Name, Latitude = rsu.Latitude, Longitude = rsu.Longitude, Active = rsu.Active, MIBVersion = rsu.MIBVersion, FirmwareVersion = rsu.FirmwareVersion, LocationDescription = rsu.LocationDescription, Manufacturer = rsu.Manufacturer, NotificationIP = IPAddress.Parse(rsu.NotificationIP), NotificationPort = rsu.NotificationPort })) { return(NotFound(rsu)); } else { _logger.LogAPICall(username, ManagerOperation.ADMINISTRATION); return(Ok(rsu)); } }