Classes/Controller/ConfigurationController.php
public function mainAction(ServerRequestInterface $request) : ResponseInterface
    {
        /** @var ResponseInterface $response */
        $response = func_num_args() === 2 ? func_get_arg(1) : null;

        $this->languageService->includeLLFile('EXT:image_autoresize/Resources/Private/Language/locallang_mod.xlf');
        $this->processData();

        $formTag = '<form action="" method="post" name="editform" id="EditDocumentController">';

        $this->moduleTemplate->setForm($formTag);

        $this->content .= sprintf('<h3>%s</h3>', htmlspecialchars($this->languageService->getLL('title')));
        $this->addStatisticsAndSocialLink();

        // Generate the content
        $this->moduleContent($this->config);

        // Compile document
        $this->addToolbarButtons();
        $this->moduleTemplate->setContent($this->content);
        $content = $this->moduleTemplate->renderContent();

        if ($response !== null) {
            $response->getBody()->write($content);
        } else {
            // Behaviour in TYPO3 v9
            $response = new HtmlResponse($content);
        }

        return $response;
    }
public function mainAction(ServerRequestInterface $request) : ResponseInterface
    {
        /** @var ResponseInterface $response */
        $response = func_num_args() === 2 ? func_get_arg(1) : null;

        $this->languageService->includeLLFile('EXT:image_autoresize/Resources/Private/Language/locallang_mod.xlf');
        $this->processData();

        $formTag = '<form action="" method="post" name="editform" id="EditDocumentController">';

        $this->moduleTemplate->setForm($formTag);

        $this->content .= sprintf('<h3>%s</h3>', htmlspecialchars($this->languageService->getLL('title')));
        $this->addStatisticsAndSocialLink();

        // Generate the content
        $this->moduleContent($this->config);

        // Compile document
        $this->addToolbarButtons();
        $this->moduleTemplate->setContent($this->content);
        $content = $this->moduleTemplate->renderContent();

        if ($response !== null) {
            $response->getBody()->write($content);
        } else {
            // Behaviour in TYPO3 v9
            $response = new HtmlResponse($content);
        }

        return $response;
    }
Injects the request object for the current request or subrequest
As this controller goes only through the main() method, it is rather simple for now

@param ServerRequestInterface $request the current request
@return ResponseInterface the response with the content