'@inherits: :class:`StorageDriver.iterate_container_objects`'

def iterate_container_objects(self, container):

    params = {'restype': 'container', 'comp': 'list', 'maxresults': RESPONSES_PER_REQUEST, 'include': 'metadata'}
    container_path = self._get_container_path(container)
    while True:
        response = self.connection.request(container_path, params=params)
        if (response.status == httplib.NOT_FOUND):
            raise ContainerDoesNotExistError(value=None, driver=self, container_name=container.name)
        elif (response.status != httplib.OK):
            raise LibcloudError(('Unexpected    status    code:    %s' % response.status), driver=self)
        body = response.parse_body()
        blobs = body.find(fixxpath(xpath='Blobs'))
        blobs = blobs.findall(fixxpath(xpath='Blob'))
        for blob in blobs:
            (yield self._xml_to_object(container, blob))
        params['marker'] = body.findtext('NextMarker')
        if (not params['marker']):
            break
