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

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

commit 77ee43acb841e1e5954367035ef657daf5526c89
Author: Arnold Galovics <[email protected]>
AuthorDate: Wed Dec 28 22:56:56 2022 +0100

    Fixed purge external events job
---
 .../apache/fineract/commands/domain/CommandSourceRepository.java   | 4 ++--
 .../fineract/commands/jobs/PurgeProcessedCommandsTasklet.java      | 6 +++---
 .../fineract/commands/jobs/PurgeProcessedCommandsTaskletTest.java  | 7 ++++---
 integration-tests/build.gradle                                     | 2 +-
 4 files changed, 10 insertions(+), 9 deletions(-)

diff --git 
a/fineract-provider/src/main/java/org/apache/fineract/commands/domain/CommandSourceRepository.java
 
b/fineract-provider/src/main/java/org/apache/fineract/commands/domain/CommandSourceRepository.java
index 13b6affbb..31dbe21a4 100644
--- 
a/fineract-provider/src/main/java/org/apache/fineract/commands/domain/CommandSourceRepository.java
+++ 
b/fineract-provider/src/main/java/org/apache/fineract/commands/domain/CommandSourceRepository.java
@@ -18,7 +18,7 @@
  */
 package org.apache.fineract.commands.domain;
 
-import java.time.LocalDate;
+import java.time.OffsetDateTime;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
 import org.springframework.data.jpa.repository.Modifying;
@@ -30,6 +30,6 @@ public interface CommandSourceRepository extends 
JpaRepository<CommandSource, Lo
 
     @Modifying(flushAutomatically = true)
     @Query("delete from CommandSource c where c.status = :status and 
c.madeOnDate is not null and c.madeOnDate <= :dateForPurgeCriteria")
-    void deleteOlderEventsWithStatus(CommandProcessingResultType status, 
LocalDate dateForPurgeCriteria);
+    void deleteOlderEventsWithStatus(Integer status, OffsetDateTime 
dateForPurgeCriteria);
 
 }
diff --git 
a/fineract-provider/src/main/java/org/apache/fineract/commands/jobs/PurgeProcessedCommandsTasklet.java
 
b/fineract-provider/src/main/java/org/apache/fineract/commands/jobs/PurgeProcessedCommandsTasklet.java
index 92cfac681..ba81cdfbb 100644
--- 
a/fineract-provider/src/main/java/org/apache/fineract/commands/jobs/PurgeProcessedCommandsTasklet.java
+++ 
b/fineract-provider/src/main/java/org/apache/fineract/commands/jobs/PurgeProcessedCommandsTasklet.java
@@ -18,7 +18,7 @@
  */
 package org.apache.fineract.commands.jobs;
 
-import java.time.LocalDate;
+import java.time.OffsetDateTime;
 import lombok.AllArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.fineract.commands.domain.CommandProcessingResultType;
@@ -43,8 +43,8 @@ public class PurgeProcessedCommandsTasklet implements Tasklet 
{
     public RepeatStatus execute(StepContribution contribution, ChunkContext 
chunkContext) {
         try {
             Long numberOfDaysForPurgeCriteria = 
configurationDomainService.retrieveProcessedCommandsPurgeDaysCriteria();
-            LocalDate dateForPurgeCriteria = 
DateUtils.getBusinessLocalDate().minusDays(numberOfDaysForPurgeCriteria);
-            
repository.deleteOlderEventsWithStatus(CommandProcessingResultType.PROCESSED, 
dateForPurgeCriteria);
+            OffsetDateTime dateForPurgeCriteria = 
DateUtils.getOffsetDateTimeOfTenant().minusDays(numberOfDaysForPurgeCriteria);
+            
repository.deleteOlderEventsWithStatus(CommandProcessingResultType.PROCESSED.getValue(),
 dateForPurgeCriteria);
         } catch (Exception e) {
             log.error("Error occurred while purging processed commands: ", e);
         }
diff --git 
a/fineract-provider/src/test/java/org/apache/fineract/commands/jobs/PurgeProcessedCommandsTaskletTest.java
 
b/fineract-provider/src/test/java/org/apache/fineract/commands/jobs/PurgeProcessedCommandsTaskletTest.java
index 050438443..c172dfa96 100644
--- 
a/fineract-provider/src/test/java/org/apache/fineract/commands/jobs/PurgeProcessedCommandsTaskletTest.java
+++ 
b/fineract-provider/src/test/java/org/apache/fineract/commands/jobs/PurgeProcessedCommandsTaskletTest.java
@@ -25,6 +25,7 @@ import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
 import java.time.LocalDate;
+import java.time.OffsetDateTime;
 import java.time.ZoneId;
 import java.util.HashMap;
 import java.util.Map;
@@ -70,15 +71,15 @@ public class PurgeProcessedCommandsTaskletTest {
     @Test
     public void 
givenEventsForPurgeWhenTaskExecutionThenEventsPurgeForDaysCriteria() {
         // given
-        ArgumentCaptor<LocalDate> dateCriteriaCaptor = 
ArgumentCaptor.forClass(LocalDate.class);
+        ArgumentCaptor<OffsetDateTime> dateCriteriaCaptor = 
ArgumentCaptor.forClass(OffsetDateTime.class);
         
when(configurationDomainService.retrieveProcessedCommandsPurgeDaysCriteria()).thenReturn(2L);
         // when
         resultStatus = underTest.execute(stepContribution, chunkContext);
         // then
         verify(repository, 
times(1)).deleteOlderEventsWithStatus(Mockito.any(), Mockito.any());
         verify(repository).deleteOlderEventsWithStatus(Mockito.any(), 
dateCriteriaCaptor.capture());
-        LocalDate expectedDateForPurgeCriteriaTest = 
DateUtils.getBusinessLocalDate().minusDays(2);
-        LocalDate actualDateForPurgeCriteria = dateCriteriaCaptor.getValue();
+        OffsetDateTime expectedDateForPurgeCriteriaTest = 
DateUtils.getOffsetDateTimeOfTenant().minusDays(2);
+        OffsetDateTime actualDateForPurgeCriteria = 
dateCriteriaCaptor.getValue();
         assertEquals(expectedDateForPurgeCriteriaTest, 
actualDateForPurgeCriteria);
         assertEquals(RepeatStatus.FINISHED, resultStatus);
     }
diff --git a/integration-tests/build.gradle b/integration-tests/build.gradle
index e1969a2ca..5eb324723 100644
--- a/integration-tests/build.gradle
+++ b/integration-tests/build.gradle
@@ -57,7 +57,7 @@ cargo {
             downloadDir = file("$buildDir/download")
             extractDir = file("$buildDir/tomcat-integration-tests")
         }
-        startStopTimeout = 240000
+        startStopTimeout = 300000
         sharedClasspath = configurations.driver
         containerProperties {
             def jvmArgs = 
'--add-exports=java.naming/com.sun.jndi.ldap=ALL-UNNAMED 
--add-opens=java.base/java.lang=ALL-UNNAMED 
--add-opens=java.base/java.lang.invoke=ALL-UNNAMED 
--add-opens=java.base/java.io=ALL-UNNAMED 
--add-opens=java.base/java.security=ALL-UNNAMED 
--add-opens=java.base/java.util=ALL-UNNAMED 
--add-opens=java.management/javax.management=ALL-UNNAMED 
--add-opens=java.naming/javax.naming=ALL-UNNAMED '

Reply via email to