galovics commented on code in PR #2355:
URL: https://github.com/apache/fineract/pull/2355#discussion_r895933966


##########
fineract-provider/src/main/java/org/apache/fineract/accounting/journalentry/service/AccountingProcessorHelper.java:
##########
@@ -777,11 +777,11 @@ public void 
createCashBasedJournalEntriesAndReversalsForSavingsCharges(final Off
     }
 
     public LoanTransaction getLoanTransactionById(final long 
loanTransactionId) {
-        return 
this.loanTransactionRepository.findById(loanTransactionId).get();
+        return this.loanTransactionRepository.getById(loanTransactionId);

Review Comment:
   findById and getById is fundamentally different.
   
   The first one is returning an actual entity object if found while the other 
one (getById) is returning only a reference to the object.
   
   You can imagine the 2 by comparing:
   
   - EntityManager#find
   - EntityManager#getReference
   
   The latter one is only a lazy reference to the object and will be loaded 
upon access (at least for most JPA providers).
   
   I'd say let's not mess around the references so to simply get rid of the 
sonar issues, let's go with 
`this.loanTransactionRepository.findById(loanTransactionId).orElse(null)`



##########
fineract-provider/src/main/java/org/apache/fineract/accounting/journalentry/service/AccountingProcessorHelper.java:
##########
@@ -777,11 +777,11 @@ public void 
createCashBasedJournalEntriesAndReversalsForSavingsCharges(final Off
     }
 
     public LoanTransaction getLoanTransactionById(final long 
loanTransactionId) {
-        return 
this.loanTransactionRepository.findById(loanTransactionId).get();
+        return this.loanTransactionRepository.getById(loanTransactionId);
     }
 
     public SavingsAccountTransaction getSavingsTransactionById(final long 
savingsTransactionId) {
-        return 
this.savingsAccountTransactionRepository.findById(savingsTransactionId).get();
+        return 
this.savingsAccountTransactionRepository.getById(savingsTransactionId);

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/notification/eventandlistener/NotificationEventListener.java:
##########
@@ -52,7 +52,7 @@ public void receive(NotificationData notificationData) {
         if (notificationData.getOfficeId() != null) {
             List<Long> tempUserIds = new ArrayList<>(userIds);
             for (Long userId : tempUserIds) {
-                AppUser appUser = appUserRepository.findById(userId).get();
+                AppUser appUser = appUserRepository.getById(userId);

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/infrastructure/configuration/domain/ConfigurationDomainServiceJpa.java:
##########
@@ -115,13 +115,13 @@ public boolean isConstraintApproachEnabledForDatatables() 
{
 
     @Override
     public boolean isEhcacheEnabled() {
-        return this.cacheTypeRepository.findById(1L).get().isEhcacheEnabled();
+        return this.cacheTypeRepository.getById(1L).isEhcacheEnabled();
     }
 
     @Transactional
     @Override
     public void updateCache(final CacheType cacheType) {
-        final PlatformCache cache = 
this.cacheTypeRepository.findById(1L).get();
+        final PlatformCache cache = this.cacheTypeRepository.getById(1L);

Review Comment:
   This should be something similar to this:
   
   ```
   this.cacheTypeRepository.findById(1L).ifPresent(cache -> {
           cache.update(cacheType);
           this.cacheTypeRepository.save(cache);
   }
   ```



##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/account/service/StandingInstructionWritePlatformServiceImpl.java:
##########
@@ -183,7 +183,7 @@ public CommandProcessingResult update(final Long id, final 
JsonCommand command)
 
     @Override
     public CommandProcessingResult delete(final Long id) {
-        AccountTransferStandingInstruction standingInstructionsForUpdate = 
this.standingInstructionRepository.findById(id).get();
+        AccountTransferStandingInstruction standingInstructionsForUpdate = 
this.standingInstructionRepository.getById(id);

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/savings/service/SavingsAccountWritePlatformServiceJpaRepositoryImpl.java:
##########
@@ -376,14 +376,14 @@ public CommandProcessingResult deposit(final Long 
savingsId, final JsonCommand c
 
             LOG.debug("Deposit account has been created: {} ", deposit);
 
-            GroupSavingsIndividualMonitoring gsim = 
gsimRepository.findById(account.getGsim().getId()).get();
+            GroupSavingsIndividualMonitoring gsim = 
gsimRepository.getById(account.getGsim().getId());
             LOG.info("parent deposit : {} ", gsim.getParentDeposit());
             LOG.info("child account : {} ", savingsId);
             BigDecimal currentBalance = gsim.getParentDeposit();
             BigDecimal newBalance = currentBalance.add(transactionAmount);
             gsim.setParentDeposit(newBalance);
             gsimRepository.save(gsim);
-            LOG.info("balance after making deposit : {} ", 
gsimRepository.findById(account.getGsim().getId()).get().getParentDeposit());
+            LOG.info("balance after making deposit : {} ", 
gsimRepository.getById(account.getGsim().getId()).getParentDeposit());

Review Comment:
   This is anyway a bad pattern because we're making a database query just to 
log something.
   What if the logger is not even configured to info level but above, like 
warn? Then the logger won't log anything but we still make the db call.
   
   In those cases it's wise to wrap the log message into a level check like:
   
   ```
   if (LOG.isInfoEnabled()) {
       // do the expensive logging
   }
   ```



##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/savings/service/SavingsAccountWritePlatformServiceJpaRepositoryImpl.java:
##########
@@ -939,7 +939,7 @@ private void checkClientOrGroupActive(final SavingsAccount 
account) {
     public CommandProcessingResult bulkGSIMClose(final Long gsimId, final 
JsonCommand command) {
 
         final Long parentSavingId = gsimId;
-        GroupSavingsIndividualMonitoring parentSavings = 
gsimRepository.findById(parentSavingId).get();
+        GroupSavingsIndividualMonitoring parentSavings = 
gsimRepository.getById(parentSavingId);

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/infrastructure/creditbureau/service/CreditReportWritePlatformServiceImpl.java:
##########
@@ -146,20 +140,24 @@ public String addCreditReport(Long bureauId, File 
creditReport, FormDataContentD
 
     }
 
-    private Optional<String> getCreditBureau(Long creditBureauID) {
+    private String getCreditBureau(Long creditBureauID) {
 
         if (creditBureauID != null) {
             Optional<CreditBureau> creditBureau = 
this.creditBureauRepository.findById(creditBureauID);
 
             if (creditBureau.isEmpty()) {
-                return Optional.empty();
+                
baseDataValidator.reset().failWithCode("creditBureau.has.not.been.Integrated");

Review Comment:
   You could swap the condition and get rid of this exceptional case.
   So it could be 
   ```
   if (!creditBureau.isEmpty()) {
       return creditBureau.get().getName()
   }
   ```
   
   And the later exception throw logic will catch the error cases anyway.



##########
fineract-provider/src/main/java/org/apache/fineract/infrastructure/configuration/domain/ConfigurationDomainServiceJpa.java:
##########
@@ -115,13 +115,13 @@ public boolean isConstraintApproachEnabledForDatatables() 
{
 
     @Override
     public boolean isEhcacheEnabled() {
-        return this.cacheTypeRepository.findById(1L).get().isEhcacheEnabled();
+        return this.cacheTypeRepository.getById(1L).isEhcacheEnabled();

Review Comment:
   This could be like this:
   
   
`this.cacheTypeRepository.findById(1L).map(PlatformCache::isEhcacheEnabled).orElse(false)`



##########
fineract-provider/src/main/java/org/apache/fineract/notification/service/NotificationWritePlatformServiceImpl.java:
##########
@@ -83,7 +83,7 @@ public Long notify(Collection<Long> userIds, String 
objectType, Long objectId, S
     private List<Long> insertIntoNotificationMapper(Collection<Long> userIds, 
Long generatedNotificationId) {
         List<Long> mappedIds = new ArrayList<>();
         for (Long userId : userIds) {
-            AppUser appUser = this.appUserRepository.findById(userId).get();
+            AppUser appUser = this.appUserRepository.getById(userId);

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/accounting/journalentry/service/AccountingProcessorHelper.java:
##########
@@ -924,7 +924,7 @@ private void createDebitJournalEntryForSavings(final Office 
office, final String
         String modifiedTransactionId = transactionId;
         if (StringUtils.isNumeric(transactionId)) {
             long id = Long.parseLong(transactionId);
-            savingsAccountTransaction = 
this.savingsAccountTransactionRepository.findById(id).get();
+            savingsAccountTransaction = 
this.savingsAccountTransactionRepository.getById(id);

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/accounting/provisioning/service/ProvisioningEntriesWritePlatformServiceJpaRepositoryImpl.java:
##########
@@ -210,11 +210,11 @@ private Collection<LoanProductProvisioningEntry> 
generateLoanProvisioningEntry(P
                 .retrieveLoanProductsProvisioningData(date);
         Map<Integer, LoanProductProvisioningEntry> provisioningEntries = new 
HashMap<>();
         for (LoanProductProvisioningEntryData data : entries) {
-            LoanProduct loanProduct = 
this.loanProductRepository.findById(data.getProductId()).get();
+            LoanProduct loanProduct = 
this.loanProductRepository.getById(data.getProductId());
             Office office = 
this.officeRepositoryWrapper.findOneWithNotFoundDetection(data.getOfficeId());
-            ProvisioningCategory provisioningCategory = 
provisioningCategoryRepository.findById(data.getCategoryId()).get();
-            GLAccount liabilityAccount = 
glAccountRepository.findById(data.getLiablityAccount()).get();
-            GLAccount expenseAccount = 
glAccountRepository.findById(data.getExpenseAccount()).get();
+            ProvisioningCategory provisioningCategory = 
provisioningCategoryRepository.getById(data.getCategoryId());

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/service/LoanApplicationWritePlatformServiceJpaRepositoryImpl.java:
##########
@@ -1498,7 +1498,7 @@ public CommandProcessingResult 
undoGLIMLoanApplicationApproval(final Long loanId
         // GroupLoanIndividualMonitoringAccount
         // glimAccount=glimRepository.findOne(loanId);
         final Long parentLoanId = loanId;
-        GroupLoanIndividualMonitoringAccount parentLoan = 
glimRepository.findById(parentLoanId).get();
+        GroupLoanIndividualMonitoringAccount parentLoan = 
glimRepository.getById(parentLoanId);

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/accounting/journalentry/service/AccountingProcessorHelper.java:
##########
@@ -833,7 +833,7 @@ private void createCreditJournalEntryForSavings(final 
Office office, final Strin
         String modifiedTransactionId = transactionId;
         if (StringUtils.isNumeric(transactionId)) {
             long id = Long.parseLong(transactionId);
-            savingsAccountTransaction = 
this.savingsAccountTransactionRepository.findById(id).get();
+            savingsAccountTransaction = 
this.savingsAccountTransactionRepository.getById(id);

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/accounting/journalentry/service/AccountingProcessorHelper.java:
##########
@@ -904,7 +904,7 @@ private void createDebitJournalEntryForLoan(final Office 
office, final String cu
         String modifiedTransactionId = transactionId;
         if (StringUtils.isNumeric(transactionId)) {
             long id = Long.parseLong(transactionId);
-            loanTransaction = 
this.loanTransactionRepository.findById(id).get();
+            loanTransaction = this.loanTransactionRepository.getById(id);

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/account/service/AccountTransfersWritePlatformServiceImpl.java:
##########
@@ -440,7 +440,7 @@ public Long transferFunds(final AccountTransferDTO 
accountTransferDTO) {
 
             // if the savings account is GSIM, update its parent as well
             if (toSavingsAccount.getGsim() != null) {
-                GroupSavingsIndividualMonitoring gsim = 
gsimRepository.findById(toSavingsAccount.getGsim().getId()).get();
+                GroupSavingsIndividualMonitoring gsim = 
gsimRepository.getById(toSavingsAccount.getGsim().getId());

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/accounting/provisioning/service/ProvisioningEntriesWritePlatformServiceJpaRepositoryImpl.java:
##########
@@ -210,11 +210,11 @@ private Collection<LoanProductProvisioningEntry> 
generateLoanProvisioningEntry(P
                 .retrieveLoanProductsProvisioningData(date);
         Map<Integer, LoanProductProvisioningEntry> provisioningEntries = new 
HashMap<>();
         for (LoanProductProvisioningEntryData data : entries) {
-            LoanProduct loanProduct = 
this.loanProductRepository.findById(data.getProductId()).get();
+            LoanProduct loanProduct = 
this.loanProductRepository.getById(data.getProductId());

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/service/LoanWritePlatformServiceJpaRepositoryImpl.java:
##########
@@ -341,7 +341,7 @@ private LoanLifecycleStateMachine 
defaultLoanLifecycleStateMachine() {
     @Override
     public CommandProcessingResult disburseGLIMLoan(final Long loanId, final 
JsonCommand command) {
         final Long parentLoanId = loanId;
-        GroupLoanIndividualMonitoringAccount parentLoan = 
glimRepository.findById(parentLoanId).get();
+        GroupLoanIndividualMonitoringAccount parentLoan = 
glimRepository.getById(parentLoanId);

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/accounting/journalentry/service/AccountingProcessorHelper.java:
##########
@@ -854,7 +854,7 @@ private void createCreditJournalEntryForLoan(final Office 
office, final String c
         String modifiedTransactionId = transactionId;
         if (StringUtils.isNumeric(transactionId)) {
             long id = Long.parseLong(transactionId);
-            loanTransaction = 
this.loanTransactionRepository.findById(id).get();
+            loanTransaction = this.loanTransactionRepository.getById(id);

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/service/LoanApplicationWritePlatformServiceJpaRepositoryImpl.java:
##########
@@ -1577,7 +1577,7 @@ public CommandProcessingResult 
rejectGLIMApplicationApproval(final Long glimId,
         // GroupLoanIndividualMonitoringAccount
         // glimAccount=glimRepository.findOne(loanId);
         final Long parentLoanId = glimId;
-        GroupLoanIndividualMonitoringAccount parentLoan = 
glimRepository.findById(parentLoanId).get();
+        GroupLoanIndividualMonitoringAccount parentLoan = 
glimRepository.getById(parentLoanId);

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/service/LoanApplicationWritePlatformServiceJpaRepositoryImpl.java:
##########
@@ -1338,7 +1338,7 @@ public void validateMultiDisbursementData(final 
JsonCommand command, LocalDate e
     public CommandProcessingResult approveGLIMLoanAppication(final Long 
loanId, final JsonCommand command) {
 
         final Long parentLoanId = loanId;
-        GroupLoanIndividualMonitoringAccount parentLoan = 
glimRepository.findById(parentLoanId).get();
+        GroupLoanIndividualMonitoringAccount parentLoan = 
glimRepository.getById(parentLoanId);

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/service/LoanWritePlatformServiceJpaRepositoryImpl.java:
##########
@@ -938,7 +938,7 @@ public CommandProcessingResult makeGLIMLoanRepayment(final 
Long loanId, final Js
 
         final Long parentLoanId = loanId;
 
-        glimRepository.findById(parentLoanId).get();
+        glimRepository.getById(parentLoanId);

Review Comment:
   I think the intention here was to actually fail the execution in case the 
parentLoanId is not found but with this refactoring we're losing that.



##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/service/LoanWritePlatformServiceJpaRepositoryImpl.java:
##########
@@ -848,7 +848,7 @@ public CommandProcessingResult undoGLIMLoanDisbursal(final 
Long loanId, final Js
         // GroupLoanIndividualMonitoringAccount
         // glimAccount=glimRepository.findOne(loanId);
         final Long parentLoanId = loanId;
-        GroupLoanIndividualMonitoringAccount parentLoan = 
glimRepository.findById(parentLoanId).get();
+        GroupLoanIndividualMonitoringAccount parentLoan = 
glimRepository.getById(parentLoanId);

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/meeting/service/MeetingWritePlatformServiceJpaRepositoryImpl.java:
##########
@@ -164,7 +164,7 @@ private CalendarInstance getCalendarInstance(final 
JsonCommand command) {
             /*
              * If group is within a center then center entityType should be 
passed for retrieving CalendarInstance.
              */
-            final Group group = this.groupRepository.findById(entityId).get();
+            final Group group = this.groupRepository.getById(entityId);

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/savings/service/SavingsAccountWritePlatformServiceJpaRepositoryImpl.java:
##########
@@ -376,14 +376,14 @@ public CommandProcessingResult deposit(final Long 
savingsId, final JsonCommand c
 
             LOG.debug("Deposit account has been created: {} ", deposit);
 
-            GroupSavingsIndividualMonitoring gsim = 
gsimRepository.findById(account.getGsim().getId()).get();
+            GroupSavingsIndividualMonitoring gsim = 
gsimRepository.getById(account.getGsim().getId());

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/savings/domain/SavingsAccountAssembler.java:
##########
@@ -432,7 +432,7 @@ public SavingsAccount assembleFrom(final Client client, 
final Group group, final
             }
             accountType = AccountType.JLG;
         }
-        final SavingsProduct product = 
this.savingProductRepository.findById(productId).get();
+        final SavingsProduct product = 
this.savingProductRepository.getById(productId);

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/savings/service/SavingsAccountWritePlatformServiceJpaRepositoryImpl.java:
##########
@@ -376,14 +376,14 @@ public CommandProcessingResult deposit(final Long 
savingsId, final JsonCommand c
 
             LOG.debug("Deposit account has been created: {} ", deposit);
 
-            GroupSavingsIndividualMonitoring gsim = 
gsimRepository.findById(account.getGsim().getId()).get();
+            GroupSavingsIndividualMonitoring gsim = 
gsimRepository.getById(account.getGsim().getId());
             LOG.info("parent deposit : {} ", gsim.getParentDeposit());
             LOG.info("child account : {} ", savingsId);
             BigDecimal currentBalance = gsim.getParentDeposit();
             BigDecimal newBalance = currentBalance.add(transactionAmount);
             gsim.setParentDeposit(newBalance);
             gsimRepository.save(gsim);
-            LOG.info("balance after making deposit : {} ", 
gsimRepository.findById(account.getGsim().getId()).get().getParentDeposit());
+            LOG.info("balance after making deposit : {} ", 
gsimRepository.getById(account.getGsim().getId()).getParentDeposit());

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/savings/service/SavingsAccountWritePlatformServiceJpaRepositoryImpl.java:
##########
@@ -448,7 +448,7 @@ public CommandProcessingResult withdrawal(final Long 
savingsId, final JsonComman
                 transactionAmount, paymentDetail, transactionBooleanValues, 
backdatedTxnsAllowedTill);
 
         if (isGsim && (withdrawal.getId() != null)) {
-            GroupSavingsIndividualMonitoring gsim = 
gsimRepository.findById(account.getGsim().getId()).get();
+            GroupSavingsIndividualMonitoring gsim = 
gsimRepository.getById(account.getGsim().getId());

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/savings/service/SavingsAccountWritePlatformServiceJpaRepositoryImpl.java:
##########
@@ -225,7 +225,7 @@ public 
SavingsAccountWritePlatformServiceJpaRepositoryImpl(final PlatformSecurit
     public CommandProcessingResult gsimActivate(final Long gsimId, final 
JsonCommand command) {
 
         Long parentSavingId = gsimId;
-        GroupSavingsIndividualMonitoring parentSavings = 
gsimRepository.findById(parentSavingId).get();
+        GroupSavingsIndividualMonitoring parentSavings = 
gsimRepository.getById(parentSavingId);

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/infrastructure/creditbureau/service/CreditReportWritePlatformServiceImpl.java:
##########
@@ -146,20 +140,24 @@ public String addCreditReport(Long bureauId, File 
creditReport, FormDataContentD
 
     }
 
-    private Optional<String> getCreditBureau(Long creditBureauID) {
+    private String getCreditBureau(Long creditBureauID) {

Review Comment:
   Let's rename the method. It's not returning a CreditBureau object but only 
its name. Should be `getCreditBureauName`



##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/savings/service/SavingsApplicationProcessWritePlatformServiceJpaRepositoryImpl.java:
##########
@@ -612,7 +612,7 @@ public CommandProcessingResult 
undoApplicationApproval(final Long savingsId, fin
     public CommandProcessingResult rejectGSIMApplication(final Long gsimId, 
final JsonCommand command) {
 
         final Long parentSavingId = gsimId;
-        GroupSavingsIndividualMonitoring parentSavings = 
gsimRepository.findById(parentSavingId).get();
+        GroupSavingsIndividualMonitoring parentSavings = 
gsimRepository.getById(parentSavingId);

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/savings/service/SavingsApplicationProcessWritePlatformServiceJpaRepositoryImpl.java:
##########
@@ -552,7 +552,7 @@ public CommandProcessingResult approveApplication(final 
Long savingsId, final Js
     @Override
     public CommandProcessingResult undoGSIMApplicationApproval(final Long 
gsimId, final JsonCommand command) {
         final Long parentSavingId = gsimId;
-        GroupSavingsIndividualMonitoring parentSavings = 
gsimRepository.findById(parentSavingId).get();
+        GroupSavingsIndividualMonitoring parentSavings = 
gsimRepository.getById(parentSavingId);

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/shareaccounts/service/ShareAccountSchedularServiceImpl.java:
##########
@@ -49,7 +49,7 @@ public ShareAccountSchedularServiceImpl(final 
ShareAccountDividendRepository sha
     @Transactional
     public void postDividend(final Long dividendDetailId, final Long 
savingsId) {
 
-        ShareAccountDividendDetails shareAccountDividendDetails = 
this.shareAccountDividendRepository.findById(dividendDetailId).get();
+        ShareAccountDividendDetails shareAccountDividendDetails = 
this.shareAccountDividendRepository.getById(dividendDetailId);

Review Comment:
   Same as above.



##########
fineract-provider/src/main/java/org/apache/fineract/portfolio/savings/service/SavingsApplicationProcessWritePlatformServiceJpaRepositoryImpl.java:
##########
@@ -488,7 +488,7 @@ public CommandProcessingResult approveGSIMApplication(final 
Long gsimId, final J
         // GroupLoanIndividualMonitoringAccount
         // glimAccount=glimRepository.findOne(loanId);
         Long parentSavingId = gsimId;
-        GroupSavingsIndividualMonitoring parentSavings = 
gsimRepository.findById(parentSavingId).get();
+        GroupSavingsIndividualMonitoring parentSavings = 
gsimRepository.getById(parentSavingId);

Review Comment:
   Same as above.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to