public StackRepository(ExceptionlessElasticConfiguration configuration, IEventRepository eventRepository, IValidator <Stack> validator) : base(configuration.Stacks.Stack, validator) { _eventRepository = eventRepository; DocumentsChanging.AddHandler(OnDocumentChangingAsync); FieldsRequiredForRemove.Add(ElasticType.GetFieldName(s => s.SignatureHash)); }
public Task <FindResults <Stack> > GetByFilterAsync(ExceptionlessSystemFilter systemFilter, string userFilter, string sort, string field, DateTime utcStart, DateTime utcEnd, CommandOptionsDescriptor <Stack> options = null) { IRepositoryQuery <Stack> query = new RepositoryQuery <Stack>() .DateRange(utcStart, utcEnd, field ?? ElasticType.GetFieldName(s => s.LastOccurrence)) .SystemFilter(systemFilter) .FilterExpression(userFilter); query = !String.IsNullOrEmpty(sort) ? query.SortExpression(sort) : query.SortDescending(s => s.LastOccurrence); return(FindAsync(q => query, options)); }
public EventRepository(ExceptionlessElasticConfiguration configuration, IValidator <PersistentEvent> validator) : base(configuration.Events.Event, validator) { DisableCache(); BatchNotifications = true; DefaultExcludes.Add(ElasticType.GetFieldName(e => e.Idx)); DefaultExcludes.Add(EventIndexType.Alias.IpAddress); DefaultExcludes.Add("error"); FieldsRequiredForRemove.Add(ElasticType.GetFieldName(e => e.Date)); }
public Task <FindResults <PersistentEvent> > GetByFilterAsync(IExceptionlessSystemFilterQuery systemFilter, string userFilter, string sort, string field, DateTime utcStart, DateTime utcEnd, PagingOptions paging) { var search = new ExceptionlessQuery() .WithDateRange(utcStart, utcEnd, field ?? ElasticType.GetFieldName(e => e.Date)) .WithIndexes(utcStart, utcEnd) .WithSystemFilter(systemFilter) .WithFilter(userFilter) .WithPaging(paging); search = !String.IsNullOrEmpty(sort) ? search.WithSort(sort) : search.WithSortDescending((PersistentEvent e) => e.Date); return(FindAsync(search)); }
public Task <FindResults <Stack> > GetByFilterAsync(IExceptionlessSystemFilterQuery systemFilter, string userFilter, string sort, string field, DateTime utcStart, DateTime utcEnd, PagingOptions paging) { var search = new ExceptionlessQuery() .WithDateRange(utcStart, utcEnd, field ?? ElasticType.GetFieldName(s => s.LastOccurrence)) .WithSystemFilter(systemFilter) .WithFilter(userFilter) .WithPaging(paging) .WithSort(sort); search = !String.IsNullOrEmpty(sort) ? search.WithSort(sort) : search.WithSortDescending((Stack s) => s.LastOccurrence); return(FindAsync(search)); }
public UserRepository(ExceptionlessElasticConfiguration configuration, IValidator <User> validator) : base(configuration.Organizations.User, validator) { FieldsRequiredForRemove.AddRange(new [] { ElasticType.GetFieldName(u => u.EmailAddress), ElasticType.GetFieldName(u => u.OrganizationIds) }); DocumentsAdded.AddHandler(OnDocumentsAdded); }