def handleVerb(self, verb, kw): # validate kw first validation.validateArguments(verb, kw) # encode datetimes as datestamps from_ = kw.get('from_') if from_ is not None: # turn it into 'from', not 'from_' before doing actual request kw['from'] = datetime_to_datestamp(from_, self._day_granularity) if 'from_' in kw: # always remove it from the kw, no matter whether it be None or not del kw['from_'] until = kw.get('until') if until is not None: kw['until'] = datetime_to_datestamp(until, self._day_granularity) elif 'until' in kw: # until is None but is explicitly in kw, remove it del kw['until'] # now call underlying implementation method_name = verb + '_impl' return getattr(self, method_name)( kw, self.makeRequestErrorHandling(verb=verb, **kw))
def handleVerb(self, verb, kw): # if kw contains 'setSpec' transform the keymap to 'set' if kw.has_key('setSpec'): kw['set'] = kw['setSpec'] del kw['setSpec'] # validate kw first validation.validateArguments(verb, kw) # encode datetimes as datestamps from_ = kw.get('from_') if from_ is not None: # turn it into 'from', not 'from_' before doing actual request kw['from'] = datetime_to_datestamp(from_, self._day_granularity) if 'from_' in kw: # always remove it from the kw, no matter whether it be None or not del kw['from_'] until = kw.get('until') if until is not None: kw['until'] = datetime_to_datestamp(until, self._day_granularity) elif 'until' in kw: # until is None but is explicitly in kw, remove it del kw['until'] # There can be no resumptionToken and metadataPrefix at the same time. # Otherwise, we will receive an error when doing the request. # However, we may need both if we are recovering from a network # problem. thus, we will save kw[metadataPrefix] in # metadataPrefixSaved. if verb == 'ListRecords' and kw.get('resumptionToken'): metadataPrefixSaved = kw['metadataPrefix'] del(kw['metadataPrefix']) else: metadataPrefixSaved = None # Do the request tree = self.makeRequestErrorHandling(verb=verb, **kw) # We need to add the metadataPrefixSaved back, if exists if metadataPrefixSaved: kw['metadataPrefix'] = metadataPrefixSaved # now call underlying implementation method_name = verb + '_impl' return getattr(self, method_name)(kw, tree)