Verzeichnisstruktur

Das Hauptverzeichnis

Das Components Verzeichnis

Das Components Verzeichnis enthält die Kernlogik unseres Plugins. Wir werden später genauer darauf eingehen.

Das Controllers Verzeichnis

Das Controllers Verzeichnis enthält alle Controller. Wir haben ein Backend und ein Frontend Controller. Der Backend Controller wird hauptsächlich zum Herunterladen der Log Dateien benutzt und der Frontend Controller wird zum Anlegen von Bestellungen (Klarna- und Shopwareseitig) benutzt.

Das Resources Verzeichnis

Das Resources Verzeichnis enthält unsere Snippets, Views, Config und Service Definitionen.

Das Subscriber Verzeichnis

Das Subscriber Verzeichnis enthält unsere Subscriber. Diese werden so ähnlich wie Controller verwendet, d.h. diese haben keine eigenständige Logik implementiert sondern nur "glue Code".

Das Tests Verzeichnis

Das Tests Verzeichnis enthält unsere automatisierten Tests.

Das vendor Verzeichnis

Das vendor Verzeichnis enthält Abhängigkeiten, welche durch Composer verwaltet werden.

Das Components Verzeichnis

Das Api Verzeichnis

Das Api Verzeichnis enthält alle relevanten Klassen zur Kommunikation mit der Klarna Payments Api.

Das ControllerHelper Verzeichnis

Das ControllerHelper Verzeichnis enthält "Helfer" Klassen für unsere Controller.

Das DataFormatter Verzeichnis

Das DataFormatter Verzeichnis enthält Klassen zum Daten formatieren. Dies ist bei einigen Daten nötig wie z.B. die Produkt URL, weil diese im Standardformat nicht für externe Systeme nutzbar sind.

Das Facade Verzeichnis

Das Facade Verzeichnis enthält Fassaden welche die Kommunikation mit der Klarna Payments Api vereinfachen. Diese sind speziell für Entwickler gedacht und können somit leicht von anderen Plugins aus verwendet werden.

Das Installer Verzeichnis

Das Installer Verzeichnis enthält Logik die wir bei der Plugin Installation benötigen.

Das PaymentMethodFilter Verzeichnis

Das PaymentMethodFilter Verzeichnis enthält Logik wie wir unsere Zahlungsarten filtern.

Das Shared Verzeichnis

Das Shared Verzeichnis enthält generische Services welche wir im Plugin benötigen.

Das SignatureGenerator Verzeichnis

Das SignatureGenerator Verzeichnis enthält die Logik um Checksums zu generieren, sei es für den Warenkorb, die Kundenadresse oder was anderes.

Das Storage Verzeichnis

Das Storage Verzeichnis enthält die Logik um mit der Datenbank zu kommunizieren.

Das Transformer Verzeichnis

Das Transformer Verzeichnis enthält die Logik um Shopware Daten so zu transformieren, dass die Klarna Payments Api damit umgehen kann.

Das Validator Verzeichnis

Das Validator Verzeichnis enthält diverse Validatoren wie z.B. den Aufschlag Check bei den Klarna Zahlungsarten.