def foo(): referenced_objects.rewarm_cache() revisions_diff.rewarm_latest_content() instance = referenced_objects.get(self.resource_type, self.resource_id) if instance: return revisions_diff.prepare(instance, self.content)
def access_control_list(self, values): """Setter function for access control list. Args: values: List of access control roles or dicts containing json representation of custom attribute values. """ if values is None: return from ggrc.models import person for value in values: referenced_objects.mark_to_cache(person.Person, value["person"]["id"]) referenced_objects.rewarm_cache( rewarm_type=person.Person, skip_cad=True, undefer=True, ) persons_by_acl = defaultdict(set) for value in values: if value["ac_role_id"] not in self.acr_id_acl_map: raise BadRequest(errors.BAD_PARAMS) person = referenced_objects.get("Person", value["person"]["id"]) acl = self.acr_id_acl_map[value["ac_role_id"]] persons_by_acl[acl].add(person) for acl in self._access_control_list: acl.update_people(persons_by_acl[acl])
def lazy_loader(): """Lazy load diff for revisions.""" referenced_objects.rewarm_cache() revisions_diff.rewarm_latest_content() instance = referenced_objects.get(self.resource_type, self.resource_id) if instance: return revisions_diff.prepare(instance, self.content)
def access_control_list(self, values): """Setter function for access control list. Args: values: List of access control roles or dicts containing json representation of custom attribute values. """ if values is None: return from ggrc.models import person for value in values: referenced_objects.mark_to_cache(person.Person, value["person"]["id"]) referenced_objects.rewarm_cache( rewarm_type=person.Person, skip_cad=True, undefer=True, ) persons_by_acl = defaultdict(set) for value in values: if value["ac_role_id"] not in self.acr_id_acl_map: raise BadRequest(errors.BAD_PARAMS) person = referenced_objects.get("Person", value["person"]["id"]) acl = self.acr_id_acl_map[value["ac_role_id"]] persons_by_acl[acl].add(person) for acl in self._access_control_list: acl.update_people(persons_by_acl[acl])
def lazy_loader(): """Lazy load diff for revisions.""" referenced_objects.rewarm_cache() instance = referenced_objects.get(self.resource_type, self.resource_id) meta_dict = {} if instance: instance_meta_info = meta_info.MetaInfo(instance) meta_dict["mandatory"] = instance_meta_info.mandatory return meta_dict
def lazy_loader(): """Lazy load diff for revisions.""" referenced_objects.rewarm_cache() instance = referenced_objects.get(self.resource_type, self.resource_id) meta_dict = {} if instance: instance_meta_info = meta_info.MetaInfo(instance) meta_dict["mandatory"] = instance_meta_info.mandatory return meta_dict
def lazy_loader(): """Lazy load diff for revisions.""" referenced_objects.rewarm_cache() revisions_diff.rewarm_latest_content() instance = referenced_objects.get(self.resource_type, self.resource_id) if instance: return revisions_diff.prepare(instance, self.content) # return empty diff object has already been removed return {}