Hi everyone, ... my 2 cents:
3. https://github.com/openMF/fineract-client was an earlier effort (don't remember which community member created it); the Swagger descriptor was there already for a couple of years (got added to Fineract as a GSoC project), but we (actually Michael) just recently added a separate module to the Fineract repo to do this in one build; all in all I'd say they should be pretty much the same... maybe the one in https://github.com/openMF/fineract/tree/develop/fineract-client could be a little fresher given that it's automatically updated when the Swagger file is updated. 4. Automatic or not... kind of both: the challenge with the current REST resource classes in Fineract is that pretty much all of them are not type safe; there's a lot of manual JSON de-/serialization done; in most cases the HTTP body lands in a String variable first, and as there's no way for the Swagger annotation processor to detect what's going on in those String blobs we had to handcraft some mock classes that are only there to give context/type info to the Swagger annotation processor. This was done that way to maintain 100% backward Java source compatibility. It should cover most of Fineract's API, but there are for sure parts that are a bit out of sync. Note: there's been a discussion to introduce type safety in the REST resource classes, using Jackson instead of GSON, get rid of those mock Java type classes and most (if not all) of the handcrafted JSON de-/serialization... there'll soon be a first PR to try this out with a small self-contained module (maybe client API or something similar). 5. See my previous point; the Java code generation is fully automatic in the Fineract repo, but the mock type classes that are used to generate the Swagger file are handcrafted... if something is missing then it was already missing in the Swagger file (aka the mock classes). 6. I know that the Fineract client (the one from the Fineract repo) was used in commercial projects; I have no numbers about volume and performance though. Cheers, Aleks On Thu, Jan 13, 2022 at 7:03 PM Ed Cable <edca...@mifos.org> wrote: > Chinmay and Danish, > > There is some interest and inquiry coming from users in the > community regarding the Fineract Client. > > I was hoping you all along with some of the past contributors to this > project like @Aleksandar Vidakovic <chee...@monkeysintown.com> and @Michael > Vorburger <michael.vorbur...@gmail.com> could help me with some of the > below questions: > > 3. What is the difference between these 2 clients: > https://github.com/openMF/fineract/tree/develop/fineract-client > https://github.com/openMF/fineract-client > > Are either of these client’s considered production ready? > > 4. Is > https://github.com/openMF/fineract-client/blob/master/swagger-api-spec-file.json > hand > coded or generated? > > 5. We have noticed that both fineract-clients only have fullname field > supported when creating a Fineract Client (the database entity). This has > led to the conclusion that neither are based off the Fineract-provider > JAX-RS but are probably hand coded. We are wondering which one is best > supported now and into the future, or if we should hand code our own client. > > 6. Have either client been used in high volume use cases? > >