SpeichereInhalt.php
Pfad: src/Application/Dokumentation/SpeichereInhalt.php
Ext: php
Größe: 1375 Bytes
Geändert: 2026-07-16 10:48:31+02
<?php
declare(strict_types=1);
namespace Demo\Application\Dokumentation;
use Demo\Domain\Dokumentation\DokumentationRepository;
use Demo\Domain\Dokumentation\HtmlKonverter;
/**
* Anwendungsfall: nimmt bearbeitetes Editor-HTML entgegen, wandelt es in
* bereinigtes Markdown und speichert es.
*/
final class SpeichereInhalt
{
/** @var DokumentationRepository Injizierter Port. */
private DokumentationRepository $repository;
/** @var HtmlKonverter Konverter, der zugleich auf die Whitelist reduziert. */
private HtmlKonverter $konverter;
/**
* @param DokumentationRepository $repository Datenzugriff.
* @param HtmlKonverter $konverter HTML-nach-Markdown-Konverter (Port).
*/
public function __construct(DokumentationRepository $repository, HtmlKonverter $konverter)
{
$this->repository = $repository;
$this->konverter = $konverter;
}
/**
* Konvertiert das Editor-HTML und speichert das Ergebnis.
*
* @param string $slug Ziel-Slug.
* @param string $editorHtml Rohes HTML aus dem WYSIWYG-Editor.
* @return bool True, wenn gespeichert wurde.
*/
public function execute(string $slug, string $editorHtml): bool
{
$markdown = $this->konverter->convert($editorHtml);
return $this->repository->speichereInhalt($slug, $markdown);
}
}
Frühere Versionen
| Version | Zeitpunkt | Operation |
|---|---|---|
| 2 | 2026-07-16 12:49:36.485359+02 | UPDATE |