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


The following commit(s) were added to refs/heads/develop by this push:
     new c761b4027 refactor: add lombok to adhocquery module
c761b4027 is described below

commit c761b402795672c76e0be973fc3e9e67fb06fc17
Author: Hemant Gupta <[email protected]>
AuthorDate: Tue Aug 30 04:19:47 2022 +0530

    refactor: add lombok to adhocquery module
---
 .../adhocquery/api/AdHocJsonInputParams.java       |  2 +-
 .../apache/fineract/adhocquery/data/AdHocData.java | 45 ++++++------
 .../apache/fineract/adhocquery/domain/AdHoc.java   | 80 +++++-----------------
 .../service/AdHocReadPlatformServiceImpl.java      |  7 +-
 ...AdHocWritePlatformServiceJpaRepositoryImpl.java |  4 +-
 5 files changed, 49 insertions(+), 89 deletions(-)

diff --git 
a/fineract-provider/src/main/java/org/apache/fineract/adhocquery/api/AdHocJsonInputParams.java
 
b/fineract-provider/src/main/java/org/apache/fineract/adhocquery/api/AdHocJsonInputParams.java
index 0f759891c..430b92ff3 100644
--- 
a/fineract-provider/src/main/java/org/apache/fineract/adhocquery/api/AdHocJsonInputParams.java
+++ 
b/fineract-provider/src/main/java/org/apache/fineract/adhocquery/api/AdHocJsonInputParams.java
@@ -26,7 +26,7 @@ import java.util.Set;
  ***/
 public enum AdHocJsonInputParams {
 
-    ID("id"), NAME("name"), QUERY("query"), TABLENAME("tableName"), 
TABLEFIELDS("tableFields"), ISACTIVE("isActive"), REPORT_RUN_FREQUENCY(
+    ID("id"), NAME("name"), QUERY("query"), TABLENAME("tableName"), 
TABLEFIELDS("tableFields"), ACTIVE("isActive"), REPORT_RUN_FREQUENCY(
             "reportRunFrequency"), REPORT_RUN_EVERY("reportRunEvery"), 
EMAIL("email");
 
     private final String value;
diff --git 
a/fineract-provider/src/main/java/org/apache/fineract/adhocquery/data/AdHocData.java
 
b/fineract-provider/src/main/java/org/apache/fineract/adhocquery/data/AdHocData.java
index 88b1b3bcd..3481bbd75 100644
--- 
a/fineract-provider/src/main/java/org/apache/fineract/adhocquery/data/AdHocData.java
+++ 
b/fineract-provider/src/main/java/org/apache/fineract/adhocquery/data/AdHocData.java
@@ -22,8 +22,9 @@ import java.time.ZonedDateTime;
 import java.util.Arrays;
 import java.util.List;
 import java.util.stream.Collectors;
-import lombok.Getter;
-import lombok.RequiredArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
 import org.apache.fineract.adhocquery.domain.ReportRunFrequency;
 import org.apache.fineract.infrastructure.core.data.EnumOptionData;
 
@@ -31,32 +32,32 @@ import 
org.apache.fineract.infrastructure.core.data.EnumOptionData;
  * Immutable data object represent note or case information AdHocData
  *
  */
-@Getter
-@RequiredArgsConstructor
+@Data
+@NoArgsConstructor
+@Accessors(chain = true)
 public class AdHocData {
 
-    private final Long id;
-    private final String name;
-    private final String query;
-    private final String tableName;
-    private final String tableFields;
-    private final String email;
-    private final boolean isActive;
-    private final ZonedDateTime createdOn;
-    private final Long createdById;
-    private final Long updatedById;
-    private final ZonedDateTime updatedOn;
-    private final String createdBy;
-    private final List<EnumOptionData> reportRunFrequencies;
-    private final Long reportRunFrequency;
-    private final Long reportRunEvery;
-    private final ZonedDateTime lastRun;
+    private Long id;
+    private String name;
+    private String query;
+    private String tableName;
+    private String tableFields;
+    private String email;
+    private boolean isActive;
+    private ZonedDateTime createdOn;
+    private Long createdById;
+    private Long updatedById;
+    private ZonedDateTime updatedOn;
+    private String createdBy;
+    private List<EnumOptionData> reportRunFrequencies;
+    private Long reportRunFrequency;
+    private Long reportRunEvery;
+    private ZonedDateTime lastRun;
 
     public static AdHocData template() {
         List<EnumOptionData> reportRunFrequencies = 
Arrays.stream(ReportRunFrequency.values())
                 .map(rrf -> new EnumOptionData(rrf.getValue(), rrf.getCode(), 
rrf.getCode())).collect(Collectors.toList());
 
-        return new AdHocData(null, null, null, null, null, null, false, null, 
null, null, null, null, reportRunFrequencies, null, null,
-                null);
+        return new AdHocData().setReportRunFrequencies(reportRunFrequencies);
     }
 }
diff --git 
a/fineract-provider/src/main/java/org/apache/fineract/adhocquery/domain/AdHoc.java
 
b/fineract-provider/src/main/java/org/apache/fineract/adhocquery/domain/AdHoc.java
index 9f36da6fb..a5960be91 100644
--- 
a/fineract-provider/src/main/java/org/apache/fineract/adhocquery/domain/AdHoc.java
+++ 
b/fineract-provider/src/main/java/org/apache/fineract/adhocquery/domain/AdHoc.java
@@ -23,16 +23,23 @@ import java.util.Map;
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.Table;
-import org.apache.commons.lang3.BooleanUtils;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+import lombok.experimental.Accessors;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.fineract.adhocquery.api.AdHocJsonInputParams;
 import org.apache.fineract.infrastructure.core.api.JsonCommand;
 import org.apache.fineract.infrastructure.core.domain.AbstractAuditableCustom;
 import org.apache.fineract.infrastructure.security.utils.SQLInjectionValidator;
 
+@Getter
+@Setter
+@NoArgsConstructor
+@Accessors(chain = true)
 @Entity
 @Table(name = "m_adhoc")
-public final class AdHoc extends AbstractAuditableCustom {
+public class AdHoc extends AbstractAuditableCustom {
 
     @Column(name = "name", length = 100)
     private String name;
@@ -56,22 +63,7 @@ public final class AdHoc extends AbstractAuditableCustom {
     private Long reportRunEvery;
 
     @Column(name = "is_active", nullable = false)
-    private boolean isActive = false;
-
-    private AdHoc() {}
-
-    private AdHoc(final String name, final String query, final String 
tableName, final String tableFields, final String email,
-            final Long reportRunFrequency, final Long reportRunEvery, final 
boolean isActive) {
-        this.name = StringUtils.defaultIfEmpty(name, null);
-        this.query = StringUtils.defaultIfEmpty(query, null);
-        this.tableName = StringUtils.defaultIfEmpty(tableName, null);
-        this.tableFields = StringUtils.defaultIfEmpty(tableFields, null);
-        this.email = StringUtils.defaultIfEmpty(email, null);
-        this.reportRunFrequency = reportRunFrequency;
-        this.reportRunEvery = reportRunEvery;
-        this.isActive = BooleanUtils.toBooleanDefaultIfNull(isActive, false);
-
-    }
+    private boolean active;
 
     public static AdHoc fromJson(final JsonCommand command) {
         final String name = 
command.stringValueOfParameterNamed(AdHocJsonInputParams.NAME.getValue());
@@ -85,8 +77,11 @@ public final class AdHoc extends AbstractAuditableCustom {
         final String email = 
command.stringValueOfParameterNamed(AdHocJsonInputParams.EMAIL.getValue());
         final Long reportRunFrequency = 
command.longValueOfParameterNamed(AdHocJsonInputParams.REPORT_RUN_FREQUENCY.getValue());
         final Long reportRunEvery = 
command.longValueOfParameterNamed(AdHocJsonInputParams.REPORT_RUN_EVERY.getValue());
-        final boolean isActive = 
command.booleanPrimitiveValueOfParameterNamed(AdHocJsonInputParams.ISACTIVE.getValue());
-        return new AdHoc(name, query, tableName, tableFields, email, 
reportRunFrequency, reportRunEvery, isActive);
+        final boolean active = 
command.booleanPrimitiveValueOfParameterNamed(AdHocJsonInputParams.ACTIVE.getValue());
+        return new AdHoc().setName(StringUtils.defaultIfEmpty(name, 
null)).setQuery(StringUtils.defaultIfEmpty(query, null))
+                .setTableName(StringUtils.defaultIfEmpty(tableName, 
null)).setTableFields(StringUtils.defaultIfEmpty(tableFields, null))
+                .setEmail(StringUtils.defaultIfEmpty(email, 
null)).setReportRunFrequency(reportRunFrequency)
+                .setReportRunEvery(reportRunEvery).setActive(false);
     }
 
     public Map<String, Object> update(final JsonCommand command) {
@@ -136,52 +131,13 @@ public final class AdHoc extends AbstractAuditableCustom {
             actualChanges.put(reportRunEvery, newValue);
             this.reportRunEvery = newValue;
         }
-        final String paramisActive = "isActive";
-        if (command.isChangeInBooleanParameterNamed(paramisActive, 
this.isActive)) {
+        final String paramisActive = "active";
+        if (command.isChangeInBooleanParameterNamed(paramisActive, 
this.active)) {
             final Boolean newValue = 
command.booleanObjectValueOfParameterNamed(paramisActive);
             actualChanges.put(paramisActive, newValue);
-            this.isActive = newValue;
+            this.active = newValue;
         }
         return actualChanges;
     }
 
-    public String getName() {
-        return name;
-    }
-
-    public String getQuery() {
-        return query;
-    }
-
-    public String getTableName() {
-        return tableName;
-    }
-
-    public String getTableFields() {
-        return tableFields;
-    }
-
-    public boolean isActive() {
-        return this.isActive;
-    }
-
-    public String getEmail() {
-        return email;
-    }
-
-    public void disableActive() {
-        this.isActive = true;
-    }
-
-    public void enableActive() {
-        this.isActive = false;
-    }
-
-    public Long getReportRunFrequency() {
-        return this.reportRunFrequency;
-    }
-
-    public Long getReportRunEvery() {
-        return this.reportRunEvery;
-    }
 }
diff --git 
a/fineract-provider/src/main/java/org/apache/fineract/adhocquery/service/AdHocReadPlatformServiceImpl.java
 
b/fineract-provider/src/main/java/org/apache/fineract/adhocquery/service/AdHocReadPlatformServiceImpl.java
index 3efce9d14..ffacba208 100644
--- 
a/fineract-provider/src/main/java/org/apache/fineract/adhocquery/service/AdHocReadPlatformServiceImpl.java
+++ 
b/fineract-provider/src/main/java/org/apache/fineract/adhocquery/service/AdHocReadPlatformServiceImpl.java
@@ -97,8 +97,11 @@ public class AdHocReadPlatformServiceImpl implements 
AdHocReadPlatformService {
             final Long reportRunEvery = JdbcSupport.getLong(rs, 
"report_run_every");
             final ZonedDateTime lastRun = JdbcSupport.getDateTime(rs, 
"last_run");
 
-            return new AdHocData(id, name, query, tableName, tableFields, 
email, isActive, createdDate, createdById, updatedById, updatedOn,
-                    createdByUsername, 
AdHocData.template().getReportRunFrequencies(), reportRunFrequency, 
reportRunEvery, lastRun);
+            return new 
AdHocData().setId(id).setName(name).setQuery(query).setTableName(tableName).setTableFields(tableFields)
+                    
.setEmail(email).setActive(isActive).setCreatedOn(createdDate).setCreatedById(createdById).setUpdatedById(updatedById)
+                    .setUpdatedOn(updatedOn).setCreatedBy(createdByUsername)
+                    
.setReportRunFrequencies(AdHocData.template().getReportRunFrequencies()).setReportRunFrequency(reportRunFrequency)
+                    .setReportRunEvery(reportRunEvery).setLastRun(lastRun);
         }
 
         public String schema() {
diff --git 
a/fineract-provider/src/main/java/org/apache/fineract/adhocquery/service/AdHocWritePlatformServiceJpaRepositoryImpl.java
 
b/fineract-provider/src/main/java/org/apache/fineract/adhocquery/service/AdHocWritePlatformServiceJpaRepositoryImpl.java
index 9c6a40b0f..5f81ff8f0 100644
--- 
a/fineract-provider/src/main/java/org/apache/fineract/adhocquery/service/AdHocWritePlatformServiceJpaRepositoryImpl.java
+++ 
b/fineract-provider/src/main/java/org/apache/fineract/adhocquery/service/AdHocWritePlatformServiceJpaRepositoryImpl.java
@@ -137,7 +137,7 @@ public class AdHocWritePlatformServiceJpaRepositoryImpl 
implements AdHocWritePla
              * Checking the adhocquery present in DB or not using adHocId
              */
             final AdHoc adHoc = 
this.adHocRepository.findById(adHocId).orElseThrow(() -> new 
AdHocNotFoundException(adHocId));
-            adHoc.disableActive();
+            adHoc.setActive(true);
             this.adHocRepository.save(adHoc);
             return new 
CommandProcessingResultBuilder().withEntityId(adHocId).build();
 
@@ -158,7 +158,7 @@ public class AdHocWritePlatformServiceJpaRepositoryImpl 
implements AdHocWritePla
              * Checking the adHoc present in DB or not using id
              */
             final AdHoc adHoc = 
this.adHocRepository.findById(adHocId).orElseThrow(() -> new 
AdHocNotFoundException(adHocId));
-            adHoc.enableActive();
+            adHoc.setActive(false);
             this.adHocRepository.save(adHoc);
             return new 
CommandProcessingResultBuilder().withEntityId(adHocId).build();
 

Reply via email to