This is an automated email from the ASF dual-hosted git repository.

adamsaghy pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/fineract.git


The following commit(s) were added to refs/heads/develop by this push:
     new f8e5d6c9f FINERACT-2169: Provision category definition api refactor;
f8e5d6c9f is described below

commit f8e5d6c9fce01fa7d5a75448c40c042de4c4dcb5
Author: viktorpavlenko <[email protected]>
AuthorDate: Wed Mar 5 11:40:36 2025 +0200

    FINERACT-2169: Provision category definition api refactor;
---
 .../ProvisioningCategoryReadPlatformService.java   |  4 +-
 .../api/ProvisioningCategoryApiResource.java       | 43 +++++--------
 .../api/ProvisioningCriteriaApiResource.java       | 70 ++++++++--------------
 ...rovisioningCategoryReadPlatformServiceImpl.java |  4 +-
 .../ProvisioningCriteriaReadPlatformService.java   |  4 +-
 ...rovisioningCriteriaReadPlatformServiceImpl.java |  2 +-
 .../GenerateLoanlossProvisioningTaskletTest.java   |  9 ++-
 7 files changed, 50 insertions(+), 86 deletions(-)

diff --git 
a/fineract-core/src/main/java/org/apache/fineract/organisation/provisioning/service/ProvisioningCategoryReadPlatformService.java
 
b/fineract-core/src/main/java/org/apache/fineract/organisation/provisioning/service/ProvisioningCategoryReadPlatformService.java
index 68c3d84ad..7641a8533 100644
--- 
a/fineract-core/src/main/java/org/apache/fineract/organisation/provisioning/service/ProvisioningCategoryReadPlatformService.java
+++ 
b/fineract-core/src/main/java/org/apache/fineract/organisation/provisioning/service/ProvisioningCategoryReadPlatformService.java
@@ -18,10 +18,10 @@
  */
 package org.apache.fineract.organisation.provisioning.service;
 
-import java.util.Collection;
+import java.util.List;
 import 
org.apache.fineract.organisation.provisioning.data.ProvisioningCategoryData;
 
 public interface ProvisioningCategoryReadPlatformService {
 
-    Collection<ProvisioningCategoryData> retrieveAllProvisionCategories();
+    List<ProvisioningCategoryData> retrieveAllProvisionCategories();
 }
diff --git 
a/fineract-provider/src/main/java/org/apache/fineract/organisation/provisioning/api/ProvisioningCategoryApiResource.java
 
b/fineract-provider/src/main/java/org/apache/fineract/organisation/provisioning/api/ProvisioningCategoryApiResource.java
index 79de601c9..5e461bbe0 100644
--- 
a/fineract-provider/src/main/java/org/apache/fineract/organisation/provisioning/api/ProvisioningCategoryApiResource.java
+++ 
b/fineract-provider/src/main/java/org/apache/fineract/organisation/provisioning/api/ProvisioningCategoryApiResource.java
@@ -27,18 +27,13 @@ import jakarta.ws.rs.PUT;
 import jakarta.ws.rs.Path;
 import jakarta.ws.rs.PathParam;
 import jakarta.ws.rs.Produces;
-import jakarta.ws.rs.core.Context;
 import jakarta.ws.rs.core.MediaType;
-import jakarta.ws.rs.core.UriInfo;
-import java.util.Collection;
+import java.util.List;
 import lombok.RequiredArgsConstructor;
 import org.apache.fineract.commands.domain.CommandWrapper;
 import org.apache.fineract.commands.service.CommandWrapperBuilder;
 import 
org.apache.fineract.commands.service.PortfolioCommandSourceWritePlatformService;
-import org.apache.fineract.infrastructure.core.api.ApiRequestParameterHelper;
 import org.apache.fineract.infrastructure.core.data.CommandProcessingResult;
-import 
org.apache.fineract.infrastructure.core.serialization.ApiRequestJsonSerializationSettings;
-import 
org.apache.fineract.infrastructure.core.serialization.DefaultToApiJsonSerializer;
 import 
org.apache.fineract.infrastructure.security.service.PlatformSecurityContext;
 import 
org.apache.fineract.organisation.provisioning.data.ProvisioningCategoryData;
 import 
org.apache.fineract.organisation.provisioning.service.ProvisioningCategoryReadPlatformService;
@@ -52,52 +47,44 @@ public class ProvisioningCategoryApiResource {
 
     private final PlatformSecurityContext platformSecurityContext;
     private final ProvisioningCategoryReadPlatformService 
provisioningCategoryReadPlatformService;
-    private final ApiRequestParameterHelper apiRequestParameterHelper;
-    private final DefaultToApiJsonSerializer<ProvisioningCategoryData> 
toApiJsonSerializer;
     private final PortfolioCommandSourceWritePlatformService 
commandsSourceWritePlatformService;
 
     @GET
     @Consumes({ MediaType.APPLICATION_JSON })
     @Produces({ MediaType.APPLICATION_JSON })
-    public String retrieveAll(@Context final UriInfo uriInfo) {
-        this.platformSecurityContext.authenticatedUser();
-        final ApiRequestJsonSerializationSettings settings = 
this.apiRequestParameterHelper.process(uriInfo.getQueryParameters());
-        Collection<ProvisioningCategoryData> provisionCategoriesSet = null;
-        provisionCategoriesSet = 
this.provisioningCategoryReadPlatformService.retrieveAllProvisionCategories();
-        return this.toApiJsonSerializer.serialize(settings, 
provisionCategoriesSet);
+    public List<ProvisioningCategoryData> retrieveAll() {
+        platformSecurityContext.authenticatedUser();
+        return 
provisioningCategoryReadPlatformService.retrieveAllProvisionCategories();
     }
 
     @POST
     @Consumes({ MediaType.APPLICATION_JSON })
     @Produces({ MediaType.APPLICATION_JSON })
-    public String createProvisioningCategory(final String 
apiRequestBodyAsJson) {
-        CommandWrapper commandWrapper = null;
-        this.platformSecurityContext.authenticatedUser();
-        commandWrapper = new 
CommandWrapperBuilder().createProvisioningCategory().withJson(apiRequestBodyAsJson).build();
-        final CommandProcessingResult commandProcessingResult = 
this.commandsSourceWritePlatformService.logCommandSource(commandWrapper);
-        return this.toApiJsonSerializer.serialize(commandProcessingResult);
+    public CommandProcessingResult createProvisioningCategory(final String 
apiRequestBodyAsJson) {
+        platformSecurityContext.authenticatedUser();
+        CommandWrapper commandWrapper = new 
CommandWrapperBuilder().createProvisioningCategory().withJson(apiRequestBodyAsJson).build();
+        return 
commandsSourceWritePlatformService.logCommandSource(commandWrapper);
     }
 
     @PUT
     @Path("{categoryId}")
     @Consumes({ MediaType.APPLICATION_JSON })
     @Produces({ MediaType.APPLICATION_JSON })
-    public String updateProvisioningCategory(@PathParam("categoryId") final 
Long categoryId, final String apiRequestBodyAsJson) {
-        this.platformSecurityContext.authenticatedUser();
+    public CommandProcessingResult 
updateProvisioningCategory(@PathParam("categoryId") final Long categoryId,
+            final String apiRequestBodyAsJson) {
+        platformSecurityContext.authenticatedUser();
         final CommandWrapper commandRequest = new 
CommandWrapperBuilder().updateProvisioningCategory(categoryId)
                 .withJson(apiRequestBodyAsJson).build();
-        final CommandProcessingResult result = 
this.commandsSourceWritePlatformService.logCommandSource(commandRequest);
-        return this.toApiJsonSerializer.serialize(result);
+        return 
commandsSourceWritePlatformService.logCommandSource(commandRequest);
     }
 
     @DELETE
     @Path("{categoryId}")
     @Consumes({ MediaType.APPLICATION_JSON })
     @Produces({ MediaType.APPLICATION_JSON })
-    public String deleteProvisioningCategory(@PathParam("categoryId") final 
Long categoryId) {
-        this.platformSecurityContext.authenticatedUser();
+    public CommandProcessingResult 
deleteProvisioningCategory(@PathParam("categoryId") final Long categoryId) {
+        platformSecurityContext.authenticatedUser();
         final CommandWrapper commandRequest = new 
CommandWrapperBuilder().deleteProvisioningCategory(categoryId).build();
-        final CommandProcessingResult result = 
this.commandsSourceWritePlatformService.logCommandSource(commandRequest);
-        return this.toApiJsonSerializer.serialize(result);
+        return 
commandsSourceWritePlatformService.logCommandSource(commandRequest);
     }
 }
diff --git 
a/fineract-provider/src/main/java/org/apache/fineract/organisation/provisioning/api/ProvisioningCriteriaApiResource.java
 
b/fineract-provider/src/main/java/org/apache/fineract/organisation/provisioning/api/ProvisioningCriteriaApiResource.java
index d8e70e8fe..56022d656 100644
--- 
a/fineract-provider/src/main/java/org/apache/fineract/organisation/provisioning/api/ProvisioningCriteriaApiResource.java
+++ 
b/fineract-provider/src/main/java/org/apache/fineract/organisation/provisioning/api/ProvisioningCriteriaApiResource.java
@@ -38,10 +38,7 @@ import jakarta.ws.rs.Produces;
 import jakarta.ws.rs.core.Context;
 import jakarta.ws.rs.core.MediaType;
 import jakarta.ws.rs.core.UriInfo;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.Set;
+import java.util.List;
 import lombok.RequiredArgsConstructor;
 import org.apache.fineract.commands.domain.CommandWrapper;
 import org.apache.fineract.commands.service.CommandWrapperBuilder;
@@ -51,7 +48,6 @@ import 
org.apache.fineract.infrastructure.core.data.CommandProcessingResult;
 import 
org.apache.fineract.infrastructure.core.serialization.ApiRequestJsonSerializationSettings;
 import 
org.apache.fineract.infrastructure.core.serialization.DefaultToApiJsonSerializer;
 import 
org.apache.fineract.infrastructure.security.service.PlatformSecurityContext;
-import 
org.apache.fineract.organisation.provisioning.constants.ProvisioningCriteriaConstants;
 import 
org.apache.fineract.organisation.provisioning.data.ProvisioningCriteriaData;
 import 
org.apache.fineract.organisation.provisioning.service.ProvisioningCriteriaReadPlatformService;
 import org.springframework.stereotype.Component;
@@ -68,27 +64,13 @@ public class ProvisioningCriteriaApiResource {
     private final PortfolioCommandSourceWritePlatformService 
commandsSourceWritePlatformService;
     private final DefaultToApiJsonSerializer<ProvisioningCriteriaData> 
toApiJsonSerializer;
 
-    private static final Set<String> PROVISIONING_CRITERIA_TEMPLATE_PARAMETER 
= new HashSet<>(
-            Arrays.asList(ProvisioningCriteriaConstants.DEFINITIONS_PARAM, 
ProvisioningCriteriaConstants.LOANPRODUCTS_PARAM,
-                    ProvisioningCriteriaConstants.GLACCOUNTS_PARAM));
-
-    private static final Set<String> PROVISIONING_CRITERIA_PARAMETERS = new 
HashSet<>(
-            Arrays.asList(ProvisioningCriteriaConstants.CRITERIA_PARAM, 
ProvisioningCriteriaConstants.LOANPRODUCTS_PARAM,
-                    ProvisioningCriteriaConstants.DEFINITIONS_PARAM));
-
-    private static final Set<String> ALL_PROVISIONING_CRITERIA_PARAMETERS = 
new HashSet<>(
-            Arrays.asList(ProvisioningCriteriaConstants.CRITERIA_ID_PARAM, 
ProvisioningCriteriaConstants.CRITERIA_NAME_PARAM,
-                    ProvisioningCriteriaConstants.CREATED_BY_PARAM));
-
     @GET
     @Path("template")
     @Consumes({ MediaType.APPLICATION_JSON })
     @Produces({ MediaType.APPLICATION_JSON })
-    public String retrieveTemplate(@Context final UriInfo uriInfo) {
-        this.platformSecurityContext.authenticatedUser();
-        final ApiRequestJsonSerializationSettings settings = 
this.apiRequestParameterHelper.process(uriInfo.getQueryParameters());
-        ProvisioningCriteriaData data = 
this.provisioningCriteriaReadPlatformService.retrievePrivisiongCriteriaTemplate();
-        return this.toApiJsonSerializer.serialize(settings, data, 
PROVISIONING_CRITERIA_TEMPLATE_PARAMETER);
+    public ProvisioningCriteriaData retrieveTemplate() {
+        platformSecurityContext.authenticatedUser();
+        return 
provisioningCriteriaReadPlatformService.retrievePrivisiongCriteriaTemplate();
     }
 
     @GET
@@ -98,15 +80,15 @@ public class ProvisioningCriteriaApiResource {
     @Operation(summary = "Retrieves a Provisioning Criteria", description = 
"Retrieves a Provisioning Criteria")
     @ApiResponses({
             @ApiResponse(responseCode = "200", description = "OK", content = 
@Content(schema = @Schema(implementation = 
ProvisioningCriteriaApiResourceSwagger.GetProvisioningCriteriaCriteriaIdResponse.class)))
 })
-    public String retrieveProvisioningCriteria(@PathParam("criteriaId") 
@Parameter(description = "criteriaId") final Long criteriaId,
-            @Context final UriInfo uriInfo) {
+    public ProvisioningCriteriaData retrieveProvisioningCriteria(
+            @PathParam("criteriaId") @Parameter(description = "criteriaId") 
final Long criteriaId, @Context final UriInfo uriInfo) {
         platformSecurityContext.authenticatedUser();
-        ProvisioningCriteriaData criteria = 
this.provisioningCriteriaReadPlatformService.retrieveProvisioningCriteria(criteriaId);
-        final ApiRequestJsonSerializationSettings settings = 
this.apiRequestParameterHelper.process(uriInfo.getQueryParameters());
+        ProvisioningCriteriaData criteria = 
provisioningCriteriaReadPlatformService.retrieveProvisioningCriteria(criteriaId);
+        final ApiRequestJsonSerializationSettings settings = 
apiRequestParameterHelper.process(uriInfo.getQueryParameters());
         if (settings.isTemplate()) {
-            criteria = 
this.provisioningCriteriaReadPlatformService.retrievePrivisiongCriteriaTemplate(criteria);
+            criteria = 
provisioningCriteriaReadPlatformService.retrievePrivisiongCriteriaTemplate(criteria);
         }
-        return this.toApiJsonSerializer.serialize(settings, criteria, 
PROVISIONING_CRITERIA_PARAMETERS);
+        return criteria;
     }
 
     @GET
@@ -115,11 +97,9 @@ public class ProvisioningCriteriaApiResource {
     @Operation(summary = "Retrieves all created Provisioning Criterias", 
description = "Retrieves all created Provisioning Criterias")
     @ApiResponses({
             @ApiResponse(responseCode = "200", description = "OK", content = 
@Content(array = @ArraySchema(schema = @Schema(implementation = 
ProvisioningCriteriaApiResourceSwagger.GetProvisioningCriteriaResponse.class))))
 })
-    public String retrieveAllProvisioningCriterias(@Context final UriInfo 
uriInfo) {
+    public List<ProvisioningCriteriaData> retrieveAllProvisioningCriterias() {
         platformSecurityContext.authenticatedUser();
-        Collection<ProvisioningCriteriaData> data = 
this.provisioningCriteriaReadPlatformService.retrieveAllProvisioningCriterias();
-        final ApiRequestJsonSerializationSettings settings = 
this.apiRequestParameterHelper.process(uriInfo.getQueryParameters());
-        return this.toApiJsonSerializer.serialize(settings, data, 
ALL_PROVISIONING_CRITERIA_PARAMETERS);
+        return 
provisioningCriteriaReadPlatformService.retrieveAllProvisioningCriterias();
     }
 
     @POST
@@ -130,12 +110,10 @@ public class ProvisioningCriteriaApiResource {
     @RequestBody(required = true, content = @Content(schema = 
@Schema(implementation = 
ProvisioningCriteriaApiResourceSwagger.PostProvisioningCriteriaRequest.class)))
     @ApiResponses({
             @ApiResponse(responseCode = "200", description = "OK", content = 
@Content(schema = @Schema(implementation = 
ProvisioningCriteriaApiResourceSwagger.PostProvisioningCriteriaResponse.class)))
 })
-    public String createProvisioningCriteria(@Parameter(hidden = true) final 
String apiRequestBodyAsJson) {
-        CommandWrapper commandWrapper = null;
-        this.platformSecurityContext.authenticatedUser();
-        commandWrapper = new 
CommandWrapperBuilder().createProvisioningCriteria().withJson(apiRequestBodyAsJson).build();
-        final CommandProcessingResult commandProcessingResult = 
this.commandsSourceWritePlatformService.logCommandSource(commandWrapper);
-        return this.toApiJsonSerializer.serialize(commandProcessingResult);
+    public CommandProcessingResult 
createProvisioningCriteria(@Parameter(hidden = true) final String 
apiRequestBodyAsJson) {
+        platformSecurityContext.authenticatedUser();
+        CommandWrapper commandWrapper = new 
CommandWrapperBuilder().createProvisioningCriteria().withJson(apiRequestBodyAsJson).build();
+        return 
commandsSourceWritePlatformService.logCommandSource(commandWrapper);
     }
 
     @PUT
@@ -147,13 +125,13 @@ public class ProvisioningCriteriaApiResource {
     @RequestBody(required = true, content = @Content(schema = 
@Schema(implementation = 
ProvisioningCriteriaApiResourceSwagger.PutProvisioningCriteriaRequest.class)))
     @ApiResponses({
             @ApiResponse(responseCode = "200", description = "OK", content = 
@Content(schema = @Schema(implementation = 
ProvisioningCriteriaApiResourceSwagger.PutProvisioningCriteriaResponse.class))) 
})
-    public String updateProvisioningCriteria(@PathParam("criteriaId") 
@Parameter(description = "criteriaId") final Long criteriaId,
+    public CommandProcessingResult updateProvisioningCriteria(
+            @PathParam("criteriaId") @Parameter(description = "criteriaId") 
final Long criteriaId,
             @Parameter(hidden = true) final String apiRequestBodyAsJson) {
-        this.platformSecurityContext.authenticatedUser();
+        platformSecurityContext.authenticatedUser();
         final CommandWrapper commandRequest = new 
CommandWrapperBuilder().updateProvisioningCriteria(criteriaId)
                 .withJson(apiRequestBodyAsJson).build();
-        final CommandProcessingResult result = 
this.commandsSourceWritePlatformService.logCommandSource(commandRequest);
-        return this.toApiJsonSerializer.serialize(result);
+        return 
commandsSourceWritePlatformService.logCommandSource(commandRequest);
     }
 
     @DELETE
@@ -163,10 +141,10 @@ public class ProvisioningCriteriaApiResource {
     @Operation(summary = "Deletes Provisioning Criteria", description = 
"Deletes Provisioning Criteria")
     @ApiResponses({
             @ApiResponse(responseCode = "200", description = "OK", content = 
@Content(schema = @Schema(implementation = 
ProvisioningCriteriaApiResourceSwagger.DeleteProvisioningCriteriaResponse.class)))
 })
-    public String deleteProvisioningCriteria(@PathParam("criteriaId") 
@Parameter(description = "criteriaId") final Long criteriaId) {
-        this.platformSecurityContext.authenticatedUser();
+    public CommandProcessingResult deleteProvisioningCriteria(
+            @PathParam("criteriaId") @Parameter(description = "criteriaId") 
final Long criteriaId) {
+        platformSecurityContext.authenticatedUser();
         final CommandWrapper commandRequest = new 
CommandWrapperBuilder().deleteProvisioningCriteria(criteriaId).build();
-        final CommandProcessingResult result = 
this.commandsSourceWritePlatformService.logCommandSource(commandRequest);
-        return this.toApiJsonSerializer.serialize(result);
+        return 
commandsSourceWritePlatformService.logCommandSource(commandRequest);
     }
 }
diff --git 
a/fineract-provider/src/main/java/org/apache/fineract/organisation/provisioning/service/ProvisioningCategoryReadPlatformServiceImpl.java
 
b/fineract-provider/src/main/java/org/apache/fineract/organisation/provisioning/service/ProvisioningCategoryReadPlatformServiceImpl.java
index 113d61099..95c7b4e64 100644
--- 
a/fineract-provider/src/main/java/org/apache/fineract/organisation/provisioning/service/ProvisioningCategoryReadPlatformServiceImpl.java
+++ 
b/fineract-provider/src/main/java/org/apache/fineract/organisation/provisioning/service/ProvisioningCategoryReadPlatformServiceImpl.java
@@ -20,7 +20,7 @@ package org.apache.fineract.organisation.provisioning.service;
 
 import java.sql.ResultSet;
 import java.sql.SQLException;
-import java.util.Collection;
+import java.util.List;
 import lombok.RequiredArgsConstructor;
 import org.apache.fineract.infrastructure.core.domain.JdbcSupport;
 import 
org.apache.fineract.organisation.provisioning.data.ProvisioningCategoryData;
@@ -34,7 +34,7 @@ public class ProvisioningCategoryReadPlatformServiceImpl 
implements Provisioning
     private final ProvisioningCategoryRowMapper provisionCategoryRowMapper = 
new ProvisioningCategoryRowMapper();
 
     @Override
-    public Collection<ProvisioningCategoryData> 
retrieveAllProvisionCategories() {
+    public List<ProvisioningCategoryData> retrieveAllProvisionCategories() {
         // User is already authenticated by API. So we no need to check again
         // here
         final String sql = "select " + 
this.provisionCategoryRowMapper.schema() + " from m_provision_category pc order 
by pc.id";
diff --git 
a/fineract-provider/src/main/java/org/apache/fineract/organisation/provisioning/service/ProvisioningCriteriaReadPlatformService.java
 
b/fineract-provider/src/main/java/org/apache/fineract/organisation/provisioning/service/ProvisioningCriteriaReadPlatformService.java
index eebf63bc3..5a7974bbf 100644
--- 
a/fineract-provider/src/main/java/org/apache/fineract/organisation/provisioning/service/ProvisioningCriteriaReadPlatformService.java
+++ 
b/fineract-provider/src/main/java/org/apache/fineract/organisation/provisioning/service/ProvisioningCriteriaReadPlatformService.java
@@ -18,7 +18,7 @@
  */
 package org.apache.fineract.organisation.provisioning.service;
 
-import java.util.Collection;
+import java.util.List;
 import 
org.apache.fineract.organisation.provisioning.data.ProvisioningCriteriaData;
 
 public interface ProvisioningCriteriaReadPlatformService {
@@ -27,7 +27,7 @@ public interface ProvisioningCriteriaReadPlatformService {
 
     ProvisioningCriteriaData retrieveProvisioningCriteria(Long criteriaId);
 
-    Collection<ProvisioningCriteriaData> retrieveAllProvisioningCriterias();
+    List<ProvisioningCriteriaData> retrieveAllProvisioningCriterias();
 
     ProvisioningCriteriaData 
retrievePrivisiongCriteriaTemplate(ProvisioningCriteriaData data);
 }
diff --git 
a/fineract-provider/src/main/java/org/apache/fineract/organisation/provisioning/service/ProvisioningCriteriaReadPlatformServiceImpl.java
 
b/fineract-provider/src/main/java/org/apache/fineract/organisation/provisioning/service/ProvisioningCriteriaReadPlatformServiceImpl.java
index 1dde37c06..dc837b13d 100644
--- 
a/fineract-provider/src/main/java/org/apache/fineract/organisation/provisioning/service/ProvisioningCriteriaReadPlatformServiceImpl.java
+++ 
b/fineract-provider/src/main/java/org/apache/fineract/organisation/provisioning/service/ProvisioningCriteriaReadPlatformServiceImpl.java
@@ -77,7 +77,7 @@ public class ProvisioningCriteriaReadPlatformServiceImpl 
implements Provisioning
     }
 
     @Override
-    public Collection<ProvisioningCriteriaData> 
retrieveAllProvisioningCriterias() {
+    public List<ProvisioningCriteriaData> retrieveAllProvisioningCriterias() {
         ProvisioningCriteriaRowMapper mapper = new 
ProvisioningCriteriaRowMapper();
         final String sql = "select " + mapper.schema();
         return this.jdbcTemplate.query(sql, mapper); // NOSONAR
diff --git 
a/fineract-provider/src/test/java/org/apache/fineract/portfolio/loanaccount/jobs/generateloanlossprovisioning/GenerateLoanlossProvisioningTaskletTest.java
 
b/fineract-provider/src/test/java/org/apache/fineract/portfolio/loanaccount/jobs/generateloanlossprovisioning/GenerateLoanlossProvisioningTaskletTest.java
index 2a5462c5d..5d47f7bfc 100644
--- 
a/fineract-provider/src/test/java/org/apache/fineract/portfolio/loanaccount/jobs/generateloanlossprovisioning/GenerateLoanlossProvisioningTaskletTest.java
+++ 
b/fineract-provider/src/test/java/org/apache/fineract/portfolio/loanaccount/jobs/generateloanlossprovisioning/GenerateLoanlossProvisioningTaskletTest.java
@@ -25,7 +25,6 @@ import static org.mockito.Mockito.verifyNoInteractions;
 import static org.springframework.batch.repeat.RepeatStatus.FINISHED;
 
 import java.time.LocalDate;
-import java.util.Collection;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -75,7 +74,7 @@ class GenerateLoanlossProvisioningTaskletTest {
     @Test
     public void testExecuteShouldCreateProvisioningEntry() throws Exception {
         // given
-        Collection<ProvisioningCriteriaData> provisioningCriterias = 
List.of(new ProvisioningCriteriaData());
+        List<ProvisioningCriteriaData> provisioningCriterias = List.of(new 
ProvisioningCriteriaData());
         
given(provisioningCriteriaReadPlatformService.retrieveAllProvisioningCriterias()).willReturn(provisioningCriterias);
         // when
         RepeatStatus result = underTest.execute(stepContribution, 
chunkContext);
@@ -87,7 +86,7 @@ class GenerateLoanlossProvisioningTaskletTest {
     @Test
     public void 
testExecuteShouldNotCreateProvisioningEntryWhenNoProvisioningCriteriasArePresent()
 throws Exception {
         // given
-        Collection<ProvisioningCriteriaData> provisioningCriterias = List.of();
+        List<ProvisioningCriteriaData> provisioningCriterias = List.of();
         
given(provisioningCriteriaReadPlatformService.retrieveAllProvisioningCriterias()).willReturn(provisioningCriterias);
         // when
         RepeatStatus result = underTest.execute(stepContribution, 
chunkContext);
@@ -110,7 +109,7 @@ class GenerateLoanlossProvisioningTaskletTest {
     @Test
     public void 
testExecuteShouldNotFailWhenProvisioningEntryIsAlreadyCreated() throws 
Exception {
         // given
-        Collection<ProvisioningCriteriaData> provisioningCriterias = 
List.of(new ProvisioningCriteriaData());
+        List<ProvisioningCriteriaData> provisioningCriterias = List.of(new 
ProvisioningCriteriaData());
         
given(provisioningCriteriaReadPlatformService.retrieveAllProvisioningCriterias()).willReturn(provisioningCriterias);
         
given(provisioningEntriesWritePlatformService.createProvisioningEntry(BUSINESS_DATE,
 true))
                 .willThrow(new ProvisioningEntryAlreadyCreatedException(1L, 
BUSINESS_DATE));
@@ -124,7 +123,7 @@ class GenerateLoanlossProvisioningTaskletTest {
     @Test
     public void 
testExecuteShouldNotFailWhenExceptionIsThrownInProvisioningEntryCreation() 
throws Exception {
         // given
-        Collection<ProvisioningCriteriaData> provisioningCriterias = 
List.of(new ProvisioningCriteriaData());
+        List<ProvisioningCriteriaData> provisioningCriterias = List.of(new 
ProvisioningCriteriaData());
         
given(provisioningCriteriaReadPlatformService.retrieveAllProvisioningCriterias()).willReturn(provisioningCriterias);
         
given(provisioningEntriesWritePlatformService.createProvisioningEntry(BUSINESS_DATE,
 true)).willThrow(new RuntimeException("Test"));
         // when

Reply via email to