@@ -55,6 +55,7 @@ import (
5555 "github.com/asgardeo/thunder/internal/ou"
5656 "github.com/asgardeo/thunder/internal/resource"
5757 "github.com/asgardeo/thunder/internal/role"
58+ "github.com/asgardeo/thunder/internal/system/cache"
5859 "github.com/asgardeo/thunder/internal/system/crypto/hash"
5960 "github.com/asgardeo/thunder/internal/system/crypto/pki"
6061 declarativeresource "github.com/asgardeo/thunder/internal/system/declarative_resource"
@@ -79,6 +80,7 @@ var observabilitySvc observability.ObservabilityServiceInterface
7980// registerServices registers all the services with the provided HTTP multiplexer.
8081func registerServices (mux * http.ServeMux ) jwt.JWTServiceInterface {
8182 logger := log .GetLogger ()
83+ cacheManager := cache .GetCacheManager ()
8284
8385 // Load the server's private key for signing JWTs.
8486 pkiService , err := pki .Initialize ()
@@ -130,14 +132,14 @@ func registerServices(mux *http.ServeMux) jwt.JWTServiceInterface {
130132
131133 // Initialize user schema service
132134 userSchemaService , userSchemaExporter , err := userschema .Initialize (
133- mux , ouService , ouAuthzService , consentService )
135+ mux , cacheManager , ouService , ouAuthzService , consentService )
134136 if err != nil {
135137 logger .Fatal ("Failed to initialize UserSchemaService" , log .Error (err ))
136138 }
137139 exporters = append (exporters , userSchemaExporter )
138140
139141 // Initialize entity service
140- entityService , err := entity .Initialize (hashService , userSchemaService , ouService )
142+ entityService , err := entity .Initialize (cacheManager , hashService , userSchemaService , ouService )
141143 if err != nil {
142144 logger .Fatal ("Failed to initialize EntityService" , log .Error (err ))
143145 }
@@ -232,7 +234,7 @@ func registerServices(mux *http.ServeMux) jwt.JWTServiceInterface {
232234 attributeCacheService := attributecache .Initialize ()
233235
234236 // Initialize flow and executor services.
235- flowFactory , graphCache := flowcore .Initialize ()
237+ flowFactory , graphCache := flowcore .Initialize (cacheManager )
236238 var emailClient email.EmailClientInterface
237239 emailClient , err = email .Initialize ()
238240 if err != nil {
@@ -245,12 +247,13 @@ func registerServices(mux *http.ServeMux) jwt.JWTServiceInterface {
245247 observabilitySvc , groupService , roleService , entityProvider , attributeCacheService , emailClient ,
246248 templateService , oauthAuthnService , oidcAuthnService , githubAuthnService , googleAuthnService )
247249
248- flowMgtService , flowMgtExporter , err := flowmgt .Initialize (mux , mcpServer , flowFactory , execRegistry , graphCache )
250+ flowMgtService , flowMgtExporter , err := flowmgt .Initialize (
251+ mux , mcpServer , cacheManager , flowFactory , execRegistry , graphCache )
249252 if err != nil {
250253 logger .Fatal ("Failed to initialize FlowMgtService" , log .Error (err ))
251254 }
252255 exporters = append (exporters , flowMgtExporter )
253- certservice , err := cert .Initialize ()
256+ certservice , err := cert .Initialize (cacheManager )
254257 if err != nil {
255258 logger .Fatal ("Failed to initialize CertificateService" , log .Error (err ))
256259 }
@@ -270,8 +273,8 @@ func registerServices(mux *http.ServeMux) jwt.JWTServiceInterface {
270273
271274 // TODO: Remove entityService dependency after finalizing declarative resource loading pattern
272275 applicationService , applicationExporter , err := application .Initialize (
273- mux , mcpServer , entityProvider , entityService , ouService , certservice , flowMgtService , themeMgtService ,
274- layoutMgtService , userSchemaService , consentService )
276+ mux , mcpServer , cacheManager , entityProvider , entityService , ouService , certservice ,
277+ flowMgtService , themeMgtService , layoutMgtService , userSchemaService , consentService )
275278 if err != nil {
276279 logger .Fatal ("Failed to initialize ApplicationService" , log .Error (err ))
277280 }
0 commit comments