add( self::PRIMARY_BACKUP_HANDLER, function() use ( $container ) { return new Primary_Backup_Handler( $container->get( Connector_Service_Provider::DATA_STORE_ROUTER ), $container->get( Logging_Service_Provider::DEBUG_LOGGER ) ); }); } public function init( Service_Container $container ) { add_filter( 'gravitysmtp_connector_for_sending', function( $current_connector, $email_args ) use ( $container ) { if ( $current_connector ) { return $current_connector; } return $container->get( self::PRIMARY_BACKUP_HANDLER )->handle( $current_connector, $email_args ); }, self::HOOK_PRIORITY_PRIMARY_BACKUP, 2 ); add_action( 'gravitysmtp_before_email_send', function() use ( $container ) { $container->get( self::PRIMARY_BACKUP_HANDLER )->reset(); }, 0 ); } }