Ereignisse und Ausnahmen
Verwenden Sie Lebenszyklusereignisse für die Anwendungsintegration und Ausnahmetypen für die Wiederherstellung an einer Grenze, die den Fehler behandeln kann.
Lebenszyklusereignisse
| Ereignis | Öffentliche Daten | Auslösezeitpunkt |
|---|---|---|
FeedStartingEvent | feed, target | Nach der Vorabprüfung von Speicher und Pfad, vor der Converter-Auflösung und dem Staging. |
FeedFinishedEvent | feed, target, path, paths | Nachdem alle erzeugten Dateien erfolgreich veröffentlicht wurden. |
$target enthält bei einer zielbezogenen Generierung den Zielschlüssel und bei einem normalen Feed null. FeedFinishedEvent::$paths enthält alle veröffentlichten Pfade in ihrer Reihenfolge. $path bleibt aus Kompatibilitätsgründen erhalten und enthält immer den ersten Pfad.
Eingabe- und Suchfehler
| Ausnahme | Bedeutung |
|---|---|
InvalidFeedArgumentException | Eine Feed-ID in der Konsole ist ungültig. |
FeedNotFoundException | Für die angeforderte Feed-ID existiert keine Registrierung. |
InvalidExpressionException | Ein Zeitplanausdruck ist ungültig. |
UnknownFeedClassException | Eine konfigurierte Feed-Klasse kann nicht aufgelöst werden. |
UnexpectedClassException | Eine aufgelöste Klasse erfüllt den erwarteten Vertrag nicht. |
Die Zielauswahl verwendet SPL-Ausnahmen. Wenn --target angegeben wird, löst feed:generate eine InvalidArgumentException aus, wenn keine Feed-Registrierungs-ID angegeben wurde, ein Zielschlüssel leer ist oder der ausgewählte Feed HasFeedTargets nicht implementiert. Der Befehl löst eine UnexpectedValueException aus, wenn findTarget() null zurückgibt.
Serialisierungs- und Speicherfehler
| Ausnahme | Bedeutung |
|---|---|
InvalidCsvRowException | Eine CSV-Zeile entspricht nicht dem festgelegten Spaltenschema. |
InvalidCsvValueException | Ein CSV-Feld kann nicht als skalarer Wert serialisiert werden. |
InvalidXmlCDataException | Ein CDATA-Wert ist ungültig. |
InvalidXmlFragmentException | Ein unformatiertes XML-Fragment ist ungültig. |
UnsupportedStorageDiskException | Der ausgewählte Laravel-Datenträger wird nicht zu FilesystemAdapter aufgelöst. |
OpenFeedException | Eine Entwurfsressource kann nicht geöffnet werden. |
WriteFeedException | Die vollständige Ausgabe kann nicht geschrieben werden. |
CloseFeedException | Die Ausgaberessource kann nicht geschlossen werden. |
ResourceMetaException | Erforderliche Stream-Metadaten sind nicht verfügbar. |
FeedGenerationException | Die Generierung ist für eine bestimmte Feed-Klasse fehlgeschlagen. |
FeedGenerationException::getFeed() gibt die Feed-Klasse zurück. getFeedTarget() gibt bei einer zielbezogenen Generierung den Zielschlüssel und bei einem normalen Feed null zurück. Der ursprüngliche Fehler bleibt über getPrevious() verfügbar.
Fangen Sie Ausnahmen nur dort ab, wo die Anwendung Wiederherstellung oder verständlichen Kontext ergänzen kann. Nicht behebbare Generierungsfehler sollte Laravel melden.