OpenXE/classes/Core/Exception/docs/index.md

32 lines
1.2 KiB
Markdown
Raw Normal View History

2021-05-21 08:49:41 +02:00
# Exceptions
Alle Exceptions im `classes`-Bereich implementieren das `XentralExceptionInterface`.
Jeder der vier Bereich hat ein eigenes `ExceptionInterface`. Jedes der Interfaces ist vom `XentralExceptionInterface`
abgeleitet.
* Core > `CoreExceptionInterface`
* Components > `ComponentExceptionInterface`
* Modules > `ModuleExceptionInterface`
* Widgets > `WidgetExceptionInterface`
Jedes Modul, jede Komponente und jedes Widget hat wiederum ein eigenes `ExceptionInterface`,
z.b. das `HttpExceptionInterface` der Http-Komponente. Dieses Interface extended das entsprechende `ExceptionInterface`
aus seinem Bereich.
Alle Exceptions in einem Modul/Komponente/Widget implementieren das `ExceptionInterface` des Moduls/Komponente/Widget.
Alle Exceptions sind von einer `SplException` abgeleitet, z.B.: `RuntimeException`
###### Beispiel Exception-Baum
```
Xentral\Core\Exception\XentralExceptionInterface
└─ Xentral\Core\Exception\ComponentExceptionInterface
└─ Xentral\Components\Http\Exception\HttpExceptionInterface
└─ Xentral\Components\Http\Exception\MethodNotAllowedException
└─ RuntimeException
└─ Exception
```