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 0959c8e40 FINERACT-1716: remove redundant boilerplate code within 
`CommandSource` class
0959c8e40 is described below

commit 0959c8e4011e7b7c817b73a5612da997d5d4284b
Author: zeyad2003 <[email protected]>
AuthorDate: Sat Jul 20 16:13:06 2024 +0300

    FINERACT-1716: remove redundant boilerplate code within `CommandSource` 
class
---
 .../fineract/commands/domain/CommandSource.java    | 211 +++------------------
 .../commands/service/CommandSourceService.java     |   4 +-
 ...folioCommandSourceWritePlatformServiceImpl.java |   4 +-
 .../SynchronousCommandProcessingService.java       |   4 +-
 4 files changed, 37 insertions(+), 186 deletions(-)

diff --git 
a/fineract-core/src/main/java/org/apache/fineract/commands/domain/CommandSource.java
 
b/fineract-core/src/main/java/org/apache/fineract/commands/domain/CommandSource.java
index 2fadde646..97b4cbbe1 100644
--- 
a/fineract-core/src/main/java/org/apache/fineract/commands/domain/CommandSource.java
+++ 
b/fineract-core/src/main/java/org/apache/fineract/commands/domain/CommandSource.java
@@ -24,6 +24,11 @@ import jakarta.persistence.JoinColumn;
 import jakarta.persistence.ManyToOne;
 import jakarta.persistence.Table;
 import java.time.OffsetDateTime;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
 import org.apache.fineract.infrastructure.core.api.JsonCommand;
 import org.apache.fineract.infrastructure.core.data.CommandProcessingResult;
 import 
org.apache.fineract.infrastructure.core.domain.AbstractPersistableCustom;
@@ -32,6 +37,11 @@ import 
org.apache.fineract.infrastructure.core.service.DateUtils;
 import org.apache.fineract.useradministration.domain.AppUser;
 
 @Entity
+@Getter
+@Setter
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
 @Table(name = "m_portfolio_command_source")
 public class CommandSource extends AbstractPersistableCustom<Long> {
 
@@ -123,195 +133,36 @@ public class CommandSource extends 
AbstractPersistableCustom<Long> {
     @Column(name = "result_status_code")
     private Integer resultStatusCode;
 
-    private CommandSource(final String actionName, final String entityName, 
final String href, final Long resourceId,
-            final Long subResourceId, final String commandSerializedAsJson, 
final AppUser maker, final String idempotencyKey,
-            final Integer status) {
-        this.actionName = actionName;
-        this.entityName = entityName;
-        this.resourceGetUrl = href;
-        this.resourceId = resourceId;
-        this.subResourceId = subResourceId;
-        this.commandAsJson = commandSerializedAsJson;
-        this.maker = maker;
-        this.madeOnDate = DateUtils.getAuditOffsetDateTime();
-        this.status = status;
-        this.idempotencyKey = idempotencyKey;
-    }
-
     public static CommandSource fullEntryFrom(final CommandWrapper wrapper, 
final JsonCommand command, final AppUser maker,
             String idempotencyKey, Integer status) {
-        CommandSource commandSource = new CommandSource(wrapper.actionName(), 
wrapper.entityName(), wrapper.getHref(), command.entityId(),
-                command.subentityId(), command.json(), maker, idempotencyKey, 
status);
-        commandSource.officeId = wrapper.getOfficeId();
-        commandSource.groupId = command.getGroupId();
-        commandSource.clientId = command.getClientId();
-        commandSource.loanId = command.getLoanId();
-        commandSource.savingsId = command.getSavingsId();
-        commandSource.productId = command.getProductId();
-        commandSource.transactionId = command.getTransactionId();
-        commandSource.creditBureauId = command.getCreditBureauId();
-        commandSource.organisationCreditBureauId = 
command.getOrganisationCreditBureauId();
-        return commandSource;
-    }
-
-    protected CommandSource() {
-        //
-    }
-
-    public Long getCreditBureauId() {
-        return this.creditBureauId;
-    }
-
-    public void setCreditBureauId(Long creditBureauId) {
-        this.creditBureauId = creditBureauId;
-    }
-
-    public Long getOrganisationCreditBureauId() {
-        return this.organisationCreditBureauId;
-    }
-
-    public void setOrganisationCreditBureauId(Long organisationCreditBureauId) 
{
-        this.organisationCreditBureauId = organisationCreditBureauId;
-    }
-
-    public String getJobName() {
-        return this.jobName;
-    }
-
-    public Long getResourceId() {
-        return this.resourceId;
-    }
-
-    public void setResourceId(final Long resourceId) {
-        this.resourceId = resourceId;
-    }
 
-    public Long getSubResourceId() {
-        return this.subResourceId;
-    }
-
-    public void setSubResourceId(final Long subResourceId) {
-        this.subResourceId = subResourceId;
-    }
-
-    public String getCommandJson() {
-        return this.commandAsJson;
-    }
-
-    public void setCommandJson(final String json) {
-        this.commandAsJson = json;
-    }
-
-    public AppUser getMaker() {
-        return maker;
-    }
-
-    public AppUser getChecker() {
-        return checker;
-    }
-
-    public String getActionName() {
-        return this.actionName;
-    }
-
-    public String getEntityName() {
-        return this.entityName;
+        return CommandSource.builder() //
+                .actionName(wrapper.actionName()) //
+                .entityName(wrapper.entityName()) //
+                .resourceGetUrl(wrapper.getHref()) //
+                .resourceId(command.entityId()) //
+                .subResourceId(command.subentityId()) //
+                .commandAsJson(command.json()) //
+                .maker(maker) //
+                .madeOnDate(DateUtils.getAuditOffsetDateTime()) //
+                .status(status) //
+                .idempotencyKey(idempotencyKey) //
+                .officeId(wrapper.getOfficeId()) //
+                .groupId(command.getGroupId()) //
+                .clientId(command.getClientId()) //
+                .loanId(command.getLoanId()) //
+                .savingsId(command.getSavingsId()) //
+                .productId(command.getProductId()) //
+                .transactionId(command.getTransactionId()) //
+                .creditBureauId(command.getCreditBureauId()) //
+                
.organisationCreditBureauId(command.getOrganisationCreditBureauId()) //
+                .build(); //
     }
 
     public String getPermissionCode() {
         return this.actionName + "_" + this.entityName;
     }
 
-    public String getResourceGetUrl() {
-        return this.resourceGetUrl;
-    }
-
-    public Long getProductId() {
-        return this.productId;
-    }
-
-    /**
-     * @return the clientId
-     */
-    public Long getClientId() {
-        return clientId;
-    }
-
-    /**
-     * @return the groupId
-     */
-    public Long getGroupId() {
-        return groupId;
-    }
-
-    /**
-     * @return the loanId
-     */
-    public Long getLoanId() {
-        return loanId;
-    }
-
-    /**
-     * @return the officeId
-     */
-    public Long getOfficeId() {
-        return officeId;
-    }
-
-    /**
-     * @return the savingsId
-     */
-    public Long getSavingsId() {
-        return savingsId;
-    }
-
-    /**
-     * @return the transactionId
-     */
-    public String getTransactionId() {
-        return this.transactionId;
-    }
-
-    public void setTransactionId(final String transactionId) {
-        this.transactionId = transactionId;
-    }
-
-    public String getIdempotencyKey() {
-        return idempotencyKey;
-    }
-
-    public void setIdempotencyKey(String idempotencyKey) {
-        this.idempotencyKey = idempotencyKey;
-    }
-
-    public String getResult() {
-        return result;
-    }
-
-    public void setResult(String result) {
-        this.result = result;
-    }
-
-    public Integer getStatus() {
-        return status;
-    }
-
-    public void setStatus(Integer status) {
-        this.status = status;
-    }
-
-    public void setStatus(CommandProcessingResultType status) {
-        setStatus(status == null ? null : status.getValue());
-    }
-
-    public Integer getResultStatusCode() {
-        return resultStatusCode;
-    }
-
-    public void setResultStatusCode(Integer resultStatusCode) {
-        this.resultStatusCode = resultStatusCode;
-    }
-
     public void markAsAwaitingApproval() {
         this.status = CommandProcessingResultType.AWAITING_APPROVAL.getValue();
     }
diff --git 
a/fineract-core/src/main/java/org/apache/fineract/commands/service/CommandSourceService.java
 
b/fineract-core/src/main/java/org/apache/fineract/commands/service/CommandSourceService.java
index 46432d613..cabada788 100644
--- 
a/fineract-core/src/main/java/org/apache/fineract/commands/service/CommandSourceService.java
+++ 
b/fineract-core/src/main/java/org/apache/fineract/commands/service/CommandSourceService.java
@@ -111,8 +111,8 @@ public class CommandSourceService {
     public CommandSource getInitialCommandSource(CommandWrapper wrapper, 
JsonCommand jsonCommand, AppUser maker, String idempotencyKey) {
         CommandSource commandSourceResult = 
CommandSource.fullEntryFrom(wrapper, jsonCommand, maker, idempotencyKey,
                 UNDER_PROCESSING.getValue());
-        if (commandSourceResult.getCommandJson() == null) {
-            commandSourceResult.setCommandJson("{}");
+        if (commandSourceResult.getCommandAsJson() == null) {
+            commandSourceResult.setCommandAsJson("{}");
         }
         return commandSourceResult;
     }
diff --git 
a/fineract-core/src/main/java/org/apache/fineract/commands/service/PortfolioCommandSourceWritePlatformServiceImpl.java
 
b/fineract-core/src/main/java/org/apache/fineract/commands/service/PortfolioCommandSourceWritePlatformServiceImpl.java
index fcd17c3f6..1de67b6e8 100644
--- 
a/fineract-core/src/main/java/org/apache/fineract/commands/service/PortfolioCommandSourceWritePlatformServiceImpl.java
+++ 
b/fineract-core/src/main/java/org/apache/fineract/commands/service/PortfolioCommandSourceWritePlatformServiceImpl.java
@@ -89,8 +89,8 @@ public class PortfolioCommandSourceWritePlatformServiceImpl 
implements Portfolio
                 commandSourceInput.getGroupId(), 
commandSourceInput.getClientId(), commandSourceInput.getLoanId(),
                 commandSourceInput.getSavingsId(), 
commandSourceInput.getTransactionId(), commandSourceInput.getCreditBureauId(),
                 commandSourceInput.getOrganisationCreditBureauId(), 
commandSourceInput.getIdempotencyKey());
-        final JsonElement parsedCommand = 
this.fromApiJsonHelper.parse(commandSourceInput.getCommandJson());
-        final JsonCommand command = 
JsonCommand.fromExistingCommand(makerCheckerId, 
commandSourceInput.getCommandJson(), parsedCommand,
+        final JsonElement parsedCommand = 
this.fromApiJsonHelper.parse(commandSourceInput.getCommandAsJson());
+        final JsonCommand command = 
JsonCommand.fromExistingCommand(makerCheckerId, 
commandSourceInput.getCommandAsJson(), parsedCommand,
                 this.fromApiJsonHelper, commandSourceInput.getEntityName(), 
commandSourceInput.getResourceId(),
                 commandSourceInput.getSubResourceId(), 
commandSourceInput.getGroupId(), commandSourceInput.getClientId(),
                 commandSourceInput.getLoanId(), 
commandSourceInput.getSavingsId(), commandSourceInput.getTransactionId(),
diff --git 
a/fineract-core/src/main/java/org/apache/fineract/commands/service/SynchronousCommandProcessingService.java
 
b/fineract-core/src/main/java/org/apache/fineract/commands/service/SynchronousCommandProcessingService.java
index 3df570b1f..6b4868f2b 100644
--- 
a/fineract-core/src/main/java/org/apache/fineract/commands/service/SynchronousCommandProcessingService.java
+++ 
b/fineract-core/src/main/java/org/apache/fineract/commands/service/SynchronousCommandProcessingService.java
@@ -134,7 +134,7 @@ public class SynchronousCommandProcessingService implements 
CommandProcessingSer
             commandSource.setResultStatusCode(statusCode);
             commandSource.setResult(errorInfo.getMessage());
             if (statusCode != SC_OK) {
-                commandSource.setStatus(ERROR);
+                commandSource.setStatus(ERROR.getValue());
             }
             if (!isEnclosingTransaction) { // TODO: temporary solution
                 commandSource = 
commandSourceService.saveResultNewTransaction(commandSource);
@@ -148,7 +148,7 @@ public class SynchronousCommandProcessingService implements 
CommandProcessingSer
         commandSource.setResultStatusCode(SC_OK);
         commandSource.updateForAudit(result);
         commandSource.setResult(toApiJsonSerializer.serializeResult(result));
-        commandSource.setStatus(PROCESSED);
+        commandSource.setStatus(PROCESSED.getValue());
         commandSource = 
commandSourceService.saveResultSameTransaction(commandSource);
         storeCommandIdInContext(commandSource); // Store command id as a 
request attribute
 

Reply via email to