Hi Zeyad,

I feel like your PR and approach is much more than just "introducing
type-safe API layers". It's refactoring some things to separate modules,
it's introducing Spring MVC into the mix, and lastly it's making the Note
API type-safe.

I've already done the first trial on making an API type-safe while
maintaining the existing tech stack. Please look at
ClientSearchV2ApiResource
<https://github.com/apache/fineract/blob/f5add87f2ab040787da1738ff8404163ab4dc8d7/fineract-provider/src/main/java/org/apache/fineract/portfolio/client/api/v2/search/ClientSearchV2ApiResource.java#L40>
.

I'd say let's continue with that approach and keep making Fineract better
step-by-step. Many technologies are mixed together as of today, even for
the same problem-space. Let's not introduce one more tech debt.

Best,
Arnold

On Thu, Jul 4, 2024 at 10:46 AM Zeyad Nasef <zeyad.nasef....@gmail.com>
wrote:

> Also, I'd like to hear your thoughts about refactoring the write requests
> ... aka *Commands*.
> How could we introduce type-safety while we are going through the whole
> layers with `JsonCommand` and `CommandWrapper`?
>
> On Thu, Jul 4, 2024 at 11:09 AM Zeyad Nasef <zeyad.nasef....@gmail.com>
> wrote:
>
>> Hello everyone, I hope you are doing great.
>>
>> I've created a proposal for a project related to migrating our current
>> JAX-RS REST resource classes to Spring's Web MVC framework and utilizing
>> Jackson for JSON parsing. This will help us eliminate manual JSON parsing
>> and improve code quality and maintainability.
>>
>> Also, I have created an initial PR for introducing the refactoring to the
>> `note` API (GET requests only).
>>
>> For more details, please refer to the mentioned document and the Jira
>> ticket.
>>
>>
>> *Links:*
>> - Initial pull request <https://github.com/apache/fineract/pull/3915>
>>
>> - Proposal Doc
>> <https://docs.google.com/document/d/17o59Ns9d8KlQ9Tl6Ceam5mtfDQzqNRKkHgGjZh0waYM/edit?usp=sharing>
>>
>> - Jira Ticket <https://issues.apache.org/jira/browse/FINERACT-2021>
>>
>>
>> *Please review the initial pull request as soon as possible. It has been
>> open for a month, and your feedback is crucial.*
>> Thank you for your support.
>>
>> Best regards,
>> Zeyad
>>
>

Reply via email to