server/__init__.py
changeset 8561 77ea3eed9946
parent 8539 d32ab8570e5d
child 8580 d753d6a6798f
equal deleted inserted replaced
8560:fef0b8214fcf 8561:77ea3eed9946
   245     print '-> database for instance %s initialized.' % config.appid
   245     print '-> database for instance %s initialized.' % config.appid
   246 
   246 
   247 
   247 
   248 def initialize_schema(config, schema, mhandler, event='create'):
   248 def initialize_schema(config, schema, mhandler, event='create'):
   249     from cubicweb.server.schemaserial import serialize_schema
   249     from cubicweb.server.schemaserial import serialize_schema
   250     from cubicweb.server.session import hooks_control
       
   251     session = mhandler.session
   250     session = mhandler.session
   252     cubes = config.cubes()
   251     cubes = config.cubes()
   253     # deactivate every hooks but those responsible to set metadata
   252     # deactivate every hooks but those responsible to set metadata
   254     # so, NO INTEGRITY CHECKS are done, to have quicker db creation.
   253     # so, NO INTEGRITY CHECKS are done, to have quicker db creation.
   255     # Active integrity is kept else we may pb such as two default
   254     # Active integrity is kept else we may pb such as two default
   256     # workflows for one entity type.
   255     # workflows for one entity type.
   257     with hooks_control(session, session.HOOKS_DENY_ALL, 'metadata',
   256     with session.deny_all_hooks_but('metadata', 'activeintegrity'):
   258                        'activeintegrity'):
       
   259         # execute cubicweb's pre<event> script
   257         # execute cubicweb's pre<event> script
   260         mhandler.cmd_exec_event_script('pre%s' % event)
   258         mhandler.cmd_exec_event_script('pre%s' % event)
   261         # execute cubes pre<event> script if any
   259         # execute cubes pre<event> script if any
   262         for cube in reversed(cubes):
   260         for cube in reversed(cubes):
   263             mhandler.cmd_exec_event_script('pre%s' % event, cube)
   261             mhandler.cmd_exec_event_script('pre%s' % event, cube)