Custom CacheKey

Moin,

ich möchte einen eigenen CacheKey hinzufügen um den Cache zu erweitern. Leider finde ich dafür keine (gute) Möglichkeit.

Hintergrund: Ich baue ein Plugin das u.a. die Preise von bestimmten Abhängigkeiten verändert. Das funktioniert natürlich nur, wenn der Cache ausgeschaltet ist oder man einen eigenen CacheKey hinzufügt.

Ich habe leider keine Möglichkeit gefunden, um einen eigenen CacheKey hinzuzufügen:
https://github.com/shopware/storefront/blob/master/Framework/Cache/CacheStore.php#L202

Die Methode generateCacheKey und alles was im Grunde dazu gehört ist private, d.h. man kann nicht vernünftig auf die Klasse extenden.
Bzw. es gibt auch keine Möglichkeit einen CacheKey auf eine einfache Art hinzuzufügen.

Wenn ich nichts übersehen habe bleibt nur die Möglichkeit größere Teile von CacheStore oder Request zu überschreiben. Keine wirklich tolle Variante :frowning:

VG Leon

Mach doch am besten einen Pull-Request und mach das ganze Erweiterbar. Bspw. indem du ein Event einbaust.

Wie wird denn aktuell dieser Cache key generiert? Hat das eine Abhängigkeit mit dem sales channel context?

Ach ich sehe es gibt ein Event dazu, sehr schön. Leider scheint an diesem Punkt die Session noch nicht gestartet zu sein.