Skip to content

FINERACT-2244: migrate Floating Rates to CommandDispatcher#6038

Draft
aditinikam wants to merge 1 commit into
apache:developfrom
aditinikam:FINERACT-2244-v2
Draft

FINERACT-2244: migrate Floating Rates to CommandDispatcher#6038
aditinikam wants to merge 1 commit into
apache:developfrom
aditinikam:FINERACT-2244-v2

Conversation

@aditinikam

Copy link
Copy Markdown

Migrate the Floating Rate module write path off the legacy CommandWrapperBuilder -> logCommandSource -> @CommandType (JsonCommand) pipeline onto the typed CommandDispatcher (CQRS) infrastructure, fully JsonCommand-free.

  • API resource injects CommandDispatcher and dispatches typed FloatingRate{Create,Update}Command, returning typed responses.
  • New typed FloatingRateWriteService + command handlers; FloatingRate domain createNew/update and FloatingRateDataValidator retyped to operate on the request DTOs (locale-aware date parsing via DateTimeFormatter).
  • SecurityConfig gains POST/PUT /floatingrates matchers (CREATE/UPDATE) since the logCommandSource permission check is gone; read endpoints and FloatingRatesReadPlatformService are left untouched.
  • Removed legacy FloatingRateWritePlatformService, @CommandType handlers, and the CommandWrapperBuilder floating-rate methods.
  • fineract-rates now depends on :fineract-command.

Description

Describe the changes made and why they were made. (Ignore if these details are present on the associated Apache Fineract JIRA ticket.)

Checklist

Please make sure these boxes are checked before submitting your pull request - thanks!

  • Write the commit message as per our guidelines
  • Acknowledge that we will not review PRs that are not passing the build ("green") - it is your responsibility to get a proposed PR to pass the build, not primarily the project's maintainers.
  • Create/update unit or integration tests for verifying the changes made.
  • Follow our coding conventions.
  • Add required Swagger annotation and update API documentation at fineract-provider/src/main/resources/static/legacy-docs/apiLive.htm with details of any API changes
  • This PR must not be a "code dump". Large changes can be made in a branch, with assistance. Ask for help on the developer mailing list.

Your assigned reviewer(s) will follow our guidelines for code reviews.

Migrate the Floating Rate module write path off the legacy
CommandWrapperBuilder -> logCommandSource -> @CommandType (JsonCommand)
pipeline onto the typed CommandDispatcher (CQRS) infrastructure, fully
JsonCommand-free.

- API resource injects CommandDispatcher and dispatches typed
  FloatingRate{Create,Update}Command, returning typed responses.
- New typed FloatingRateWriteService + command handlers; FloatingRate
  domain createNew/update and FloatingRateDataValidator retyped to operate
  on the request DTOs (locale-aware date parsing via DateTimeFormatter).
- SecurityConfig gains POST/PUT /floatingrates matchers (CREATE/UPDATE)
  since the logCommandSource permission check is gone; read endpoints and
  FloatingRatesReadPlatformService are left untouched.
- Removed legacy FloatingRateWritePlatformService, @CommandType handlers,
  and the CommandWrapperBuilder floating-rate methods.
- fineract-rates now depends on :fineract-command.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants