LoadPolicyArray loads a policy rule to model.
(rule []string, m model.Model)
| 42 | |
| 43 | // LoadPolicyArray loads a policy rule to model. |
| 44 | func LoadPolicyArray(rule []string, m model.Model) error { |
| 45 | key := rule[0] |
| 46 | sec := key[:1] |
| 47 | ok, err := m.HasPolicyEx(sec, key, rule[1:]) |
| 48 | if err != nil { |
| 49 | return err |
| 50 | } |
| 51 | if ok { |
| 52 | return nil // skip duplicated policy |
| 53 | } |
| 54 | |
| 55 | err = m.AddPolicy(sec, key, rule[1:]) |
| 56 | if err != nil { |
| 57 | return err |
| 58 | } |
| 59 | |
| 60 | return nil |
| 61 | } |
| 62 | |
| 63 | // Adapter is the interface for Casbin adapters. |
| 64 | type Adapter interface { |
searching dependent graphs…