def get_provider_driver_class(driver, namespace=SERVICE_PROVIDERS):
 try:
  driver_manager = stevedore.driver.DriverManager(namespace, driver).driver
 except ImportError:
  return driver
 except RuntimeError:
  return driver
 new_driver = ('%s.%s' % (driver_manager.__module__, driver_manager.__name__))
 LOG.warning(_LW('The configured driver %(driver)s has been moved, automatically using %(new_driver)s instead. Please update your config files, as this automatic fixup will be removed in a future release.'), {'driver': driver, 'new_driver': new_driver})
 return new_driver

def get_provider_driver_class ( driver , namespace = SERVICE_PROVIDERS ) : try : driver_manager = stevedore . driver . DriverManager ( namespace , driver ) . driver except ImportError : return driver except RuntimeError : return driver new_driver = ( '%s.%s' % ( driver_manager . __module__ , driver_manager . __name__ ) ) LOG . warning ( _LW ( 'The configured driver %(driver)s has been moved, automatically using %(new_driver)s instead. Please update your config files, as this automatic fixup will be removed in a future release.' ) , { 'driver' : driver , 'new_driver' : new_driver } ) return new_driver
return path to provider driver class in order to keep backward compatibility with configs < kilo .