You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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.
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): https://github.com/hyperledger/cacti/issues/974
The text was updated successfully, but these errors were encountered: