RouteParser
class RouteParser extends Parser
Der Parser lädt eine Route aus einer einfachen Textdatei mit der Endung .route. Der Aufbau der Textdatei setzt sich aus fünf Spalten zusammen.
1 Die HTTP Methode oder ANY 2 Der Regex zum Prüfen der URL 3 Der Klassenname des Presenters 4 Die ID des Route-Objekts (Erlaubte Zeichen sind A-Z, 0-9, -) 5 Optionale Parameter in der Form key1=value,key2=value,key3="va lue"
Es können weitere Dateien eingebunden werden. Dazu muss das Schlüsselwort INCLUDE verwendet werden.
1 INCLUDE 2 externe Routingtabelle 3 optionale Eigenschaftsdatei
# ROUTING-TABLE
# Laden einer Seite
GET /page/home \Application\App\Web\Page 550e8400-e29b-11d4-a716-446655440000 id:'home'
GET /page/{id} \Application\App\Web\Page 550e8400-e29b-11d4-a716-446655440001
POST /page/{id} \Application\App\Web\Page 550e8400-e29b-11d4-a716-446655440002 name:'neue Seite'
# Einbinden anderer Routingtabellen mit einer Propertydatei
INCLUDE myRouting.xml detail.properties
# Einbinden anderer Routingtabellen mit einer Propertydatei
INCLUDE myrouting.xml
# Einbinden anderer Routingtabellen aus einem Verzeichnis
INCLUDE my/directory
# Einbinden einer Route aus einem Phar-Archive
# Das Phar-Archive muss aber bereits eingebunden worden sein.
INCLUDE phar://myphar.phar/config/route/my.xml
Constants
SUBDIR |
|
Properties
protected File | $file | from Parser | |
protected Directory | $parsedRouteDirectory | from Parser | |
protected Collection | $router | from Parser |
Methods
Standardpfad in dem die erstellten Routen abgelegt werden.
Route erstellen
No description
Route erstellen
Details
in Parser at line 73
protected
__construct(Collection $router, File $file)
RouteParser erstellen
Anhand der Dateierweiterung wird ein Router bestimmt und die übergebene Datei geparsed.
in Parser at line 89
static Directory
getParsedRoutePath()
Standardpfad in dem die erstellten Routen abgelegt werden.
in Parser at line 97
$this
clear()
at line 81
Router
update()
Routingtabelle einlesen
in Parser at line 128
static Parser
getParser(Collection $router, File $file)
Parser bestimmen
An der Dateierweiterung wird die Parser-Klasse bestimmt. Die Route test.xml wird durch den XmlParser verarbeitet.
in Parser at line 158
static protected Route
createRoute(string $method, string $pattern, string $presenter, string $id, string $class = null)
Route erstellen
in Parser at line 180
protected File
writeParsedStructure(string $source, string $extension = null)
at line 101
protected RouteParser
updateFromFile(FileInputStream $file)
at line 187
protected Router
getRouteFromString(string $line)
Route erstellen
Die übergebene Zeichenkette wird mittels RegEx zerlegt und eine Route hinzugefügt.