def getCoverage(self, identifier=None, bbox=None, time=None, format=None, crs=None, width=None, height=None, resx=None, resy=None, resz=None, parameter=None, method='Get', timeout=30, **kwargs):
    "Request and return a coverage from the WCS as a file-like object\n        note: additional **kwargs helps with multi-version implementation\n        core keyword arguments should be supported cross version\n        example:\n        cvg=wcs.getCoverage(identifier=['TuMYrRQ4'], timeSequence=['2792-06-01T00:00:00.0'], bbox=(-112,36,-106,41),\n                            format='cf-netcdf')\n\n        is equivalent to:\n        http://myhost/mywcs?SERVICE=WCS&REQUEST=GetCoverage&IDENTIFIER=TuMYrRQ4&VERSION=1.1.0&BOUNDINGBOX=-180,-90,180,90&TIME=2792-06-01T00:00:00.0&FORMAT=cf-netcdf\n\n        "
    if log.isEnabledFor(logging.DEBUG):
        msg = 'WCS 1.0.0 DEBUG: Parameters passed to GetCoverage: identifier={}, bbox={}, time={}, format={}, crs={}, width={}, height={}, resx={}, resy={}, resz={}, parameter={}, method={}, other_arguments={}'
        log.debug(msg.format(identifier, bbox, time, format, crs, width, height, resx, resy, resz, parameter, method, str(kwargs)))
    try:
        base_url = next((m.get('url') for m in self.getOperationByName('GetCoverage').methods if (m.get('type').lower() == method.lower())))
    except StopIteration:
        base_url = self.url
    log.debug(('WCS 1.0.0 DEBUG: base url of server: %s' % base_url))
    request = {'version': self.version, 'request': 'GetCoverage', 'service': 'WCS'}
    assert (len(identifier) > 0)
    request['Coverage'] = identifier
    if bbox:
        request['BBox'] = ','.join([makeString(x) for x in bbox])
    else:
        request['BBox'] = None
    if time:
        request['time'] = ','.join(time)
    if crs:
        request['crs'] = crs
    request['format'] = format
    if width:
        request['width'] = width
    if height:
        request['height'] = height
    if resx:
        request['resx'] = resx
    if resy:
        request['resy'] = resy
    if resz:
        request['resz'] = resz
    if kwargs:
        for kw in kwargs:
            request[kw] = kwargs[kw]
    data = urlencode(request)
    log.debug(('WCS 1.0.0 DEBUG: Second part of URL: %s' % data))
    u = openURL(base_url, data, method, self.cookies, auth=self.auth, timeout=timeout)
    return u
Request and return a coverage from the WCS as a file-like object
note: additional **kwargs helps with multi-version implementation
core keyword arguments should be supported cross version
example:
cvg=wcs.getCoverage(identifier=['TuMYrRQ4'], timeSequence=['2792-06-01T00:00:00.0'], bbox=(-112,36,-106,41),
                    format='cf-netcdf')

is equivalent to:
http://myhost/mywcs?SERVICE=WCS&REQUEST=GetCoverage&IDENTIFIER=TuMYrRQ4&VERSION=1.1.0&BOUNDINGBOX=-180,-90,180,90&TIME=2792-06-01T00:00:00.0&FORMAT=cf-netcdf
def getCoverage(self, identifier=None, bbox=None, time=None, format=None, crs=None, width=None, height=None, resx=None, resy=None, resz=None, parameter=None, method='Get', timeout=30, **kwargs):
    "Request and return a coverage from the WCS as a file-like object\n        note: additional **kwargs helps with multi-version implementation\n        core keyword arguments should be supported cross version\n        example:\n        cvg=wcs.getCoverage(identifier=['TuMYrRQ4'], timeSequence=['2792-06-01T00:00:00.0'], bbox=(-112,36,-106,41),\n                            format='cf-netcdf')\n\n        is equivalent to:\n        http://myhost/mywcs?SERVICE=WCS&REQUEST=GetCoverage&IDENTIFIER=TuMYrRQ4&VERSION=1.1.0&BOUNDINGBOX=-180,-90,180,90&TIME=2792-06-01T00:00:00.0&FORMAT=cf-netcdf\n\n        "
    if log.isEnabledFor(logging.DEBUG):
        msg = 'WCS 1.0.0 DEBUG: Parameters passed to GetCoverage: identifier={}, bbox={}, time={}, format={}, crs={}, width={}, height={}, resx={}, resy={}, resz={}, parameter={}, method={}, other_arguments={}'
        log.debug(msg.format(identifier, bbox, time, format, crs, width, height, resx, resy, resz, parameter, method, str(kwargs)))
    try:
        base_url = next((m.get('url') for m in self.getOperationByName('GetCoverage').methods if (m.get('type').lower() == method.lower())))
    except StopIteration:
        base_url = self.url
    log.debug(('WCS 1.0.0 DEBUG: base url of server: %s' % base_url))
    request = {'version': self.version, 'request': 'GetCoverage', 'service': 'WCS'}
    assert (len(identifier) > 0)
    request['Coverage'] = identifier
    if bbox:
        request['BBox'] = ','.join([makeString(x) for x in bbox])
    else:
        request['BBox'] = None
    if time:
        request['time'] = ','.join(time)
    if crs:
        request['crs'] = crs
    request['format'] = format
    if width:
        request['width'] = width
    if height:
        request['height'] = height
    if resx:
        request['resx'] = resx
    if resy:
        request['resy'] = resy
    if resz:
        request['resz'] = resz
    if kwargs:
        for kw in kwargs:
            request[kw] = kwargs[kw]
    data = urlencode(request)
    log.debug(('WCS 1.0.0 DEBUG: Second part of URL: %s' % data))
    u = openURL(base_url, data, method, self.cookies, auth=self.auth, timeout=timeout)
    return u