FINERACT-2056: (chore) introduce builder pattern and remove redundant methods & constructors.
- used @Getter & @Builder annotations on the above of GroupSavingsIndividualMonitoringAccountData.
- removed the getters and getInstance() methods from the implementation.
- change GSIMReadPlatformServiceImpl to make use of the new implementation.
diff --git a/fineract-savings/src/main/java/org/apache/fineract/portfolio/savings/data/GroupSavingsIndividualMonitoringAccountData.java b/fineract-savings/src/main/java/org/apache/fineract/portfolio/savings/data/GroupSavingsIndividualMonitoringAccountData.java
index c7d861c..0a22d4e 100644
--- a/fineract-savings/src/main/java/org/apache/fineract/portfolio/savings/data/GroupSavingsIndividualMonitoringAccountData.java
+++ b/fineract-savings/src/main/java/org/apache/fineract/portfolio/savings/data/GroupSavingsIndividualMonitoringAccountData.java
@@ -20,7 +20,11 @@
package org.apache.fineract.portfolio.savings.data;
import java.math.BigDecimal;
+import lombok.Builder;
+import lombok.Getter;
+@Getter
+@Builder
public final class GroupSavingsIndividualMonitoringAccountData {
private final BigDecimal gsimId;
@@ -42,80 +46,4 @@
private final Long childAccountsCount;
private final String savingsStatus;
-
- private GroupSavingsIndividualMonitoringAccountData(final BigDecimal glimId, final BigDecimal groupId, final BigDecimal clientId,
- final String accountNumber, final BigDecimal childAccountId, final String childAccountNumber, final BigDecimal childDeposit,
- final BigDecimal parentDeposit, final Long childAccountsCount, final String savingsStatus) {
- this.gsimId = glimId;
- this.groupId = groupId;
- this.clientId = clientId;
- this.accountNumber = accountNumber;
- this.childAccountId = childAccountId;
- this.childAccountNumber = childAccountNumber;
- this.childDeposit = childDeposit;
- this.parentDeposit = parentDeposit;
- this.childAccountsCount = childAccountsCount;
- this.savingsStatus = savingsStatus;
- }
-
- public static GroupSavingsIndividualMonitoringAccountData getInstance(final BigDecimal glimId, final BigDecimal groupId,
- final String accountNumber, final String childAccountNumber, final BigDecimal childDeposit, final BigDecimal parentDeposit,
- final Long childAccountsCount, final String savingsStatus) {
- return new GroupSavingsIndividualMonitoringAccountData(glimId, groupId, null, accountNumber, null, childAccountNumber, childDeposit,
- parentDeposit, childAccountsCount, savingsStatus);
- }
-
- public static GroupSavingsIndividualMonitoringAccountData getInstance1(final BigDecimal glimId, final BigDecimal groupId,
- final String accountNumber, final BigDecimal parentDeposit, final String savingsStatus) {
- return new GroupSavingsIndividualMonitoringAccountData(glimId, groupId, null, accountNumber, null, null, null, parentDeposit, null,
- savingsStatus);
- }
-
- public static GroupSavingsIndividualMonitoringAccountData getInstance2(final BigDecimal glimId, final BigDecimal groupId,
- final BigDecimal clientId, final String accountNumber, final BigDecimal childAccountId, final String childAccountNumber,
- final BigDecimal childDeposit, final BigDecimal parentDeposit, final Long childAccountsCount, final String savingsStatus) {
- return new GroupSavingsIndividualMonitoringAccountData(glimId, groupId, clientId, accountNumber, childAccountId, childAccountNumber,
- childDeposit, parentDeposit, childAccountsCount, savingsStatus);
- }
-
- public BigDecimal getGsimId() {
- return gsimId;
- }
-
- public BigDecimal getGroupId() {
- return groupId;
- }
-
- public BigDecimal getClientId() {
- return clientId;
- }
-
- public String getAccountNumber() {
- return accountNumber;
- }
-
- public BigDecimal getChildAccountId() {
- return childAccountId;
- }
-
- public String getChildAccountNumber() {
- return childAccountNumber;
- }
-
- public BigDecimal getChildDeposit() {
- return childDeposit;
- }
-
- public BigDecimal getParentDeposit() {
- return parentDeposit;
- }
-
- public Long getChildAccountsCount() {
- return childAccountsCount;
- }
-
- public String getSavingsStatus() {
- return savingsStatus;
- }
-
}
diff --git a/fineract-savings/src/main/java/org/apache/fineract/portfolio/savings/service/GSIMReadPlatformServiceImpl.java b/fineract-savings/src/main/java/org/apache/fineract/portfolio/savings/service/GSIMReadPlatformServiceImpl.java
index dbb1138..7e63c06 100644
--- a/fineract-savings/src/main/java/org/apache/fineract/portfolio/savings/service/GSIMReadPlatformServiceImpl.java
+++ b/fineract-savings/src/main/java/org/apache/fineract/portfolio/savings/service/GSIMReadPlatformServiceImpl.java
@@ -73,8 +73,11 @@
final BigDecimal parentBalance = rs.getBigDecimal("parentBalance");
final BigDecimal childBalance = rs.getBigDecimal("childBalance");
final String savingsStatus = SavingsAccountStatusType.fromInt((int) rs.getLong("savingsStatus")).toString();
- return GroupSavingsIndividualMonitoringAccountData.getInstance2(gsimId, groupId, clientId, accountNumber, childAccountId,
- childAccountNumber, parentBalance, childBalance, childAccountsCount, savingsStatus);
+
+ return GroupSavingsIndividualMonitoringAccountData.builder().gsimId(gsimId).groupId(groupId).clientId(clientId)
+ .accountNumber(accountNumber).childAccountId(childAccountId).childAccountNumber(childAccountNumber)
+ .childDeposit(parentBalance).parentDeposit(childBalance).childAccountsCount(childAccountsCount)
+ .savingsStatus(savingsStatus).build();
}
}
@@ -99,8 +102,8 @@
final String loanStatus = LoanStatus.fromInt((int) rs.getLong("savingsStatus")).toString();
- return GroupSavingsIndividualMonitoringAccountData.getInstance1(glimId, groupId, accountNumber, parentDeposit, loanStatus);
-
+ return GroupSavingsIndividualMonitoringAccountData.builder().gsimId(glimId).groupId(groupId).accountNumber(accountNumber)
+ .parentDeposit(parentDeposit).savingsStatus(loanStatus).build();
}
}