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='<STR_LIT>',**kwargs):
if log.isEnabledFor(logging.DEBUG):<EOL><INDENT>log.debug('<STR_LIT>'%(identifier, bbox, time, format, crs, width, height, resx, resy, resz, parameter, method, str(kwargs)))<EOL><DEDENT>try:<EOL><INDENT>base_url = next((m.get('<STR_LIT:url>') for m in self.getOperationByName('<STR_LIT>').methods if m.get('<STR_LIT:type>').lower() == method.lower()))<EOL><DEDENT>except StopIteration:<EOL><INDENT>base_url = self.url<EOL><DEDENT>if log.isEnabledFor(logging.DEBUG):<EOL><INDENT>log.debug('<STR_LIT>'%base_url)<EOL><DEDENT>request = {'<STR_LIT:version>': self.version, '<STR_LIT>': '<STR_LIT>', '<STR_LIT>':'<STR_LIT>'}<EOL>assert len(identifier) > <NUM_LIT:0><EOL>request['<STR_LIT>']=identifier<EOL>if bbox:<EOL><INDENT>request['<STR_LIT>']='<STR_LIT:U+002C>'.join([self.__makeString(x) for x in bbox])<EOL><DEDENT>else:<EOL><INDENT>request['<STR_LIT>']=None<EOL><DEDENT>if time:<EOL><INDENT>request['<STR_LIT:time>']='<STR_LIT:U+002C>'.join(time)<EOL><DEDENT>if crs:<EOL><INDENT>request['<STR_LIT>']=crs<EOL><DEDENT>request['<STR_LIT>']=format<EOL>if width:<EOL><INDENT>request['<STR_LIT:width>']=width<EOL><DEDENT>if height:<EOL><INDENT>request['<STR_LIT>']=height<EOL><DEDENT>if resx:<EOL><INDENT>request['<STR_LIT>']=resx<EOL><DEDENT>if resy:<EOL><INDENT>request['<STR_LIT>']=resy<EOL><DEDENT>if resz:<EOL><INDENT>request['<STR_LIT>']=resz<EOL><DEDENT>if kwargs:<EOL><INDENT>for kw in kwargs:<EOL><INDENT>request[kw]=kwargs[kw]<EOL><DEDENT><DEDENT>data = urlencode(request)<EOL>if log.isEnabledFor(logging.DEBUG):<EOL><INDENT>log.debug('<STR_LIT>'%data)<EOL><DEDENT>u=openURL(base_url, data, method, self.cookies)<EOL>return u<EOL>
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