feat: add CoreServiceBindings interface to ServiceDeps
This commit is contained in:
parent
d270bc8582
commit
a174eb943d
13
plugin/community.go
Normal file
13
plugin/community.go
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
package plugin
|
||||||
|
|
||||||
|
import (
|
||||||
|
"git.dev.alexdunmow.com/block/core/rbac"
|
||||||
|
)
|
||||||
|
|
||||||
|
// CoreServiceBindings provides pre-built CMS service bindings that plugins
|
||||||
|
// can include in their ServiceRegistration with custom RBAC role mappings.
|
||||||
|
// The CMS constructs the actual service handlers — plugins just specify which
|
||||||
|
// services to mount and what roles apply.
|
||||||
|
type CoreServiceBindings interface {
|
||||||
|
Bind(serviceName string, methodRoles map[string]rbac.Role) (ConnectServiceBinding, error)
|
||||||
|
}
|
||||||
@ -46,6 +46,9 @@ type ServiceDeps struct {
|
|||||||
// Plugin interop
|
// Plugin interop
|
||||||
Bridge PluginBridge
|
Bridge PluginBridge
|
||||||
|
|
||||||
|
// Core RPC services — pre-built bindings for CMS-provided services
|
||||||
|
CoreServiceBindings CoreServiceBindings
|
||||||
|
|
||||||
// Extension points — typed as narrow interfaces where possible
|
// Extension points — typed as narrow interfaces where possible
|
||||||
JobRunner JobRunner
|
JobRunner JobRunner
|
||||||
EmbeddingService EmbeddingService
|
EmbeddingService EmbeddingService
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user