示例#1
0
        private async Task ActOnSelectPageCallback(PaginationOptionsDTO returnedPaginationOptions)
        {
            paginationOptions = returnedPaginationOptions;
            detections        = null;
            await LoadDetections();

            await JSRuntime.InvokeVoidAsync("DestroyActivePlayer");

            StateHasChanged();
        }
示例#2
0
 public async Task <PaginatedResponseDTO <List <Detection> > > GetUnconfirmedDetectionsAsync(PaginationOptionsDTO paginationOptions, IFilterOptions filterOptions)
 {
     return(await GetDetectionsAsync("unknowns", paginationOptions, filterOptions));
 }
示例#3
0
 // Get unreviewed detections
 public async Task <PaginatedResponseDTO <List <Detection> > > GetCandidateDetectionsAsync(PaginationOptionsDTO paginationOptions, IFilterOptions filterOptions)
 {
     return(await GetDetectionsAsync("unreviewed", paginationOptions, filterOptions));
 }
示例#4
0
 public async Task <PaginatedResponseDTO <List <Detection> > > GetFalseDetectionsAsync(PaginationOptionsDTO paginationOptions, IFilterOptions filterOptions)
 {
     return(await GetDetectionsAsync("falsepositives", paginationOptions, filterOptions));
 }
示例#5
0
        // Get detections based on passed view, pagination options, and filter options
        private async Task <PaginatedResponseDTO <List <Detection> > > GetDetectionsAsync(string viewName, PaginationOptionsDTO paginationOptions, IFilterOptions filterOptions)
        {
            var prefix = api.Contains("?") ? $"{api}/{viewName}&" : $"{api}/{viewName}?";
            var url    = $"{prefix}{paginationOptions.QueryString}&{filterOptions.QueryString}";

            var httpResponseMessage = await httpClient.GetAsync(url);

            if (httpResponseMessage.IsSuccessStatusCode)
            {
                var responseString = await httpResponseMessage.Content.ReadAsStringAsync();

                if (string.IsNullOrWhiteSpace(responseString))
                {
                    return new PaginatedResponseDTO <List <Detection> > {
                               Response = new List <Detection>(), TotalAmountPages = 0, TotalNumberRecords = 0
                    }
                }
                ;

                return(new PaginatedResponseDTO <List <Detection> >
                {
                    Response = JsonSerializer.Deserialize <List <Detection> >(responseString, defaultJsonSerializerOptions),
                    TotalAmountPages = int.Parse(httpResponseMessage.Headers.GetValues("totalAmountPages").FirstOrDefault()),
                    TotalNumberRecords = int.Parse(httpResponseMessage.Headers.GetValues("totalNumberRecords").FirstOrDefault())
                });
            }
            else
            {
                return(new PaginatedResponseDTO <List <Detection> > {
                    Response = null, TotalAmountPages = 0, TotalNumberRecords = 0
                });
            }
        }