#NEWLINE# @ log . log_method_call #NEWLINE# def create_l3_policy( self , context , l3_policy ) : #NEWLINE# #INDENT# session = context . session #NEWLINE# with session . begin ( subtransactions = True ) : #NEWLINE# #INDENT# result = super ( GroupPolicyPlugin , self ) . create_l3_policy ( context , l3_policy ) #NEWLINE# self . extension_manager . process_create_l3_policy ( session , l3_policy , result ) #NEWLINE# self . _validate_shared_create ( self , context , result , 'l3_policy' ) #NEWLINE# self . _validate_l3p_es ( context , result ) #NEWLINE# policy_context = p_context . L3PolicyContext ( self , context , result ) #NEWLINE# self . policy_driver_manager . create_l3_policy_precommit ( policy_context ) #NEWLINE# #UNINDENT# try : #NEWLINE# #INDENT# self . policy_driver_manager . create_l3_policy_postcommit ( policy_context ) #NEWLINE# #UNINDENT# except Exception : #NEWLINE# #INDENT# with excutils . save_and_reraise_exception ( ) : #NEWLINE# #INDENT# LOG . exception ( _LE ( 'create_l3_policy_postcommit failed, deleting l3_policy %s' ) , self [ 'id' ] ) #NEWLINE# self . delete_l3_policy ( context , result [ 'id' ] ) #NEWLINE# #UNINDENT# #UNINDENT# return result