コード例 #1
0
 def delete_address_scope(self, context, id):
     with db_api.context_manager.writer.using(context):
         address_scope = super(Ml2PlusPlugin,
                               self).get_address_scope(context, id)
         mech_context = driver_context.AddressScopeContext(
             self, context, address_scope)
         self.mechanism_manager.delete_address_scope_precommit(mech_context)
         super(Ml2PlusPlugin, self).delete_address_scope(context, id)
     self.mechanism_manager.delete_address_scope_postcommit(mech_context)
コード例 #2
0
 def delete_address_scope(self, context, id):
     session = context.session
     with session.begin(subtransactions=True):
         address_scope = super(Ml2PlusPlugin,
                               self).get_address_scope(context, id)
         mech_context = driver_context.AddressScopeContext(
             self, context, address_scope)
         self.mechanism_manager.delete_address_scope_precommit(mech_context)
         super(Ml2PlusPlugin, self).delete_address_scope(context, id)
     self.mechanism_manager.delete_address_scope_postcommit(mech_context)
コード例 #3
0
 def update_address_scope(self, context, id, address_scope):
     with db_api.context_manager.writer.using(context):
         original_address_scope = super(Ml2PlusPlugin,
                                        self).get_address_scope(
                                            context, id)
         updated_address_scope = super(Ml2PlusPlugin,
                                       self).update_address_scope(
                                           context, id, address_scope)
         self.extension_manager.process_update_address_scope(
             context, address_scope[as_ext.ADDRESS_SCOPE],
             updated_address_scope)
         mech_context = driver_context.AddressScopeContext(
             self,
             context,
             updated_address_scope,
             original_address_scope=original_address_scope)
         self.mechanism_manager.update_address_scope_precommit(mech_context)
     self.mechanism_manager.update_address_scope_postcommit(mech_context)
     return updated_address_scope
コード例 #4
0
 def update_address_scope(self, context, id, address_scope):
     session = context.session
     with session.begin(subtransactions=True):
         original_address_scope = super(Ml2PlusPlugin,
                                        self).get_address_scope(
                                            context, id)
         updated_address_scope = super(Ml2PlusPlugin,
                                       self).update_address_scope(
                                           context, id, address_scope)
         self.extension_manager.process_update_address_scope(
             context, address_scope[as_ext.ADDRESS_SCOPE],
             updated_address_scope)
         mech_context = driver_context.AddressScopeContext(
             self,
             context,
             updated_address_scope,
             original_address_scope=original_address_scope)
         self.mechanism_manager.update_address_scope_precommit(mech_context)
     self.mechanism_manager.update_address_scope_postcommit(mech_context)
     return updated_address_scope
コード例 #5
0
 def create_address_scope(self, context, address_scope):
     self._ensure_tenant(context, address_scope[as_ext.ADDRESS_SCOPE])
     with db_api.context_manager.writer.using(context):
         result = super(Ml2PlusPlugin,
                        self).create_address_scope(context, address_scope)
         self.extension_manager.process_create_address_scope(
             context, address_scope[as_ext.ADDRESS_SCOPE], result)
         mech_context = driver_context.AddressScopeContext(
             self, context, result)
         self.mechanism_manager.create_address_scope_precommit(mech_context)
     try:
         self.mechanism_manager.create_address_scope_postcommit(
             mech_context)
     except ml2_exc.MechanismDriverError:
         with excutils.save_and_reraise_exception():
             LOG.error(
                 "mechanism_manager.create_address_scope_"
                 "postcommit failed, deleting address_scope"
                 " '%s'", result['id'])
             self.delete_address_scope(context, result['id'])
     return result