code: def zlib_processor(entity):  # pragma: no cover, not used in the testing environment...
      
      if not entity.headers.get(ntou("Content-Length"), ntou("")):
          raise cherrypy.HTTPError(411)
  
      body = entity.fp.read()
      try:
          body = zlib.decompress(body)
      except zlib.error:
          raise cherrypy.HTTPError(400, 'Invalid zlib data')
      try:
          raw_params = json.loads(body)
      except ValueError:
          raise cherrypy.HTTPError(400, 'Invalid JSON document in zlib data')
  
      try:
          params = {}
          for key, value in list(raw_params.items()):
              params[key] = unserialize(value.encode("utf8"))
      except TypeError:
          raise cherrypy.HTTPError(400, 'Invalid serialized data in JSON document')
      except AlignakClassLookupException as exp:
          cherrypy.HTTPError(400, 'Cannot un-serialize data received: %s' % exp)
  
      # Now that all values have been successfully parsed and decoded,
      # apply them to the entity.params dict.
      for key, value in list(params.items()):
          if key in entity.params:
              if not isinstance(entity.params[key], list):
                  entity.params[key] = [entity.params[key]]
              entity.params[key].append(value)
          else:
              entity.params[key] = value
docs: Read application/zlib data and put content into entity.params for later use.
  
      :param entity: cherrypy entity
      :type entity: cherrypy._cpreqbody.Entity
      :return: None