kubelatte-ce

Форк
2
Форк от sbertech/kubelatte-ce
/
injector.go 
35 строк · 1.1 Кб
1
package modules
2

3
import (
4
	"gitverse.ru/ktrntrsv/kubelatte-ce/pkg/mutation"
5
	"gitverse.ru/ktrntrsv/kubelatte-ce/pkg/sideeffect/grpc"
6
	"gitverse.ru/ktrntrsv/kubelatte-ce/pkg/sideeffect/sideeffect"
7
	"gitverse.ru/ktrntrsv/kubelatte-ce/pkg/util/match"
8
	"gitverse.ru/ktrntrsv/kubelatte-ce/pkg/validation"
9
	"gitverse.ru/ktrntrsv/kubelatte-ce/pkg/webhook/router"
10
)
11

12
func GetActors() ActorsInjector {
13
	var rout router.RouterI = router.NewRouter()
14

15
	var matcher match.MatcherI = match.NewMatcher()
16
	var grpcProvider sideeffect.ProviderI = grpc.NewProvider()
17
	var mutRenderer mutation.MutRendererI = mutation.NewMutRenderer(matcher, nil)
18
	var mutator mutation.MutatorI = mutation.NewMutator(mutRenderer)
19
	var validator validation.ValidatorI = validation.NewValidator(matcher, nil)
20
	var seLauncher sideeffect.LauncherI = sideeffect.NewLauncher(grpcProvider, matcher, nil)
21

22
	return ActorsInjector{
23
		RouterI:    rout,
24
		MutatorI:   mutator,
25
		LauncherI:  seLauncher,
26
		ValidatorI: validator,
27
	}
28
}
29

30
type ActorsInjector struct {
31
	mutation.MutatorI
32
	sideeffect.LauncherI
33
	validation.ValidatorI
34
	router.RouterI
35
}
36

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.