'Return an Address object based on an address name and optional region.
:param  name: The name of the address
:type   name: ``str``
:keyword  region: The region to search for the address in (set to
\'all\' to search all regions)
:type     region: ``str`` :class:`GCERegion` or ``None``
:return:  An Address object for the address
:rtype:   :class:`GCEAddress`'

def ex_get_address(self, name, region=None):

    if (region == 'global'):
        request = ('/global/addresses/%s' % name)
    else:
        region = (self._set_region(region) or self._find_zone_or_region(name, 'addresses', region=True, res_name='Address'))
        request = ('/regions/%s/addresses/%s' % (region.name, name))
    response = self.connection.request(request, method='GET').object
    return self._to_address(response)
