def METHOD_NAME(self):
    """
    Get a list of available providers.
    It uses a simple automatic discovery system by iterating through all
    submodules in cloudbridge.providers.
    :rtype: dict
    :return: A dict of available providers and their implementations in the
             following format::
             {'aws': {'class': aws.provider.AWSCloudProvider},
              'openstack': {'class': openstack.provider.OpenStackCloudProvi
                                     der}
             }
    """
    if not self.provider_list:
        self.discover_providers()
    log.debug("List of available providers: %s", self.provider_list)
    return self.provider_list