/** * @param string $payload * @param \Jose\Compression\CompressionInterface|null $compression_method * * @return string */ private function preparePayload($payload, Compression\CompressionInterface $compression_method = null) { $prepared = is_string($payload) ? $payload : json_encode($payload); Assertion::notNull($prepared, 'The payload is empty or cannot encoded into JSON.'); if (null === $compression_method) { return $prepared; } $compressed_payload = $compression_method->compress($prepared); Assertion::string($compressed_payload, 'Compression failed.'); return $compressed_payload; }
/** * @param CompressionInterface $compression_algorithm * * @return self */ public function addCompressionAlgorithm(CompressionInterface $compression_algorithm) { $this->compression_algorithms[$compression_algorithm->getMethodName()] = $compression_algorithm; return $this; }