GetRoleSnapshot returns a role by ID with snapshot reads (with cache). Trades consistency for performance.
(ctx context.Context, workspaceID string, resourceID string)
| 139 | // GetRoleSnapshot returns a role by ID with snapshot reads (with cache). |
| 140 | // Trades consistency for performance. |
| 141 | func (s *Store) GetRoleSnapshot(ctx context.Context, workspaceID string, resourceID string) (*RoleMessage, error) { |
| 142 | if v, ok := s.rolesCache.Get(resourceID); ok { |
| 143 | return v, nil |
| 144 | } |
| 145 | return s.GetRole(ctx, &FindRoleMessage{Workspace: workspaceID, ResourceID: &resourceID}) |
| 146 | } |
| 147 | |
| 148 | // ListRoles returns a list of roles. |
| 149 | func (s *Store) ListRoles(ctx context.Context, find *FindRoleMessage) ([]*RoleMessage, error) { |
no test coverage detected