HermeneusCacheManager: Zentraler Caching-Manager
Anwendungsfall
- Hermeneus-Grundwortschatz wird häufig gebraucht und daher im Cache gespeichert.
- Aus dem Hermeneus-Grundwortschatz wird für bestimmte Übungen ein großer Formenpool generiert und im Cache gespeichert.
- Ein Redakteur ändert einen Eintrag im Glossarium oder ändert manuell eine Form.
- Sämtliche Cache-Einträge, die auf dem Hermeneus-Grundwortschatz basieren, müssen gelöscht werden.
Funktionsweise
Der HermeneusCacheManager fungiert als Listener für bestimmte Laravel-Events und führt die Operationen für bestimmte Cache-Keys durch. Welche Events und Cache-Keys betroffen sind, wird durch eine Konstante in der Klasse definiert:
php
const DELETE_EVENTS = [
'Event_GlossariumLemmaChanged' => [
'array_of_strings_formengrill_verfuegbare_formen_aus_hermeneus_grundwortschatz',
'collection_of_vocab_hermeneus_grundwortschatz'
],
'TestEvent' => [
'test_cache'
]
];Registrierung eines neuen Events und Cache-Keys
- Mit
php artisan make:event EventNameneues Event erstellen. Eventklasse muss inapp/Eventsliegen. - Event in
app/Providers/EventServiceProvider.phpregistrieren. - Event und Cache-Key in der entsprechenden Konstante
app/Services/HermeneusCacheManager.phpregistrieren.