From 18a816971d30314e2e60716e802d150adff22eda Mon Sep 17 00:00:00 2001 From: Dave Galey Date: Fri, 7 Jan 2022 12:36:04 -0500 Subject: [PATCH] Properly handle default PageSize and SyncFilter if not provided in the config. --- src/SectigoCAProxy/Client/SectigoApiClient.cs | 19 +++++++++++++------ src/SectigoCAProxy/SectigoCAProxy.cs | 6 +++++- 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/src/SectigoCAProxy/Client/SectigoApiClient.cs b/src/SectigoCAProxy/Client/SectigoApiClient.cs index b8f0e91..60e2aea 100644 --- a/src/SectigoCAProxy/Client/SectigoApiClient.cs +++ b/src/SectigoCAProxy/Client/SectigoApiClient.cs @@ -111,13 +111,20 @@ public async Task CertificateListProducer(BlockingCollection certs, public async Task CertificateListProducer(BlockingCollection certs, CancellationToken cancelToken, int pageSize = 25, Dictionary filter = null) { - - //each kvp key = type, value each filter - foreach (var s in filter) - { - foreach(var value in s.Value) - await CertificateListProducer(certs, cancelToken, pageSize, $"{s.Key}={value}"); + if (filter != null && filter.Count > 0) + { + //each kvp key = type, value each filter + foreach (var s in filter) + { + foreach (var value in s.Value) + await CertificateListProducer(certs, cancelToken, pageSize, $"{s.Key}={value}"); + } } + else + { + // No filters + await CertificateListProducer(certs, cancelToken, pageSize, ""); + } certs.CompleteAdding(); } diff --git a/src/SectigoCAProxy/SectigoCAProxy.cs b/src/SectigoCAProxy/SectigoCAProxy.cs index cb90274..e7eea40 100644 --- a/src/SectigoCAProxy/SectigoCAProxy.cs +++ b/src/SectigoCAProxy/SectigoCAProxy.cs @@ -63,7 +63,11 @@ public override void Synchronize(ICertificateDataReader certificateDataReader, { var certsToAdd = new BlockingCollection(100); Logger.Info($"Begin Paging Certificate List"); - //producerTask = Client.CertificateListProducer(certsToAdd, newCancelToken.Token, Config.PageSize, Config.GetSyncFilterQueryString()); + int pageSize = 25; + if (Config.PageSize > 0) + { + pageSize = Config.PageSize; + } producerTask = Client.CertificateListProducer(certsToAdd, newCancelToken.Token, Config.PageSize, Config.SyncFilter); foreach (Certificate certToAdd in certsToAdd.GetConsumingEnumerable())