diff --git a/pom.xml b/pom.xml
index 826139bf7..2d72ce9aa 100644
--- a/pom.xml
+++ b/pom.xml
@@ -84,7 +84,7 @@
2.2.8.RELEASE
- 1.12.5
+ 1.12.6-SNAPSHOT
0.59
1.3
1.25
diff --git a/registry-integration-tests/src/test/java/org/gbif/registry/ws/it/DatasetOccurrenceDownloadIT.java b/registry-integration-tests/src/test/java/org/gbif/registry/ws/it/DatasetOccurrenceDownloadIT.java
index 7c4313110..e81cc4431 100644
--- a/registry-integration-tests/src/test/java/org/gbif/registry/ws/it/DatasetOccurrenceDownloadIT.java
+++ b/registry-integration-tests/src/test/java/org/gbif/registry/ws/it/DatasetOccurrenceDownloadIT.java
@@ -141,7 +141,7 @@ public void testAddAndGetOccurrenceDatasetOne(ServiceType serviceType) {
assertEquals(
1,
datasetOccurrenceDownloadUsageService
- .listByDataset(testDataset.getKey(), new PagingRequest(0, 3))
+ .listByDataset(testDataset.getKey(), true, new PagingRequest(0, 3))
.getResults()
.size(),
"List operation should return 1 record");
@@ -153,7 +153,7 @@ public void testAddAndGetOccurrenceDatasetOne(ServiceType serviceType) {
occurrenceDownloadService.createUsages(occurrenceDownload.getKey(), datasetCitation);
List usages =
datasetOccurrenceDownloadUsageService
- .listByDataset(testDataset.getKey(), new PagingRequest(0, 3))
+ .listByDataset(testDataset.getKey(), true, new PagingRequest(0, 3))
.getResults();
assertEquals(1, usages.size(), "List operation should return 1 record");
assertEquals(2000L, usages.get(0).getNumberRecords());
@@ -191,21 +191,21 @@ public void testAddAndGetOccurrenceDatasetMany(ServiceType serviceType) {
assertEquals(
1,
datasetOccurrenceDownloadUsageService
- .listByDataset(testDataset1.getKey(), new PagingRequest(0, 3))
+ .listByDataset(testDataset1.getKey(), true, new PagingRequest(0, 3))
.getResults()
.size(),
"List operation should return 1 record");
assertEquals(
1,
datasetOccurrenceDownloadUsageService
- .listByDataset(testDataset2.getKey(), new PagingRequest(0, 3))
+ .listByDataset(testDataset2.getKey(), true, new PagingRequest(0, 3))
.getResults()
.size(),
"List operation should return 1 record");
assertEquals(
1,
datasetOccurrenceDownloadUsageService
- .listByDataset(testDataset3.getKey(), new PagingRequest(0, 3))
+ .listByDataset(testDataset3.getKey(), true, new PagingRequest(0, 3))
.getResults()
.size(),
"List operation should return 1 record");
diff --git a/registry-persistence/src/main/java/org/gbif/registry/persistence/mapper/DatasetOccurrenceDownloadMapper.java b/registry-persistence/src/main/java/org/gbif/registry/persistence/mapper/DatasetOccurrenceDownloadMapper.java
index ebf613b91..2ed11fa0b 100644
--- a/registry-persistence/src/main/java/org/gbif/registry/persistence/mapper/DatasetOccurrenceDownloadMapper.java
+++ b/registry-persistence/src/main/java/org/gbif/registry/persistence/mapper/DatasetOccurrenceDownloadMapper.java
@@ -41,6 +41,11 @@ List listByDataset(
@Param("type") DownloadType type,
@Nullable @Param("page") Pageable page);
+ List listByDatasetWithoutDownload(
+ @Param("datasetKey") UUID datasetKey,
+ @Param("type") DownloadType type,
+ @Nullable @Param("page") Pageable page);
+
int countByDataset(@Param("datasetKey") UUID datasetKey, @Param("type") DownloadType type);
/**
diff --git a/registry-persistence/src/main/resources/org/gbif/registry/persistence/mapper/DatasetOccurrenceDownloadMapper.xml b/registry-persistence/src/main/resources/org/gbif/registry/persistence/mapper/DatasetOccurrenceDownloadMapper.xml
index ec8f49f84..79e7bb787 100644
--- a/registry-persistence/src/main/resources/org/gbif/registry/persistence/mapper/DatasetOccurrenceDownloadMapper.xml
+++ b/registry-persistence/src/main/resources/org/gbif/registry/persistence/mapper/DatasetOccurrenceDownloadMapper.xml
@@ -56,6 +56,20 @@
+
+