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

Command - there are typed interfaces to implement commands #6310

Open
etorreborre opened this issue Oct 5, 2023 · 0 comments
Open

Command - there are typed interfaces to implement commands #6310

etorreborre opened this issue Oct 5, 2023 · 0 comments
Assignees

Comments

@etorreborre
Copy link
Member

etorreborre commented Oct 5, 2023

Following the refactoring of RPC calls, we can now implement all commands using typed interfaces and implemented with a specific RPC client.

For example the Projects trait provides an access to projects, to create/list/delete them. That trait is implemented by the Controller client by making requests to the controller.

The use of the Projects interface can be seen in the following command to create projects.

The purpose of this epic is to provide similar interfaces for all other commands and remove all the "api helpers" from the ockam_command crate:

  • inlets
  • outlets
  • secure channel
  • secure channel listener
  • services
  • nodes
  • workers
  • tcp connections
  • relays
  • policies
  • kafka services

All the interfaces and implementations must be part of the ockam_api crate so that the purpose of the ockam_command is only to:

  • get and validate arguments from the command line
  • call the ockam_api crate
  • display progress / reports / outputs / errors

Related issues:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant