Files
contracts/condflow.go
T
2026-05-15 09:04:12 +08:00

33 lines
604 B
Go

package contracts
import (
"git.fsdpf.net/go/reflux"
"git.fsdpf.net/go/req"
"github.com/samber/do/v2"
)
type CondflowService interface {
Run(name string, input reflux.R, u req.User) error
}
type FlowDecision interface {
Controller
Res() req.Resource
}
type BaseFlowDecision struct {
Controller
res string
}
func (be BaseFlowDecision) Res() req.Resource {
return do.MustInvoke[MustResource](be.Container())(be.res)
}
func NewBaseFlowDecision(container do.Injector, res string) *BaseFlowDecision {
return &BaseFlowDecision{
Controller: &BaseController{container},
res: res,
}
}