server/repository.py
branchstable
changeset 5808 2de32c0c293b
parent 5749 b4393b681f7a
child 5811 e77cea9721e7
child 5813 0b250d72fcfa
equal deleted inserted replaced
5807:904897d79f86 5808:2de32c0c293b
  1103         eschema = entity.e_schema
  1103         eschema = entity.e_schema
  1104         session.set_entity_cache(entity)
  1104         session.set_entity_cache(entity)
  1105         orig_edited_attributes = getattr(entity, 'edited_attributes', None)
  1105         orig_edited_attributes = getattr(entity, 'edited_attributes', None)
  1106         entity.edited_attributes = edited_attributes
  1106         entity.edited_attributes = edited_attributes
  1107         try:
  1107         try:
  1108             if session.is_hook_category_activated('integrity'):
       
  1109                 entity.check()
       
  1110             only_inline_rels, need_fti_update = True, False
  1108             only_inline_rels, need_fti_update = True, False
  1111             relations = []
  1109             relations = []
  1112             source = self.source_from_eid(entity.eid, session)
  1110             source = self.source_from_eid(entity.eid, session)
  1113             for attr in list(edited_attributes):
  1111             for attr in list(edited_attributes):
  1114                 if attr == 'eid':
  1112                 if attr == 'eid':
  1135                 for attr, value, _ in relations:
  1133                 for attr, value, _ in relations:
  1136                     hm.call_hooks('before_add_relation', session,
  1134                     hm.call_hooks('before_add_relation', session,
  1137                                   eidfrom=entity.eid, rtype=attr, eidto=value)
  1135                                   eidfrom=entity.eid, rtype=attr, eidto=value)
  1138                 if not only_inline_rels:
  1136                 if not only_inline_rels:
  1139                     hm.call_hooks('before_update_entity', session, entity=entity)
  1137                     hm.call_hooks('before_update_entity', session, entity=entity)
       
  1138             if session.is_hook_category_activated('integrity'):
       
  1139                 entity.check()
  1140             source.update_entity(session, entity)
  1140             source.update_entity(session, entity)
  1141             self.system_source.update_info(session, entity, need_fti_update)
  1141             self.system_source.update_info(session, entity, need_fti_update)
  1142             if source.should_call_hooks:
  1142             if source.should_call_hooks:
  1143                 if not only_inline_rels:
  1143                 if not only_inline_rels:
  1144                     hm.call_hooks('after_update_entity', session, entity=entity)
  1144                     hm.call_hooks('after_update_entity', session, entity=entity)