mirror of
https://github.com/onsonr/sonr.git
synced 2025-03-10 13:07:09 +00:00
* feat: add docs and CI workflow for publishing to onsonr.dev * (refactor): Move hway,motr executables to their own repos * feat: simplify devnet and testnet configurations * refactor: update import path for didcrypto package * docs(networks): Add README with project overview, architecture, and community links * refactor: Move network configurations to deploy directory * build: update golang version to 1.23 * refactor: move logger interface to appropriate package * refactor: Move devnet configuration to networks/devnet * chore: improve release process with date variable * (chore): Move Crypto Library * refactor: improve code structure and readability in DID module * feat: integrate Trunk CI checks * ci: optimize CI workflow by removing redundant build jobs --------- Co-authored-by: Darp Alakun <i@prad.nu>
17 lines
562 B
Go
17 lines
562 B
Go
package router
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/onsonr/sonr/internal/transaction"
|
|
)
|
|
|
|
// Service is the interface that wraps the basic methods for a router.
|
|
// A router can be a query router or a message router.
|
|
type Service interface {
|
|
// CanInvoke returns an error if the given request cannot be invoked.
|
|
CanInvoke(ctx context.Context, typeURL string) error
|
|
// Invoke execute a message or query. The response should be type casted by the caller to the expected response.
|
|
Invoke(ctx context.Context, req transaction.Msg) (res transaction.Msg, err error)
|
|
}
|