You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@fineract.apache.org by "Aleksandar Vidakovic (Jira)" <ji...@apache.org> on 2026/05/18 13:52:00 UTC

[jira] [Created] (FINERACT-2612) New command processing - tax (org.apache.fineract.portfolio.tax)

Aleksandar Vidakovic created FINERACT-2612:
----------------------------------------------

             Summary: New command processing - tax (org.apache.fineract.portfolio.tax)
                 Key: FINERACT-2612
                 URL: https://issues.apache.org/jira/browse/FINERACT-2612
             Project: Apache Fineract
          Issue Type: Sub-task
            Reporter: Aleksandar Vidakovic
            Assignee: Aleksandar Vidakovic


(i) Edit only in text mode!

1. General

(/) Remove all obsolete Swagger annotations (aka "dummy" classes)
(/) Refactor input and return types of business logic services if needed (no more references to JSON in the business logic)
(/) Existing integration tests need to work as is without any changes
(/) Input types are named with suffix "Request" (e.g. "org.apache.fineract.infrastructure.businessdate.data.BusinessDateRequest")
(/) Return types are named with suffix "Response" (e.g. "org.apache.fineract.infrastructure.businessdate.data.BusinessDateResponse")
(/) If you need to transform POJO types then use MapStruct where ever possible
(/) Respect standard package structure

2. Read Requests

(/) All "@GET" annotated functions in all JAX-RS resource classes are returning proper Java types (aka "POJOs")
(/) Return types are defined in the module's/package's DTO package (e.g. "org.apache.fineract.infrastructure.businessdate.data")

3. Write Requests

(/) All "@PUT" and "@POST" annotated functions in all JAX-RS resource classes are returning proper Java types (aka "POJOs")
(/) Input types are defined in the module's/package's DTO package (e.g. "org.apache.fineract.infrastructure.businessdate.data")
(/) Inject new "org.apache.fineract.command.core.CommandPipeline" component and refactor legacy command structures to new concept
(/) Create command specific child implementation of "org.apache.fineract.command.core.Command"
(/) Use Jakarta Validation instead of proprietary validation service
(/) Create message resource bundles for the validation error messages

4. List refactored JAX-RS resource classes (canonical names) below

- TBD

5. Command Handlers

(/) Refactor legacy command handlers to new concept

6. Run Integration Tests

(!) All related integration tests pass



--
This message was sent by Atlassian Jira
(v8.20.10#820010)