code: def read(self, path, filename=None, offset=None, size=-1):
          
          storageScheme, key = self.getkey(path, filename=filename)
  
          if offset or (size > -1):
              if not offset:
                  offset = 0
              if size > -1:
                  sizeStr = offset + size - 1  # range header is inclusive
              else:
                  sizeStr = ""
              headers = {"Range": "bytes=%d-%s" % (offset, sizeStr)}
              return key.get_contents_as_string(headers=headers)
          else:
              return key.get_contents_as_string()
docs: Read a file specified by path.