kubelatte-ce
Форк от sbertech/kubelatte-ce
35 строк · 1.1 Кб
1package modules
2
3import (
4"gitverse.ru/synapse/kubelatte/pkg/mutation"
5"gitverse.ru/synapse/kubelatte/pkg/sideeffect/grpc"
6"gitverse.ru/synapse/kubelatte/pkg/sideeffect/sideeffect"
7"gitverse.ru/synapse/kubelatte/pkg/util/match"
8"gitverse.ru/synapse/kubelatte/pkg/validation"
9"gitverse.ru/synapse/kubelatte/pkg/webhook/router"
10)
11
12func GetActors() ActorsInjector {
13var router router.RouterI = router.NewRouter()
14
15var matcher match.MatcherI = match.NewMatcher()
16var grpcProvider sideeffect.ProviderI = grpc.NewProvider()
17var mutRenderer mutation.MutRendererI = mutation.NewMutRenderer(matcher, nil)
18var mutator mutation.MutatorI = mutation.NewMutator(mutRenderer)
19var validator validation.ValidatorI = validation.NewValidator(matcher, nil)
20var seLauncher sideeffect.LauncherI = sideeffect.NewLauncher(grpcProvider, matcher, nil)
21
22return ActorsInjector{
23RouterI: router,
24MutatorI: mutator,
25LauncherI: seLauncher,
26ValidatorI: validator,
27}
28}
29
30type ActorsInjector struct {
31mutation.MutatorI
32sideeffect.LauncherI
33validation.ValidatorI
34router.RouterI
35}
36