FINERACT-1783: Customizeable LoanRepaymentScheduleTransactionProcessor

This commit is contained in:
Aleksandar Vidakovic
2022-11-01 14:08:02 +01:00
committed by Aleksandar Vidakovic
parent f2756b25bb
commit fc895fce05
99 changed files with 2015 additions and 2547 deletions
+2 -2
View File
@@ -18,8 +18,8 @@
*/
description = 'ACME Corp.: Fineract COB Starter'
group = 'com.acme.fineract.cob'
group = 'com.acme.fineract'
archivesBaseName = 'acme-fineract-cob-starter'
archivesBaseName = 'acme-fineract-loan-starter'
apply from: 'dependencies.gradle'
@@ -18,7 +18,9 @@
*/
dependencies {
implementation(project(':fineract-provider'))
implementation(project(':custom:acme:loan:cob'))
implementation(project(':custom:acme:loan:processor'))
implementation('org.springframework.boot:spring-boot-starter')
testImplementation(project(':fineract-provider'))
testImplementation('org.springframework.boot:spring-boot-starter-jdbc')
@@ -18,11 +18,25 @@
*/
package com.acme.fineract.loan.starter;
import com.acme.fineract.loan.processor.AcmeLoanRepaymentScheduleTransactionProcessor;
import java.util.List;
import org.apache.fineract.portfolio.loanaccount.domain.LoanRepaymentScheduleTransactionProcessorFactory;
import org.apache.fineract.portfolio.loanaccount.domain.transactionprocessor.LoanRepaymentScheduleTransactionProcessor;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.ComponentScans;
@AutoConfiguration
@ComponentScan("com.acme.fineract.loan.cob")
@ComponentScans({ @ComponentScan("com.acme.fineract.loan.cob"), @ComponentScan("com.acme.fineract.loan.processor") })
@ConditionalOnProperty("acme.loan.enabled")
public class AcmeLoanAutoConfiguration {}
public class AcmeLoanAutoConfiguration {
@Bean
public LoanRepaymentScheduleTransactionProcessorFactory loanRepaymentScheduleTransactionProcessorFactory(
AcmeLoanRepaymentScheduleTransactionProcessor defaultLoanRepaymentScheduleTransactionProcessor,
List<LoanRepaymentScheduleTransactionProcessor> processors) {
return new LoanRepaymentScheduleTransactionProcessorFactory(defaultLoanRepaymentScheduleTransactionProcessor, processors);
}
}