Refactor HandlerFunc to accept a params struct containing all values & functions instead of an instance of EchoVault interface #32
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This change refactors the
HandlerFunc
implementation to accept aHandlerFuncParams
struct containing all the objects and functions invoked within the handler.This removes the dependence on the echovault package within the modules' packages and has allowed the entire modules folder to be moved from
/pkg
to/internal
. We no longer have to deal with unnecessary exports of anything in the modules folder.This new parameter structure is also a prelude to incorporating .so plugin extensions and command extensions via the embedded API.
The exported EchoVault instance now only contains keyspace methods. All other methods are private and are passed to the commands handlers via the
params
struct.