public async Task <IActionResult> AddDataWithQuery(Guid serviceId, [FromQuery] DateTime logDate, string data) { if (IsDataValid(logDate, data)) { return(BadRequest()); } var userId = Utility.GetCurrentUserId(User); if (!await _servicesService.HaveUserAccess(userId, serviceId)) { return(Forbid()); } var serviceData = DeserializeData(data); var logs = new ServiceLogs { ServiceId = serviceId, LogDate = logDate, UserId = userId }; logs = _service.AddData(logs, serviceData, await _servicePropertiesService.GetValidPropertiesByServiceId(serviceId)); return(Ok(new { logs.Id })); }
public void AddData_NullUserId_ThrowArgumentException() { var log = new ServiceLogs { Id = new Guid() }; Assert.Throws <ArgumentException>(() => _service.AddData(log, null, null)); }
public void AddData_WhenCalled_CallSaveServiceData() { var log = new ServiceLogs { Id = Guid.NewGuid(), UserId = Guid.NewGuid() }; _service.AddData(log, new List <DeviceDataDTO>(), new ServiceProperties[] { }); _serviceLogStorage.Verify(x => x.SaveChangesAsync(), Times.Once); }
private void UpdateLogs(string[] logs) { for (int i = 0; i < logs.Length; i += 2) { string m = logs[i]; MessageTypeEnum t = MessageRecievedEventArgs.GetTypeEnum(Int32.Parse(logs[i + 1])); MessageRecievedEventArgs log = new MessageRecievedEventArgs(m, t); // Adds a single log to an observables logs list. ServiceLogs.Add(log); } }
public override void RemoveAllReferences() { Chapters.Clear(); Components.Clear(); Documentations.Clear(); Experiences.Clear(); Files.Clear(); Maintenances.Clear(); OrderConfirmations.Clear(); Safeties.Clear(); ServiceLogs.Clear(); SubProjects.Clear(); }
public ServiceLogs AddData(ServiceLogs log, ICollection <DeviceDataDTO> data, ServiceProperties[] validProperties) { if (log == null || log.UserId == Guid.Empty) { throw new ArgumentException(); } log.RegisterDate = DateTime.Now; _serviceLogStorage.AddAsync(log); var dataWithRelatedProperty = FilterDataWithValidProperty(data, validProperties); SaveServiceData(log.Id, dataWithRelatedProperty); _serviceLogStorage.SaveChangesAsync(); return(log); }
private void CheckLogs(object sender, DoWorkEventArgs e) { ChannelFactory <IServiceCommunicator> channelFactory = null; try { NetTcpBinding ServiceBinding = new NetTcpBinding(); ServiceBinding.Security.Mode = SecurityMode.None; ServiceBinding.MaxBufferSize = 2147483647; ServiceBinding.MaxReceivedMessageSize = 2147483647; channelFactory = new ChannelFactory <IServiceCommunicator>(ServiceBinding, new EndpointAddress(ServicePath)); IServiceCommunicator Service = channelFactory.CreateChannel(); DateTime LatestDate; if (ServiceLogs.Count == 0) { LatestDate = DateTime.MinValue; } else { LatestDate = ServiceLogs.Max(p => p.Occurred); } e.Result = Service.GetLatestLogs(LatestDate); channelFactory.Close(); } catch (Exception ex) { if (channelFactory != null) { channelFactory.Abort(); } } }
private void CheckLogs_Tick(object sender, EventArgs e) { DateTime LatestDate = DateTime.MinValue; if (ServiceLogs.Count > 0) { LatestDate = ServiceLogs.Max(p => p.Occurred); } foreach (WcfEvent Event in eventLog.Where(p => p.Occurred > LatestDate)) { ServiceLogs.Insert(0, Event); } while (ServiceLogs.Count > MaxRowsInLog) { try { ServiceLogs.RemoveAt(MaxRowsInLog - 1); } catch (ArgumentOutOfRangeException ex) //sometimes threadsafe invoke messes up and throws exception. Ignore this one type of exception { } } }
public async void AddAsync(ServiceLogs log) { await _context.ServiceLogs.AddAsync(log); }
private void ServiceLogsListCreator(IList <ServiceLog> list) { ServiceLogs.Clear(); list.ToList().ForEach(item => ServiceLogs.Add(new SView(item, ServiceLogs.Count() + 1))); }