MCPcopy
hub / github.com/apache/casbin / applyModifiedModel

Method applyModifiedModel

enforcer.go:407–433  ·  view source on GitHub ↗
(newModel model.Model)

Source from the content-addressed store, hash-verified

405}
406
407func (e *Enforcer) applyModifiedModel(newModel model.Model) error {
408 var err error
409 needToRebuild := false
410 defer func() {
411 if err != nil {
412 if e.autoBuildRoleLinks && needToRebuild {
413 _ = e.BuildRoleLinks()
414 }
415 }
416 }()
417
418 if e.autoBuildRoleLinks {
419 needToRebuild = true
420
421 if err := e.rebuildRoleLinks(newModel); err != nil {
422 return err
423 }
424
425 if err := e.rebuildConditionalRoleLinks(newModel); err != nil {
426 return err
427 }
428 }
429
430 e.model = newModel
431 e.invalidateMatcherMap()
432 return nil
433}
434
435func (e *Enforcer) rebuildRoleLinks(newModel model.Model) error {
436 if len(e.rmMap) != 0 {

Callers 3

LoadPolicyMethod · 0.95
LoadPolicyMethod · 0.80
LoadPolicyCtxMethod · 0.80

Calls 4

BuildRoleLinksMethod · 0.95
rebuildRoleLinksMethod · 0.95
invalidateMatcherMapMethod · 0.95

Tested by

no test coverage detected