Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Standardize connector methods #3381

Open
RafaelAPB opened this issue Jul 4, 2024 · 0 comments
Open

Standardize connector methods #3381

RafaelAPB opened this issue Jul 4, 2024 · 0 comments
Labels
enhancement New feature or request

Comments

@RafaelAPB
Copy link
Contributor

Is your feature request related to a problem? Please describe.
Recetly, our intern Jennifer compiled a list of functionalities per connector: https://docs.google.com/spreadsheets/d/1ejfKHyTigb2P8P-m6gcrfn4ATvmTqPUvAz5h3tuei5A/edit?gid=1150274284#gid=1150274284

If you look closely, we have 54 methods across our current connector offering, with some methods in common (e.g., run-transaction), but some specific to only one connector (eg peers). This lack of standardization poses challenges to the benefits of Cacti, which is to offer a standardized approach to interact with different ledgers. From the perspective of the end-user, this complexity can be hidden by a facade/orchestration mechanism that the API server does, but from the developer perspective, the learning curve is steeper than it needs to be.

Describe the solution you'd like
We can encapsulate connector functionality within 5-10 methods, as defined in the plugin connector interface. Perhaps rename some of them for clarity. For connector-specific methods, those could be defined in a separate file (additional-methods.ts for instance) and imported on the main connector file. This would make comparisons between connectors systematic and would soften the learning curve for newcomers.

Describe alternatives you've considered
Leave it as it is, but with added functionality and added connectors, over time, the complexity will increase.

Additional context
This was an issue raised back in 2021, but only partially addressed (at the whitepaper, but not code level): #974

@RafaelAPB RafaelAPB added the enhancement New feature or request label Jul 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant