コード例 #1
0
        /// <summary>
        /// List all DRM fMP4 Representation Content Protections
        /// </summary>
        /// <param name="manifestId">Id of the manifest (required)</param>
        /// <param name="periodId">Id of the period (required)</param>
        /// <param name="adaptationsetId">Id of the adaptation set (required)</param>
        /// <param name="representationId">Id of the representation (required)</param>
        /// <param name="queryParams">The query parameters for sorting, filtering and paging options (optional)</param>
        public async Task <Models.PaginationResponse <Models.ContentProtection> > ListAsync(string manifestId, string periodId, string adaptationsetId, string representationId, params Func <ListQueryParams, ListQueryParams>[] queryParams)
        {
            ListQueryParams q = new ListQueryParams();

            foreach (var builderFunc in queryParams)
            {
                builderFunc(q);
            }

            return(await _apiClient.ListAsync(manifestId, periodId, adaptationsetId, representationId, q));
        }
コード例 #2
0
        /// <summary>
        /// List UDP multicast inputs
        /// </summary>
        /// <param name="queryParams">The query parameters for sorting, filtering and paging options (optional)</param>
        public async Task <Models.PaginationResponse <Models.UdpMulticastInput> > ListAsync(params Func <ListQueryParams, ListQueryParams>[] queryParams)
        {
            ListQueryParams q = new ListQueryParams();

            foreach (var builderFunc in queryParams)
            {
                builderFunc(q);
            }

            return(await _apiClient.ListAsync(q));
        }
コード例 #3
0
        /// <summary>
        /// List Notification State History (Specific Resource)
        /// </summary>
        /// <param name="notificationId">Id of the notification (required)</param>
        /// <param name="resourceId">Id of the resource, e.g. encoding id (required)</param>
        /// <param name="queryParams">The query parameters for sorting, filtering and paging options (optional)</param>
        public async Task <Models.PaginationResponse <Models.NotificationStateEntry> > ListAsync(string notificationId, string resourceId, params Func <ListQueryParams, ListQueryParams>[] queryParams)
        {
            ListQueryParams q = new ListQueryParams();

            foreach (var builderFunc in queryParams)
            {
                builderFunc(q);
            }

            return(await _apiClient.ListAsync(notificationId, resourceId, q));
        }
コード例 #4
0
        /// <summary>
        /// List Denoise hqdn3d Filters
        /// </summary>
        /// <param name="queryParams">The query parameters for sorting, filtering and paging options (optional)</param>
        public async Task <Models.PaginationResponse <Models.DenoiseHqdn3dFilter> > ListAsync(params Func <ListQueryParams, ListQueryParams>[] queryParams)
        {
            ListQueryParams q = new ListQueryParams();

            foreach (var builderFunc in queryParams)
            {
                builderFunc(q);
            }

            return(await _apiClient.ListAsync(q));
        }
コード例 #5
0
        /// <summary>
        /// List all Custom XML Elements of Period
        /// </summary>
        /// <param name="manifestId">Id of the manifest (required)</param>
        /// <param name="periodId">Id of the period (required)</param>
        /// <param name="queryParams">The query parameters for sorting, filtering and paging options (optional)</param>
        public async Task <Models.PaginationResponse <Models.CustomXmlElement> > ListAsync(string manifestId, string periodId, params Func <ListQueryParams, ListQueryParams>[] queryParams)
        {
            ListQueryParams q = new ListQueryParams();

            foreach (var builderFunc in queryParams)
            {
                builderFunc(q);
            }

            return(await _apiClient.ListAsync(manifestId, periodId, q));
        }
コード例 #6
0
        /// <summary>
        /// List Smooth Streaming Manifests
        /// </summary>
        /// <param name="queryParams">The query parameters for sorting, filtering and paging options (optional)</param>
        public async Task <Models.PaginationResponse <Models.SmoothStreamingManifest> > ListAsync(params Func <ListQueryParams, ListQueryParams>[] queryParams)
        {
            ListQueryParams q = new ListQueryParams();

            foreach (var builderFunc in queryParams)
            {
                builderFunc(q);
            }

            return(await _apiClient.ListAsync(q));
        }
コード例 #7
0
        /// <summary>
        /// List All Muxings
        /// </summary>
        /// <param name="encodingId">Id of the encoding. (required)</param>
        /// <param name="queryParams">The query parameters for sorting, filtering and paging options (optional)</param>
        public async Task <Models.PaginationResponse <Models.Muxing> > ListAsync(string encodingId, params Func <ListQueryParams, ListQueryParams>[] queryParams)
        {
            ListQueryParams q = new ListQueryParams();

            foreach (var builderFunc in queryParams)
            {
                builderFunc(q);
            }

            return(await _apiClient.ListAsync(encodingId, q));
        }
コード例 #8
0
        public void FromListParams_Null_GivesNull()
        {
            //arrange.
            ListQueryParams source = null;

            //act.
            QueryParams sut = source;

            //assert.
            Assert.Null(sut);
        }
コード例 #9
0
        /// <summary>
        /// Get Daily Statistics per Label
        /// </summary>
        /// <param name="queryParams">The query parameters for sorting, filtering and paging options (optional)</param>
        public async Task <Models.PaginationResponse <Models.DailyStatisticsPerLabel> > ListAsync(params Func <ListQueryParams, ListQueryParams>[] queryParams)
        {
            ListQueryParams q = new ListQueryParams();

            foreach (var builderFunc in queryParams)
            {
                builderFunc(q);
            }

            return(await _apiClient.ListAsync(q));
        }
コード例 #10
0
        /// <summary>
        /// List all possible encoding error definitions
        /// </summary>
        /// <param name="queryParams">The query parameters for sorting, filtering and paging options (optional)</param>
        public async Task <Models.PaginationResponse <Models.EncodingErrorDefinition> > ListAsync(params Func <ListQueryParams, ListQueryParams>[] queryParams)
        {
            ListQueryParams q = new ListQueryParams();

            foreach (var builderFunc in queryParams)
            {
                builderFunc(q);
            }

            return(await _apiClient.ListAsync(q));
        }
コード例 #11
0
        /// <summary>
        /// List Tenants
        /// </summary>
        /// <param name="organizationId">Id of the organization (required)</param>
        /// <param name="groupId">Id of the group (required)</param>
        /// <param name="queryParams">The query parameters for sorting, filtering and paging options (optional)</param>
        public async Task <Models.PaginationResponse <Models.Tenant> > ListAsync(string organizationId, string groupId, params Func <ListQueryParams, ListQueryParams>[] queryParams)
        {
            ListQueryParams q = new ListQueryParams();

            foreach (var builderFunc in queryParams)
            {
                builderFunc(q);
            }

            return(await _apiClient.ListAsync(organizationId, groupId, q));
        }
コード例 #12
0
        /// <summary>
        /// List Content Protection of Smooth Streaming
        /// </summary>
        /// <param name="manifestId">Id of the Smooth Streaming manifest. (required)</param>
        /// <param name="queryParams">The query parameters for sorting, filtering and paging options (optional)</param>
        public async Task <Models.PaginationResponse <Models.SmoothManifestContentProtection> > ListAsync(string manifestId, params Func <ListQueryParams, ListQueryParams>[] queryParams)
        {
            ListQueryParams q = new ListQueryParams();

            foreach (var builderFunc in queryParams)
            {
                builderFunc(q);
            }

            return(await _apiClient.ListAsync(manifestId, q));
        }
コード例 #13
0
        /// <summary>
        /// List the filters of a stream
        /// </summary>
        /// <param name="encodingId">Id of the encoding. (required)</param>
        /// <param name="streamId">Id of the stream. (required)</param>
        /// <param name="queryParams">The query parameters for sorting, filtering and paging options (optional)</param>
        public async Task <Models.StreamFilterList> ListAsync(string encodingId, string streamId, params Func <ListQueryParams, ListQueryParams>[] queryParams)
        {
            ListQueryParams q = new ListQueryParams();

            foreach (var builderFunc in queryParams)
            {
                builderFunc(q);
            }

            return(await _apiClient.ListAsync(encodingId, streamId, q));
        }
コード例 #14
0
        /// <summary>
        /// List Analytics Virtual Licenses
        /// </summary>
        /// <param name="queryParams">The query parameters for sorting, filtering and paging options (optional)</param>
        public async Task <Models.PaginationResponse <Models.AnalyticsVirtualLicense> > ListAsync(params Func <ListQueryParams, ListQueryParams>[] queryParams)
        {
            ListQueryParams q = new ListQueryParams();

            foreach (var builderFunc in queryParams)
            {
                builderFunc(q);
            }

            return(await _apiClient.ListAsync(q));
        }
コード例 #15
0
        /// <summary>
        /// List AWS Region Settings
        /// </summary>
        /// <param name="infrastructureId">Id of the AWS account (required)</param>
        /// <param name="queryParams">The query parameters for sorting, filtering and paging options (optional)</param>
        public async Task <Models.PaginationResponse <Models.AwsAccountRegionSettings> > ListAsync(string infrastructureId, params Func <ListQueryParams, ListQueryParams>[] queryParams)
        {
            ListQueryParams q = new ListQueryParams();

            foreach (var builderFunc in queryParams)
            {
                builderFunc(q);
            }

            return(await _apiClient.ListAsync(infrastructureId, q));
        }
コード例 #16
0
        /// <summary>
        /// List DTS Passthrough Configurations
        /// </summary>
        /// <param name="queryParams">The query parameters for sorting, filtering and paging options (optional)</param>
        public async Task <Models.PaginationResponse <Models.DtsPassthroughAudioConfiguration> > ListAsync(params Func <ListQueryParams, ListQueryParams>[] queryParams)
        {
            ListQueryParams q = new ListQueryParams();

            foreach (var builderFunc in queryParams)
            {
                builderFunc(q);
            }

            return(await _apiClient.ListAsync(q));
        }
コード例 #17
0
        /// <summary>
        /// List all I-frame playlists of a variant stream
        /// </summary>
        /// <param name="manifestId">Id of the hls manifest. (required)</param>
        /// <param name="streamId">Id of the variant stream. (required)</param>
        /// <param name="queryParams">The query parameters for sorting, filtering and paging options (optional)</param>
        public async Task <Models.PaginationResponse <Models.IFramePlaylist> > ListAsync(string manifestId, string streamId, params Func <ListQueryParams, ListQueryParams>[] queryParams)
        {
            ListQueryParams q = new ListQueryParams();

            foreach (var builderFunc in queryParams)
            {
                builderFunc(q);
            }

            return(await _apiClient.ListAsync(manifestId, streamId, q));
        }
コード例 #18
0
        public void AppendQueryParams_DoesNotAppend_IfQueryParamsIsEmpty()
        {
            //arrange.
            var url         = "url";
            var queryParams = ListQueryParams.CreateEmpty();

            //act.
            var newUrl = QueryParams.AppendQueryParams(url, queryParams);

            //assert.
            Assert.Equal(url, newUrl);
        }
コード例 #19
0
        /// <summary>
        /// Syncs with Blackbaud constituent data.
        /// </summary>
        public async Task <bool> SyncConstituentDataAsync()
        {
            _lastConstituentSyncDate = DateTime.Now;
            _dataStorageService.SetLastSyncDate(_lastConstituentSyncDate);

            var queryParams = _dataStorageService.GetConstituentQueryParams();

            if (queryParams == null || queryParams.IsEmpty())
            {
                queryParams = new ListQueryParams
                {
                    LastModified = DateTimeOffset.Now.ToString("o")
                };
            }

            try
            {
                var response = _constituentService.GetConstituents(queryParams);
                if (response.IsSuccessStatusCode)
                {
                    var responseData = await response.Content.ReadAsStringAsync();

                    var json = JObject.Parse(responseData);

                    // Parse and store next_link params
                    Uri.TryCreate(json["next_link"].ToString(), UriKind.Absolute, out var nextLinkUri);
                    _dataStorageService.SetConstituentQueryParams(_constituentService.CreateQueryParamsFromNextLinkUri(nextLinkUri));

                    // Update constituent data
                    UpdateConstituentData(json);

                    return(true);
                }

                ShowError(response.StatusCode);

                return(false);
            }
            catch (Exception ex)
            {
                Logger.LogInformation($"Exception: {ex.Message}.");
                if (ex.InnerException is SocketException || ex.InnerException is HttpRequestException)
                {
                    // Exception occurred, continue to retry
                    Logger.LogInformation("Retrying...");
                    return(true);
                }

                Logger.LogInformation("Exiting.");
                return(false);
            }
        }
コード例 #20
0
        public void Stale_ComesWithoutQuotes()
        {
            //arrange.
            var sut = ListQueryParams.CreateEmpty();

            sut.Stale = ListQueryParams.StaleOption.Ok;

            //act.
            var query = sut.ToQueryString();

            //assert.
            Assert.Equal($"stale={sut.Stale.Value.ToString()}", query, ignoreCase: true);
        }
コード例 #21
0
        public void Number_ComesWithoutQuotes()
        {
            //arrange.
            var sut = ListQueryParams.CreateEmpty();

            sut.Limit = 123;

            //act.
            var query = sut.ToQueryString();

            //assert.
            Assert.Equal($"limit={sut.Limit.Value}", query, ignoreCase: true);
        }
コード例 #22
0
        public void Keys_ComeAsArrayOfStrings()
        {
            //arrange.
            var sut = ListQueryParams.CreateEmpty();

            sut.Keys = new[] { "key1", "key2" };

            //act.
            var query = sut.ToQueryString();

            //assert.
            Assert.Equal($"keys=[\"{sut.Keys.ElementAt(0)}\",\"{sut.Keys.ElementAt(1)}\"]", query, ignoreCase: true);
        }
コード例 #23
0
        public void StringParam_ComesWithQuotes()
        {
            //arrange.
            var sut = ListQueryParams.CreateEmpty();

            sut.Key = "my key";

            //act.
            var query = sut.ToQueryString();

            //assert.
            Assert.Equal($"key=\"{sut.Key}\"", query, ignoreCase: true);
        }
コード例 #24
0
        public void BooleanParam_ComesWithoutQuotes()
        {
            //arrange.
            var sut = ListQueryParams.CreateEmpty();

            sut.Descending = true;

            //act.
            var query = sut.ToQueryString();

            //assert.
            Assert.Equal($"descending={sut.Descending.Value}", query, ignoreCase: true);
        }
コード例 #25
0
        public async void GetAllEntitiesAsync_Passes_QueryParams_And_Extracts_Docs()
        {
            //arrange.
            var queryParams = new ListQueryParams();

            _db.Setup(db => db.GetAllStringDocumentsAsync(It.IsAny <ListQueryParams>()))
            .Returns(Task.FromResult(new DocListResponse <string>(0, 100, 1, new List <DocListResponseRow <string> >())));

            //act.
            await _sut.GetAllEntitiesAsync <SampleEntity>(queryParams);

            //assert.
            _db.Verify(db => db.GetAllStringDocumentsAsync(It.Is <ListQueryParams>(p => p == queryParams && p.Include_Docs.GetValueOrDefault())), Times.Once());
        }
コード例 #26
0
        public async void GetAllJsonDocumentsAsync_Passes_QueryParams_AsReceived()
        {
            //arrange
            var queryParams = new ListQueryParams();

            _sut.Setup(db => db.GetAllStringDocumentsAsync(It.IsAny <ListQueryParams>()))
            .Returns(Task.FromResult(new DocListResponse <string>(0, 100, 1, new List <DocListResponseRow <string> >())));

            //act.
            await _sut.Object.GetAllJsonDocumentsAsync(queryParams);

            //assert.
            _sut.Verify(db => db.GetAllStringDocumentsAsync(queryParams), Times.Once());
        }
コード例 #27
0
        public void FromListParams_GivesSameQueryString()
        {
            //arrange.
            var listParams = new ListQueryParams {
                Conflicts = false, StartKey = "start-key"
            };

            //act.
            QueryParams sut = listParams;

            //assert.
            Assert.NotNull(sut);
            Assert.Equal(listParams.ToQueryString(), sut.ToQueryString());
        }
コード例 #28
0
        public void AppendQueryParams_AppendsQueryWithQMark_IfNoneYet()
        {
            //arrange.
            var url         = "url";
            var queryParams = new ListQueryParams {
                EndKey = "end-key"
            };

            //act.
            var newUrl = QueryParams.AppendQueryParams(url, queryParams);

            //assert.
            Assert.Equal($"{url}?{queryParams.ToQueryString()}", newUrl);
        }
コード例 #29
0
        public void AppendQueryParam_AppendsQueryWithoutQMark_IfQMarkPresent()
        {
            //arrange.
            var url         = "url?param1=value1";
            var queryParams = new ListQueryParams {
                EndKey = "end-key"
            };

            //act.
            var newUrl = QueryParams.AppendQueryParams(url, queryParams);

            //assert.
            Assert.Equal($"{url}&{queryParams.ToQueryString()}", newUrl);
        }
コード例 #30
0
        public void AppendQueryParams_AddsQueryWithoutQMark_IfQMarkAtTheEnd()
        {
            //arrange.
            var url         = "url?";
            var queryParams = new ListQueryParams {
                EndKey = "end-key"
            };

            //act.
            var newUrl = QueryParams.AppendQueryParams(url, queryParams);

            //assert.
            Assert.Equal($"{url}{queryParams.ToQueryString()}", newUrl);
        }