(c *gin.Context, dbID proto.DatabaseID, db *gorp.DbMap)
| 1379 | } |
| 1380 | |
| 1381 | func loadRules(c *gin.Context, dbID proto.DatabaseID, db *gorp.DbMap) (r *resolver.Rules, err error) { |
| 1382 | rm := getRulesManager(c) |
| 1383 | |
| 1384 | r = rm.Get(dbID) |
| 1385 | if r == nil { |
| 1386 | var ctx *projectRulesContext |
| 1387 | ctx, err = getRulesContext(dbID, db) |
| 1388 | if err != nil { |
| 1389 | err = errors.Wrapf(err, "get rules failed") |
| 1390 | return |
| 1391 | } |
| 1392 | |
| 1393 | r, err = populateRulesContext(c, ctx) |
| 1394 | if err != nil { |
| 1395 | err = errors.Wrapf(err, "populate rules failed") |
| 1396 | return |
| 1397 | } |
| 1398 | |
| 1399 | rm.Set(dbID, r) |
| 1400 | } |
| 1401 | |
| 1402 | return |
| 1403 | } |
| 1404 | |
| 1405 | func getRulesManager(c *gin.Context) (r *resolver.RulesManager) { |
| 1406 | return c.MustGet("rules").(*resolver.RulesManager) |
no test coverage detected