abstract class Presenter extends Presenter

Web-Presenter für die Darstellung von Webseiten

Diese Spezialklasse bildet die Grundlage aller Presenter für Alvine-Anwendungen und regelt die Abfolge der einzelnen Befehle.

Properties

protected View $view from Presenter
protected Assembly $assembly from Presenter
protected boolean $initApplicationView from Presenter
protected Route $route
protected PropertyText $resourceText

Methods

__construct(Assembly $assembly)

Neuer Presenter

from Presenter
init()

Initialisieren des Presenters

execute(ParameterMap $parameter)

Nicht definierte Methode ausführen

disableApplicationViewInit()

Anwendungsview nicht initialisieren

from Presenter
enableApplicationViewInit()

Anwendungsview initialisieren

from Presenter
initView(View $view)

View setzen

from Presenter
getView()

View des Presenters

from Presenter
getAssembly()

Assembly es Presenters

from Presenter
ParameterMap
getExecuteParameter(Route $routeObj, ParameterMap $parameter, string $method, URI $route)

Diese Methode definiert welche Parameter im Presenter zur Verfügung stehen sollen.

initResourceText(string $resource = null, Directory $basepath = null)

Ressourcentexte initialisieren

string
getText(string $text, string $default = null, string $pluralKey = null)

Lokalisierten Text holen

getRoute()

Route

setRoute(Route $route)

Route setzen

Request
getRequest()

Request

getViewFromRouteID(string $routeID, ParameterMap $parameter)

Diese Methode holt einen View der mit einer Route verbunden ist.

getViewFromRoute(string $route)

Diese Methode führt eine Route aus und gibt den Ergebnisview zurück. Ist in der Anwendung kein View definiert Assembly::getView() liefert null, so setzt diese Methode eine View vom Typ HTTPError

MIMEType
getMediaTypeOrNullForTheResponse(array $allowdMimeTypes = null)

Diese Methode prüft in der Konfiguration der route, ob bestimmte Ausgabetypen erlaubt sind. Gegen diese wird das Ergebnis des Aufrufs von getResponseMediaType() geprüft.

MediaType
getResponseMediaType() deprecated

Medientyp für die Rückgabe ermitteln

initErrorView(StatusCode $statusCode, MIMEType $mimetype = null, Dataset $response = null, string $message = null) deprecated

Fehler-View setzen

Details

in Presenter at line 57
__construct(Assembly $assembly)

Neuer Presenter

Parameters

Assembly $assembly

at line 55
protected Presenter init()

Initialisieren des Presenters

Return Value

Presenter

at line 176
Presenter execute(ParameterMap $parameter)

Nicht definierte Methode ausführen

Diese Methode erstellt die Antwort auf nicht definierte Methoden aufrufe und gibt einen 501 (Method Not Implemented) zurück.

Parameters

ParameterMap $parameter

Return Value

Presenter

in Presenter at line 91
Presenter disableApplicationViewInit()

Anwendungsview nicht initialisieren

Return Value

Presenter

in Presenter at line 101
Presenter enableApplicationViewInit()

Anwendungsview initialisieren

Return Value

Presenter

in Presenter at line 119
protected Presenter initView(View $view)

View setzen

View setzen und das View auch an die Anwendung weiterreichen. Ist self::initApplicationView gleich true so wird die Methode Assembly::initView aufgerufen und der Anwendungsview gesetzt.

Parameters

View $view View

Return Value

Presenter

in Presenter at line 132
View getView()

View des Presenters

Return Value

View View des Presenters

in Presenter at line 141
Assembly getAssembly()

Assembly es Presenters

Return Value

Assembly

at line 217
ParameterMap getExecuteParameter(Route $routeObj, ParameterMap $parameter, string $method, URI $route)

Diese Methode definiert welche Parameter im Presenter zur Verfügung stehen sollen.

Parameters

Route $routeObj Route-Objekt
ParameterMap $parameter Parameter der Route
string $method HTTP-Verb
URI $route Aufgerufene URI

Return Value

ParameterMap

at line 84
protected DefaultPresenter initResourceText(string $resource = null, Directory $basepath = null)

Ressourcentexte initialisieren

Die Locale wird aus der Anwendung geholt

Parameters

string $resource
Directory $basepath

Return Value

DefaultPresenter

at line 137
string getText(string $text, string $default = null, string $pluralKey = null)

Lokalisierten Text holen

Beispiele wenn der Schlüssel nicht gefunden wird:

// Lokalisierung mit Default-Wert
Presenter::getText('my.key::name=Hans', 'Hallo!');
-> Hallo!

// Wird kein Default übergeben wird der Schlüssel ausgegeben
Presenter::getText('my.key::name=Hans');
-> my.key::name=Hans

Parameters

string $text Textvorlage in der Form Schlüssel::key1=value1::key2=value2....
string $default Defaultwert
string $pluralKey Name des Schlüssels der Mehrzahlregel

Return Value

string lokalisierter Text

at line 150
Route getRoute()

Route

Return Value

Route $route

at line 161
Presenter setRoute(Route $route)

Route setzen

Parameters

Route $route

Return Value

Presenter

at line 201
Request getRequest()

Request

Return Value

Request

at line 233
View getViewFromRouteID(string $routeID, ParameterMap $parameter)

Diese Methode holt einen View der mit einer Route verbunden ist.

Parameters

string $routeID Routen-ID
ParameterMap $parameter Parameter

Return Value

View

at line 282
View getViewFromRoute(string $route)

Diese Methode führt eine Route aus und gibt den Ergebnisview zurück. Ist in der Anwendung kein View definiert Assembly::getView() liefert null, so setzt diese Methode eine View vom Typ HTTPError

Parameters

string $route Auszuführenden Routen (nicht die ID)

Return Value

View

at line 329
protected MIMEType getMediaTypeOrNullForTheResponse(array $allowdMimeTypes = null)

Diese Methode prüft in der Konfiguration der route, ob bestimmte Ausgabetypen erlaubt sind. Gegen diese wird das Ergebnis des Aufrufs von getResponseMediaType() geprüft.

Falls kein Parameter übergeben wird, aber eine Route hinterlegt ist, so wird aus der Konfiguration der Route foklgender Block ausgelesen

<configuration> <!-- erlaubte Mimetypes --> <mimetypes> <!-- Erlaubte Mimetypes: json --> <allowed>application/xml</allowed> </mimetypes> </configuration>

Parameters

array $allowdMimeTypes | \null $allowdMimeTypes Vom Presenter erlaubt

Return Value

MIMEType | null

at line 374
MediaType getResponseMediaType() deprecated

deprecated since 20171027

Medientyp für die Rückgabe ermitteln

Versteht der Client HTML, so wird HTML zurückgegeben, ansosten wird auf JSON oder XML geprüft. Unterstützt der Client keine Codierung wird text/html angenommen.

Return Value

MediaType

at line 390
protected Presenter initErrorView(StatusCode $statusCode, MIMEType $mimetype = null, Dataset $response = null, string $message = null) deprecated

deprecated since 20171027

Fehler-View setzen

Parameters

StatusCode $statusCode
MIMEType $mimetype
Dataset $response Daten für den MimeType Json
string $message Fehlermeldung

Return Value

Presenter