'A lower-level method for listing contents of a bucket.  This
closely models the actual S3 API and requires you to manually
handle the paging of results.  For a higher-level method that
handles the details of paging for you, you can use the list
method.
:type max_keys: int
:param max_keys: The maximum number of keys to retrieve
:type prefix: string
:param prefix: The prefix of the keys you want to retrieve
:type marker: string
:param marker: The "marker" of where you are in the result set
:type delimiter: string
:param delimiter: If this optional, Unicode string parameter
is included with your request, then keys that contain the
same string between the prefix and the first occurrence of
the delimiter will be rolled up into a single result
element in the CommonPrefixes collection. These rolled-up
keys are not returned elsewhere in the response.
:param encoding_type: Requests Amazon S3 to encode the response and
specifies the encoding method to use.
An object key can contain any Unicode character; however, XML 1.0
parser cannot parse some characters, such as characters with an
ASCII value from 0 to 10. For characters that are not supported in
XML 1.0, you can add this parameter to request that Amazon S3
encode the keys in the response.
Valid options: ``url``
:type encoding_type: string
:rtype: ResultSet
:return: The result from S3 listing the keys requested'

def get_all_keys(self, headers=None, **params):

    self.validate_kwarg_names(params, ['maxkeys', 'max_keys', 'prefix', 'marker', 'delimiter', 'encoding_type'])
    return self._get_all([('Contents', self.key_class), ('CommonPrefixes', Prefix)], '', headers, **params)
