bitbucket.org/Aishee/synsec@v0.0.0-20210414005726-236fc01a153d/pkg/apiserver/controllers/v1/controller.go (about) 1 package v1 2 3 import ( 4 "context" 5 6 middlewares "bitbucket.org/Aishee/synsec/pkg/apiserver/middlewares/v1" 7 "bitbucket.org/Aishee/synsec/pkg/csconfig" 8 "bitbucket.org/Aishee/synsec/pkg/database" 9 "bitbucket.org/Aishee/synsec/pkg/models" 10 ) 11 12 type Controller struct { 13 Ectx context.Context 14 DBClient *database.Client 15 APIKeyHeader string 16 Middlewares *middlewares.Middlewares 17 Profiles []*csconfig.ProfileCfg 18 CAPIChan chan []*models.Alert 19 } 20 21 func New(dbClient *database.Client, ctx context.Context, profiles []*csconfig.ProfileCfg) (*Controller, error) { 22 var err error 23 v1 := &Controller{ 24 Ectx: ctx, 25 DBClient: dbClient, 26 APIKeyHeader: middlewares.APIKeyHeader, 27 Profiles: profiles, 28 } 29 v1.Middlewares, err = middlewares.NewMiddlewares(dbClient) 30 if err != nil { 31 return v1, err 32 } 33 34 return v1, nil 35 }