getAttribute('id') !== null) { $name = $request->getAttribute('id'); return JsonResponseFactory::createJsonResponse( RedisClient::getMiddleware($name, $this->protocolEnumFromRequest($request)) ); } return JsonResponseFactory::createJsonResponse( RedisClient::getAllMiddlewares($this->protocolEnumFromRequest($request)) ); } /** * @throws \JsonException */ public function post(ServerRequest $request): ResponseInterface { $name = $request->getAttribute('id'); $data = $request->getParsedBody(); if (empty($data)) { return JsonResponseFactory::createJsonResponse(['error' => 'Middleware is invalid'], 400); } RedisClient::createOrReplace($name, $data, EntityEnum::MIDDLEWARE, $this->protocolEnumFromRequest($request)); return JsonResponseFactory::createJsonResponse(['message' => 'Middleware added successfully']); } /** * @throws \JsonException */ public function delete(ServerRequest $request): ResponseInterface { $name = $request->getAttribute('id'); if (empty($name)) { return JsonResponseFactory::createJsonResponse(['error' => 'Middleware is invalid'], 400); } RedisClient::deleteAllKeys($name, EntityEnum::MIDDLEWARE, $this->protocolEnumFromRequest($request)); return JsonResponseFactory::createJsonResponse(['message' => 'Middleware deleted successfully']); } }