This is an automated email from the ASF dual-hosted git repository.
Aman-Mittal pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/fineract-loan-origination.git
from 5eb0dba Merge pull request #42 from
KRYSTALM7/feature/FINERACT-2442-security-threat-model
add 1a84145 WIP: Backup before splitting work into reviewable PRs
add d42acf9 WIP: Backup before splitting work into reviewable PRs
add 87b5a01 FINERACT-2442: Fix Apache license headers
add baf3a64 FINERACT-2442: Add Loan Origination REST API endpoints
add bc4ffdf FINERACT-2442: Add Loan Origination REST API endpoints
add 6b13c8b FINERACT-2442: Fix CSRF security config — stateless REST API
with documented rationale
add e8648b6 FINERACT-2442: Replace csrf.disable() with
ignoringRequestMatchers for stateless API
new e773afe Merge pull request #38 from
KRYSTALM7/feature/FINERACT-2442-rest-api-v2
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.gitignore | 4 +
.../fineract/los/api/ApprovalController.java | 70 +++++++
.../fineract/los/api/DisbursementController.java | 58 ++++++
.../los/api/LoanApplicationController.java | 134 ++++++++++++
.../los/api/dto/response/CreditScoreResponse.java | 54 +++++
.../api/dto/response/LoanApplicationResponse.java | 64 ++++++
.../los/bridge/DisbursementBridgeService.java | 179 ++++++++++++++++
.../los/bridge/FineractClientProperties.java | 84 ++++++++
.../los/bridge/FineractIntegrationPort.java | 54 +++++
.../fineract/los/bridge/FineractLoanApiClient.java | 50 +++++
.../fineract/los/bridge/MockFineractAdapter.java | 61 ++++++
.../los/bridge/MockFineractLoanApiClient.java | 75 +++++++
.../fineract/los/bridge/RealFineractAdapter.java | 104 ++++++++++
.../los/bridge/RestFineractLoanApiClient.java | 87 ++++++++
.../los/bridge/dto/FineractLoanCreateRequest.java | 84 ++++++++
.../los/bridge/dto/FineractLoanCreateResponse.java | 53 +++++
.../los/bridge/dto/FineractLoanRequest.java | 75 +++++++
.../dto/FineractLoanResponse.java} | 32 +--
.../fineract/los/config/CorrelationIdFilter.java | 59 ++++++
...coringConfig.java => FineractClientConfig.java} | 17 +-
.../apache/fineract/los/config/SecurityConfig.java | 66 ++++++
.../{ScoringConfig.java => WorkflowConfig.java} | 15 +-
.../fineract/los/domain/ApplicantProfile.java | 9 +
.../fineract/los/domain/LoanApplication.java | 16 ++
.../los/dto/request/ApprovalDecisionRequest.java | 55 +++++
.../dto/request/CreateLoanApplicationRequest.java | 78 +++++++
.../ApplicantProfileNotFoundException.java} | 17 +-
.../ApplicationNotFoundException.java} | 18 +-
.../DisbursementNotAllowedException.java} | 18 +-
.../DuplicateApprovalException.java} | 26 +--
.../ErrorResponse.java} | 30 +--
.../FineractIntegrationException.java} | 30 ++-
.../los/exception/GlobalExceptionHandler.java | 96 +++++++++
.../fineract/los/exception/LosErrorConstants.java | 75 +++++++
.../los/repository/LoanApplicationRepository.java | 15 +-
.../los/scoring/CreditScoringStrategy.java | 44 ++++
.../los/scoring/DefaultCreditScoringStrategy.java | 96 +++++++++
.../los/service/ApprovalWorkflowService.java | 187 +++++++++++++++++
.../fineract/los/service/CreditScoringService.java | 166 +++++++++++++++
.../los/service/LoanApplicationService.java | 229 +++++++++++++++++++++
.../los/workflow/ApprovalWorkflowProperties.java | 78 +++++++
src/main/resources/application.yml | 74 +++++--
...ql => V6__add_fineract_integration_columns.sql} | 19 +-
.../los/bridge/DisbursementBridgeServiceTest.java | 139 +++++++++++++
.../scoring/DefaultCreditScoringStrategyTest.java | 132 ++++++++++++
.../los/service/ApprovalWorkflowServiceTest.java | 229 +++++++++++++++++++++
.../los/service/CreditScoringServiceTest.java | 148 +++++++++++++
47 files changed, 3361 insertions(+), 142 deletions(-)
create mode 100644
src/main/java/org/apache/fineract/los/api/ApprovalController.java
create mode 100644
src/main/java/org/apache/fineract/los/api/DisbursementController.java
create mode 100644
src/main/java/org/apache/fineract/los/api/LoanApplicationController.java
create mode 100644
src/main/java/org/apache/fineract/los/api/dto/response/CreditScoreResponse.java
create mode 100644
src/main/java/org/apache/fineract/los/api/dto/response/LoanApplicationResponse.java
create mode 100644
src/main/java/org/apache/fineract/los/bridge/DisbursementBridgeService.java
create mode 100644
src/main/java/org/apache/fineract/los/bridge/FineractClientProperties.java
create mode 100644
src/main/java/org/apache/fineract/los/bridge/FineractIntegrationPort.java
create mode 100644
src/main/java/org/apache/fineract/los/bridge/FineractLoanApiClient.java
create mode 100644
src/main/java/org/apache/fineract/los/bridge/MockFineractAdapter.java
create mode 100644
src/main/java/org/apache/fineract/los/bridge/MockFineractLoanApiClient.java
create mode 100644
src/main/java/org/apache/fineract/los/bridge/RealFineractAdapter.java
create mode 100644
src/main/java/org/apache/fineract/los/bridge/RestFineractLoanApiClient.java
create mode 100644
src/main/java/org/apache/fineract/los/bridge/dto/FineractLoanCreateRequest.java
create mode 100644
src/main/java/org/apache/fineract/los/bridge/dto/FineractLoanCreateResponse.java
create mode 100644
src/main/java/org/apache/fineract/los/bridge/dto/FineractLoanRequest.java
copy src/main/java/org/apache/fineract/los/{domain/enums/EmploymentStatus.java
=> bridge/dto/FineractLoanResponse.java} (56%)
create mode 100644
src/main/java/org/apache/fineract/los/config/CorrelationIdFilter.java
copy src/main/java/org/apache/fineract/los/config/{ScoringConfig.java =>
FineractClientConfig.java} (64%)
create mode 100644
src/main/java/org/apache/fineract/los/config/SecurityConfig.java
copy src/main/java/org/apache/fineract/los/config/{ScoringConfig.java =>
WorkflowConfig.java} (64%)
create mode 100644
src/main/java/org/apache/fineract/los/dto/request/ApprovalDecisionRequest.java
create mode 100644
src/main/java/org/apache/fineract/los/dto/request/CreateLoanApplicationRequest.java
copy src/main/java/org/apache/fineract/los/{LoanOriginationApplication.java =>
exception/ApplicantProfileNotFoundException.java} (61%)
copy src/main/java/org/apache/fineract/los/{LoanOriginationApplication.java =>
exception/ApplicationNotFoundException.java} (61%)
copy src/main/java/org/apache/fineract/los/{LoanOriginationApplication.java =>
exception/DisbursementNotAllowedException.java} (61%)
copy src/main/java/org/apache/fineract/los/{domain/enums/EmploymentStatus.java
=> exception/DuplicateApprovalException.java} (57%)
copy src/main/java/org/apache/fineract/los/{domain/enums/EmploymentStatus.java
=> exception/ErrorResponse.java} (57%)
copy src/main/java/org/apache/fineract/los/{domain/enums/EmploymentStatus.java
=> exception/FineractIntegrationException.java} (52%)
create mode 100644
src/main/java/org/apache/fineract/los/exception/GlobalExceptionHandler.java
create mode 100644
src/main/java/org/apache/fineract/los/scoring/CreditScoringStrategy.java
create mode 100644
src/main/java/org/apache/fineract/los/scoring/DefaultCreditScoringStrategy.java
create mode 100644
src/main/java/org/apache/fineract/los/service/ApprovalWorkflowService.java
create mode 100644
src/main/java/org/apache/fineract/los/service/CreditScoringService.java
create mode 100644
src/main/java/org/apache/fineract/los/service/LoanApplicationService.java
create mode 100644
src/main/java/org/apache/fineract/los/workflow/ApprovalWorkflowProperties.java
copy src/main/resources/db/migration/{V3__create_required_document.sql =>
V6__add_fineract_integration_columns.sql} (64%)
create mode 100644
src/test/java/org/apache/fineract/los/bridge/DisbursementBridgeServiceTest.java
create mode 100644
src/test/java/org/apache/fineract/los/scoring/DefaultCreditScoringStrategyTest.java
create mode 100644
src/test/java/org/apache/fineract/los/service/ApprovalWorkflowServiceTest.java
create mode 100644
src/test/java/org/apache/fineract/los/service/CreditScoringServiceTest.java