Skip to content

Commit ad03fa8

Browse files
committed
Add .listIdsPage() to support fetching ids in pages only
1 parent 949fbbb commit ad03fa8

File tree

37 files changed

+296
-18
lines changed

37 files changed

+296
-18
lines changed

modules/flowable-app-engine/src/test/java/org/flowable/app/engine/test/repository/AppDefinitionQueryTest.java

+7
Original file line numberDiff line numberDiff line change
@@ -90,25 +90,30 @@ public void testQueryNoParams() {
9090
public void testQueryByDeploymentId() {
9191
assertThat(appRepositoryService.createAppDefinitionQuery().deploymentId(deploymentId1).list()).hasSize(1);
9292
assertThat(appRepositoryService.createAppDefinitionQuery().deploymentId(deploymentId1).listIds()).hasSize(1);
93+
assertThat(appRepositoryService.createAppDefinitionQuery().deploymentId(deploymentId1).listIdsPage(0, 10)).hasSize(1);
9394
assertThat(appRepositoryService.createAppDefinitionQuery().deploymentId(deploymentId1).count()).isEqualTo(1);
9495

9596
assertThat(appRepositoryService.createAppDefinitionQuery().deploymentId(deploymentId2).list()).hasSize(1);
9697
assertThat(appRepositoryService.createAppDefinitionQuery().deploymentId(deploymentId2).listIds()).hasSize(1);
98+
assertThat(appRepositoryService.createAppDefinitionQuery().deploymentId(deploymentId2).listIdsPage(0, 10)).hasSize(1);
9799
assertThat(appRepositoryService.createAppDefinitionQuery().deploymentId(deploymentId2).count()).isEqualTo(1);
98100

99101
assertThat(appRepositoryService.createAppDefinitionQuery().deploymentId(deploymentId3).list()).hasSize(1);
100102
assertThat(appRepositoryService.createAppDefinitionQuery().deploymentId(deploymentId3).listIds()).hasSize(1);
103+
assertThat(appRepositoryService.createAppDefinitionQuery().deploymentId(deploymentId3).listIdsPage(0, 10)).hasSize(1);
101104
assertThat(appRepositoryService.createAppDefinitionQuery().deploymentId(deploymentId3).count()).isEqualTo(1);
102105

103106
assertThat(appRepositoryService.createAppDefinitionQuery().deploymentId(deploymentId4).list()).hasSize(1);
104107
assertThat(appRepositoryService.createAppDefinitionQuery().deploymentId(deploymentId4).listIds()).hasSize(1);
108+
assertThat(appRepositoryService.createAppDefinitionQuery().deploymentId(deploymentId4).listIdsPage(0, 10)).hasSize(1);
105109
assertThat(appRepositoryService.createAppDefinitionQuery().deploymentId(deploymentId4).count()).isEqualTo(1);
106110
}
107111

108112
@Test
109113
public void testQueryByInvalidDeploymentId() {
110114
assertThat(appRepositoryService.createAppDefinitionQuery().deploymentId("invalid").list()).isEmpty();
111115
assertThat(appRepositoryService.createAppDefinitionQuery().deploymentId("invalid").listIds()).isEmpty();
116+
assertThat(appRepositoryService.createAppDefinitionQuery().deploymentId("invalid").listIdsPage(0, 10)).isEmpty();
112117
assertThat(appRepositoryService.createAppDefinitionQuery().deploymentId("invalid").count()).isZero();
113118
}
114119

@@ -228,10 +233,12 @@ public void testQueryByAppDefinitionCategoryNotEquals() {
228233
public void testQueryByAppDefinitionName() {
229234
assertThat(appRepositoryService.createAppDefinitionQuery().appDefinitionName("Test app").list()).hasSize(3);
230235
assertThat(appRepositoryService.createAppDefinitionQuery().appDefinitionName("Test app").listIds()).hasSize(3);
236+
assertThat(appRepositoryService.createAppDefinitionQuery().appDefinitionName("Test app").listIdsPage(0, 10)).hasSize(3);
231237
assertThat(appRepositoryService.createAppDefinitionQuery().appDefinitionName("Test app").count()).isEqualTo(3);
232238

233239
assertThat(appRepositoryService.createAppDefinitionQuery().appDefinitionName("Full info app").list()).hasSize(1);
234240
assertThat(appRepositoryService.createAppDefinitionQuery().appDefinitionName("Full info app").listIds()).hasSize(1);
241+
assertThat(appRepositoryService.createAppDefinitionQuery().appDefinitionName("Full info app").listIdsPage(0, 10)).hasSize(1);
235242
assertThat(appRepositoryService.createAppDefinitionQuery().appDefinitionName("Full info app").count()).isEqualTo(1);
236243

237244
assertThat(appRepositoryService.createAppDefinitionQuery().appDefinitionName("Full info app").singleResult().getDeploymentId())

modules/flowable-app-engine/src/test/java/org/flowable/app/engine/test/repository/DeploymentQueryTest.java

+13-2
Original file line numberDiff line numberDiff line change
@@ -60,14 +60,17 @@ public void deleteTestDeployments() {
6060
public void testQueryNoParams() {
6161
assertThat(appRepositoryService.createDeploymentQuery().list()).hasSize(2);
6262
assertThat(appRepositoryService.createDeploymentQuery().listIds()).hasSize(2);
63+
assertThat(appRepositoryService.createDeploymentQuery().listIdsPage(0, 10)).hasSize(2);
6364
assertThat(appRepositoryService.createDeploymentQuery().count()).isEqualTo(2);
6465

6566
assertThat(appRepositoryService.createDeploymentQuery().list())
66-
.extracting(AppDeployment::getId)
67-
.containsExactlyInAnyOrder(deploymentId1, deploymentId2);
67+
.extracting(AppDeployment::getId)
68+
.containsExactlyInAnyOrder(deploymentId1, deploymentId2);
6869

6970
assertThat(appRepositoryService.createDeploymentQuery().listIds())
7071
.containsExactlyInAnyOrder(deploymentId1, deploymentId2);
72+
assertThat(appRepositoryService.createDeploymentQuery().listIdsPage(0, 10))
73+
.containsExactlyInAnyOrder(deploymentId1, deploymentId2);
7174
}
7275

7376
@Test
@@ -76,11 +79,13 @@ public void testQueryByDeploymentId() {
7679
assertThat(appRepositoryService.createDeploymentQuery().deploymentId(deploymentId1).singleResult().getId()).isEqualTo(deploymentId1);
7780
assertThat(appRepositoryService.createDeploymentQuery().deploymentId(deploymentId1).list()).hasSize(1);
7881
assertThat(appRepositoryService.createDeploymentQuery().deploymentId(deploymentId1).listIds()).hasSize(1);
82+
assertThat(appRepositoryService.createDeploymentQuery().deploymentId(deploymentId1).listIdsPage(0, 10)).hasSize(1);
7983
assertThat(appRepositoryService.createDeploymentQuery().deploymentId(deploymentId1).count()).isEqualTo(1);
8084

8185
assertThat(appRepositoryService.createDeploymentQuery().deploymentId(deploymentId2).singleResult()).isNotNull();
8286
assertThat(appRepositoryService.createDeploymentQuery().deploymentId(deploymentId2).list()).hasSize(1);
8387
assertThat(appRepositoryService.createDeploymentQuery().deploymentId(deploymentId2).listIds()).hasSize(1);
88+
assertThat(appRepositoryService.createDeploymentQuery().deploymentId(deploymentId2).listIdsPage(0, 10)).hasSize(1);
8489
assertThat(appRepositoryService.createDeploymentQuery().deploymentId(deploymentId2).count()).isEqualTo(1);
8590
}
8691

@@ -89,13 +94,16 @@ public void testQueryByInvalidDeploymentId() {
8994
assertThat(appRepositoryService.createDeploymentQuery().deploymentId("invalid").singleResult()).isNull();
9095
assertThat(appRepositoryService.createDeploymentQuery().deploymentId("invalid").list()).isEmpty();
9196
assertThat(appRepositoryService.createDeploymentQuery().deploymentId("invalid").listIds()).isEmpty();
97+
assertThat(appRepositoryService.createDeploymentQuery().deploymentId("invalid").listIdsPage(0, 10)).isEmpty();
9298
assertThat(appRepositoryService.createDeploymentQuery().deploymentId("invalid").count()).isZero();
9399
}
94100

95101
@Test
96102
public void testQueryByDeploymentIds() {
97103
assertThat(appRepositoryService.createDeploymentQuery().deploymentIds(Arrays.asList(deploymentId1, deploymentId2, "dummy")).list()).hasSize(2);
98104
assertThat(appRepositoryService.createDeploymentQuery().deploymentIds(Arrays.asList(deploymentId1, deploymentId2, "dummy")).listIds()).hasSize(2);
105+
assertThat(appRepositoryService.createDeploymentQuery().deploymentIds(Arrays.asList(deploymentId1, deploymentId2, "dummy")).listIdsPage(0, 10)).hasSize(
106+
2);
99107
assertThat(appRepositoryService.createDeploymentQuery().deploymentIds(Arrays.asList(deploymentId2, "dummy")).singleResult()).isNotNull();
100108
}
101109

@@ -104,6 +112,7 @@ public void testQueryByInvalidDeploymentIds() {
104112
assertThat(appRepositoryService.createDeploymentQuery().deploymentIds(Collections.singletonList("invalid")).singleResult()).isNull();
105113
assertThat(appRepositoryService.createDeploymentQuery().deploymentIds(Collections.singletonList("invalid")).list()).isEmpty();
106114
assertThat(appRepositoryService.createDeploymentQuery().deploymentIds(Collections.singletonList("invalid")).listIds()).isEmpty();
115+
assertThat(appRepositoryService.createDeploymentQuery().deploymentIds(Collections.singletonList("invalid")).listIdsPage(0, 10)).isEmpty();
107116
assertThat(appRepositoryService.createDeploymentQuery().deploymentIds(Collections.singletonList("invalid")).count()).isZero();
108117
assertThatThrownBy(() -> appRepositoryService.createDeploymentQuery().deploymentIds(null))
109118
.isInstanceOf(FlowableIllegalArgumentException.class)
@@ -131,11 +140,13 @@ public void testQueryByDeploymentNameLike() {
131140
assertThat(appRepositoryService.createDeploymentQuery().deploymentNameLike("test%").singleResult().getId()).isEqualTo(deploymentId2);
132141
assertThat(appRepositoryService.createDeploymentQuery().deploymentNameLike("test%").list()).hasSize(1);
133142
assertThat(appRepositoryService.createDeploymentQuery().deploymentNameLike("test%").listIds()).hasSize(1);
143+
assertThat(appRepositoryService.createDeploymentQuery().deploymentNameLike("test%").listIdsPage(0, 10)).hasSize(1);
134144
assertThat(appRepositoryService.createDeploymentQuery().deploymentNameLike("test%").count()).isEqualTo(1);
135145

136146
assertThat(appRepositoryService.createDeploymentQuery().deploymentNameLike("inval%").singleResult()).isNull();
137147
assertThat(appRepositoryService.createDeploymentQuery().deploymentNameLike("inval%").list()).isEmpty();
138148
assertThat(appRepositoryService.createDeploymentQuery().deploymentNameLike("inval%").listIds()).isEmpty();
149+
assertThat(appRepositoryService.createDeploymentQuery().deploymentNameLike("inval%").listIdsPage(0, 10)).isEmpty();
139150
assertThat(appRepositoryService.createDeploymentQuery().deploymentNameLike("inval%").count()).isZero();
140151
}
141152

modules/flowable-cmmn-engine/src/main/java/org/flowable/cmmn/engine/impl/history/CmmnHistoricVariableInstanceQueryImpl.java

+5
Original file line numberDiff line numberDiff line change
@@ -179,4 +179,9 @@ public List<HistoricVariableInstance> listPage(int firstResult, int maxResults)
179179
return wrappedHistoricVariableInstanceQuery.listPage(firstResult, maxResults);
180180
}
181181

182+
@Override
183+
public List<String> listIdsPage(int firstResult, int maxResults) {
184+
return wrappedHistoricVariableInstanceQuery.listIdsPage(firstResult, maxResults);
185+
}
186+
182187
}

modules/flowable-cmmn-engine/src/main/java/org/flowable/cmmn/engine/impl/runtime/CmmnVariableInstanceQueryImpl.java

+5
Original file line numberDiff line numberDiff line change
@@ -178,4 +178,9 @@ public List<VariableInstance> listPage(int firstResult, int maxResults) {
178178
return wrappedVariableInstanceQuery.listPage(firstResult, maxResults);
179179
}
180180

181+
@Override
182+
public List<String> listIdsPage(int firstResult, int maxResults) {
183+
return wrappedVariableInstanceQuery.listIdsPage(firstResult, maxResults);
184+
}
185+
181186
}

modules/flowable-cmmn-engine/src/main/java/org/flowable/cmmn/engine/impl/runtime/GenericEventListenerInstanceQueryImpl.java

+5
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,11 @@ public List<GenericEventListenerInstance> listPage(int firstResult, int maxResul
146146
return convertPlanItemInstances(innerQuery.listPage(firstResult, maxResults));
147147
}
148148

149+
@Override
150+
public List<String> listIdsPage(int firstResult, int maxResults) {
151+
return innerQuery.listIdsPage(firstResult, maxResults);
152+
}
153+
149154
protected List<GenericEventListenerInstance> convertPlanItemInstances(List<PlanItemInstance> instances) {
150155
if (instances == null) {
151156
return null;

modules/flowable-cmmn-engine/src/main/java/org/flowable/cmmn/engine/impl/runtime/SignalEventListenerInstanceQueryImpl.java

+5
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,11 @@ public List<SignalEventListenerInstance> listPage(int firstResult, int maxResult
147147
return convertPlanItemInstances(innerQuery.listPage(firstResult, maxResults));
148148
}
149149

150+
@Override
151+
public List<String> listIdsPage(int firstResult, int maxResults) {
152+
return innerQuery.listIdsPage(firstResult, maxResults);
153+
}
154+
150155
protected List<SignalEventListenerInstance> convertPlanItemInstances(List<PlanItemInstance> instances) {
151156
if (instances == null) {
152157
return null;

modules/flowable-cmmn-engine/src/main/java/org/flowable/cmmn/engine/impl/runtime/UserEventListenerInstanceQueryImpl.java

+5
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,11 @@ public List<UserEventListenerInstance> listPage(int firstResult, int maxResults)
154154
return convertPlanItemInstances(innerQuery.listPage(firstResult, maxResults));
155155
}
156156

157+
@Override
158+
public List<String> listIdsPage(int firstResult, int maxResults) {
159+
return innerQuery.listIdsPage(firstResult, maxResults);
160+
}
161+
157162
protected List<UserEventListenerInstance> convertPlanItemInstances(List<PlanItemInstance> instances) {
158163
if (instances == null) {
159164
return null;

modules/flowable-cmmn-engine/src/test/java/org/flowable/cmmn/test/history/HistoricPlanItemInstanceQueryTest.java

+8
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ public void testByCaseDefinitionId() {
5555
if (CmmnHistoryTestHelper.isHistoryLevelAtLeast(HistoryLevel.ACTIVITY, cmmnEngineConfiguration)) {
5656
assertThat(cmmnHistoryService.createHistoricPlanItemInstanceQuery().list()).hasSize(20);
5757
assertThat(cmmnHistoryService.createHistoricPlanItemInstanceQuery().listIds()).hasSize(20);
58+
assertThat(cmmnHistoryService.createHistoricPlanItemInstanceQuery().listIdsPage(0, 100)).hasSize(20);
5859
}
5960
}
6061

@@ -65,6 +66,8 @@ public void testByCaseInstanceId() {
6566
if (CmmnHistoryTestHelper.isHistoryLevelAtLeast(HistoryLevel.ACTIVITY, cmmnEngineConfiguration)) {
6667
assertThat(cmmnHistoryService.createHistoricPlanItemInstanceQuery().planItemInstanceCaseInstanceId(caseInstanceId).list()).hasSize(4);
6768
assertThat(cmmnHistoryService.createHistoricPlanItemInstanceQuery().planItemInstanceCaseInstanceId(caseInstanceId).listIds()).hasSize(4);
69+
assertThat(cmmnHistoryService.createHistoricPlanItemInstanceQuery().planItemInstanceCaseInstanceId(caseInstanceId).listIdsPage(0, 10)).hasSize(
70+
4);
6871
}
6972
}
7073
}
@@ -79,6 +82,8 @@ public void testByStageInstanceId() {
7982
.singleResult();
8083
assertThat(planItemInstance).isNotNull();
8184
assertThat(cmmnHistoryService.createHistoricPlanItemInstanceQuery().planItemInstanceStageInstanceId(planItemInstance.getId()).listIds()).hasSize(2);
85+
assertThat(cmmnHistoryService.createHistoricPlanItemInstanceQuery().planItemInstanceStageInstanceId(planItemInstance.getId())
86+
.listIdsPage(0, 10)).hasSize(2);
8287
assertThat(cmmnHistoryService.createHistoricPlanItemInstanceQuery().planItemInstanceStageInstanceId(planItemInstance.getId()).count()).isEqualTo(2);
8388
}
8489
}
@@ -91,6 +96,7 @@ public void testByPlanItemInstanceId() {
9196
List<HistoricPlanItemInstance> planItemInstances = cmmnHistoryService.createHistoricPlanItemInstanceQuery().list();
9297
for (HistoricPlanItemInstance planItemInstance : planItemInstances) {
9398
assertThat(cmmnHistoryService.createHistoricPlanItemInstanceQuery().planItemInstanceId(planItemInstance.getId()).listIds()).hasSize(1);
99+
assertThat(cmmnHistoryService.createHistoricPlanItemInstanceQuery().planItemInstanceId(planItemInstance.getId()).listIdsPage(0, 10)).hasSize(1);
94100
assertThat(cmmnHistoryService.createHistoricPlanItemInstanceQuery().planItemInstanceId(planItemInstance.getId()).count()).isEqualTo(1);
95101
}
96102
}
@@ -102,6 +108,7 @@ public void testByElementId() {
102108

103109
if (CmmnHistoryTestHelper.isHistoryLevelAtLeast(HistoryLevel.ACTIVITY, cmmnEngineConfiguration)) {
104110
assertThat(cmmnHistoryService.createHistoricPlanItemInstanceQuery().planItemInstanceElementId("planItem3").listIds()).hasSize(4);
111+
assertThat(cmmnHistoryService.createHistoricPlanItemInstanceQuery().planItemInstanceElementId("planItem3").listIdsPage(0, 10)).hasSize(4);
105112
assertThat(cmmnHistoryService.createHistoricPlanItemInstanceQuery().planItemInstanceElementId("planItem3").list()).hasSize(4);
106113
}
107114
}
@@ -112,6 +119,7 @@ public void testByName() {
112119

113120
if (CmmnHistoryTestHelper.isHistoryLevelAtLeast(HistoryLevel.ACTIVITY, cmmnEngineConfiguration)) {
114121
assertThat(cmmnHistoryService.createHistoricPlanItemInstanceQuery().planItemInstanceName("B").listIds()).hasSize(9);
122+
assertThat(cmmnHistoryService.createHistoricPlanItemInstanceQuery().planItemInstanceName("B").listIdsPage(0, 10)).hasSize(9);
115123
assertThat(cmmnHistoryService.createHistoricPlanItemInstanceQuery().planItemInstanceName("B").list()).hasSize(9);
116124
}
117125
}

modules/flowable-cmmn-engine/src/test/java/org/flowable/cmmn/test/mgmt/ExternalWorkerJobQueryTest.java

+5
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ public void testQueryByNoCriteria() {
5454
.extracting(ExternalWorkerJob::getScopeId)
5555
.containsOnly(caseInstance.getId());
5656
assertThat(query.listIds()).hasSize(2);
57+
assertThat(query.listIdsPage(0, 10)).hasSize(2);
5758
}
5859

5960
@Test
@@ -72,19 +73,22 @@ public void testQueryByCaseInstanceId() {
7273
.extracting(ExternalWorkerJob::getScopeId)
7374
.containsOnly(caseInstance1.getId());
7475
assertThat(query.listIds()).hasSize(2);
76+
assertThat(query.listIdsPage(0, 10)).hasSize(2);
7577

7678
query = cmmnManagementService.createExternalWorkerJobQuery().caseInstanceId(caseInstance2.getId());
7779
assertThat(query.count()).isEqualTo(2);
7880
assertThat(query.list())
7981
.extracting(ExternalWorkerJob::getScopeId)
8082
.containsOnly(caseInstance2.getId());
8183
assertThat(query.listIds()).hasSize(2);
84+
assertThat(query.listIdsPage(0, 10)).hasSize(2);
8285

8386
query = cmmnManagementService.createExternalWorkerJobQuery().caseInstanceId("invalid");
8487
assertThat(query.count()).isZero();
8588
assertThat(query.list()).isEmpty();
8689
assertThat(query.singleResult()).isNull();
8790
assertThat(query.listIds()).isEmpty();
91+
assertThat(query.listIdsPage(0, 10)).isEmpty();
8892
}
8993

9094
@Test
@@ -106,6 +110,7 @@ public void testQueryByCaseDefinitionId() {
106110
assertThat(query.count()).isZero();
107111
assertThat(query.list()).isEmpty();
108112
assertThat(query.listIds()).isEmpty();
113+
assertThat(query.listIdsPage(0, 10)).isEmpty();
109114
assertThat(query.singleResult()).isNull();
110115
}
111116

0 commit comments

Comments
 (0)