try: import json except ImportError: import simplejson as json # Python 2.5 compat fix if not hasattr(urlparse, 'parse_qsl'): import cgi urlparse.parse_qsl = cgi.parse_qsl _VALID_VERSIONS = ['v1', 'v2'] # tell keystoneclient that we can ignore the /v1|v2/{project_id} component of # the service catalog when doing discovery lookups for svc in ('volume', 'volumev2'): discover.add_catalog_discover_hack(svc, re.compile('/v[12]/\w+/?$'), '/') def get_volume_api_from_url(url): scheme, netloc, path, query, frag = urlparse.urlsplit(url) components = path.split("/") for version in _VALID_VERSIONS: if version in components: return version[1:] msg = (_("Invalid url: '%(url)s'. It must include one of: %(version)s.") % { 'url': url, 'version': ', '.join(_VALID_VERSIONS) })
import json except ImportError: import simplejson as json # Python 2.5 compat fix if not hasattr(urlparse, 'parse_qsl'): import cgi urlparse.parse_qsl = cgi.parse_qsl _VALID_VERSIONS = ['v1', 'v2'] # tell keystoneclient that we can ignore the /v1|v2/{project_id} component of # the service catalog when doing discovery lookups for svc in ('volume', 'volumev2'): discover.add_catalog_discover_hack(svc, re.compile('/v[12]/\w+/?$'), '/') def get_volume_api_from_url(url): scheme, netloc, path, query, frag = urlparse.urlsplit(url) components = path.split("/") for version in _VALID_VERSIONS: if version in components: return version[1:] msg = (_("Invalid url: '%(url)s'. It must include one of: %(version)s.") % {'url': url, 'version': ', '.join(_VALID_VERSIONS)}) raise exceptions.UnsupportedVersion(msg)
except ImportError: import simplejson as json # Python 2.5 compat fix if not hasattr(urlparse, "parse_qsl"): import cgi urlparse.parse_qsl = cgi.parse_qsl _VALID_VERSIONS = ["v1", "v2"] # tell keystoneclient that we can ignore the /v1|v2/{project_id} component of # the service catalog when doing discovery lookups for svc in ("volume", "volumev2"): discover.add_catalog_discover_hack(svc, re.compile("/v[12]/\w+/?$"), "/") def get_volume_api_from_url(url): scheme, netloc, path, query, frag = urlparse.urlsplit(url) components = path.split("/") for version in _VALID_VERSIONS: if version in components: return version[1:] msg = "Invalid client version '%s'. must be one of: %s" % ((version, ", ".join(_VALID_VERSIONS))) raise exceptions.UnsupportedVersion(msg) class SessionClient(adapter.LegacyJsonAdapter):