abstract class Web extends Assembly

Implementierung einer Web-Anwendung

Diese Klasse kapselt alle Informationen und Methoden einer Webanwendung. Die Klasse ist abstrakt und muss von einer konkreten Anwendung überschrieben werden.

Constants

UUID

Default UUID dieser Klasse

DEFAULTSTORAGEHANDLER

Klassenname des Default-Handlers

LOCATIONS_CLASS

Klasse in der die Locations definiert sind Diese Konstante kann von abgeleiteten Klassen überschrieben werden.

DEFAULTSTORAGEINDEXHANDLER

Klassenname des Default-Handlers dex Indexers

DEFAULT_NAME

Name der Default-Konfigurationsdatei

PLACEHOLDER_CONFIGPATH

Mapping der Methode Alvine\Application\Assembly::getPlaceholderMap

PLACEHOLDER_DEFAULTPATH

Mapping der Methode Alvine\Application\Assembly::getPlaceholderMap

PLACEHOLDER_ASSETSPATH

Mapping der Methode Alvine\Application\Assembly::getPlaceholderMap

PLACEHOLDER_BASEPATH

Mapping der Methode Alvine\Application\Assembly::getPlaceholderMap

PLACEHOLDER_LICENCEPATH

Mapping der Methode Alvine\Application\Assembly::getPlaceholderMap

PLACEHOLDER_DATAPATH

Mapping der Methode Alvine\Application\Assembly::getPlaceholderMap

PLACEHOLDER_CUSTOMISATIONPATH

Mapping der Methode Alvine\Application\Assembly::getPlaceholderMap

PLACEHOLDER_REPOSITORYPATH

Mapping der Methode Alvine\Application\Assembly::getPlaceholderMap

PLACEHOLDER_VENDORPATH

Mapping der Methode Alvine\Application\Assembly::getPlaceholderMap

PLACEHOLDER_RESOURCEPATH

Mapping der Methode Alvine\Application\Assembly::getPlaceholderMap

PLACEHOLDER_LOGPATH

Mapping der Methode Alvine\Application\Assembly::getPlaceholderMap

PLACEHOLDER_TEMPPATH

Mapping der Methode Alvine\Application\Assembly::getPlaceholderMap

PLACEHOLDER_APPLICATIONID

Mapping der Methode Alvine\Application\Assembly::getPlaceholderMap

PLACEHOLDER_LANGUAGE

Mapping der Methode Alvine\Application\Assembly::getPlaceholderMap

Properties

protected Facility $facility from Assembly
protected Node $configuration from Assembly
static protected ObjectMap $instance Einzige Objektinstanz (singelton) der Anwendung from Assembly
protected Locations $locations from Assembly
static protected CacheManager $cacheManager from Assembly
protected View $view from Assembly
protected Examiner $cacheExaminer from Assembly
protected EventQueue> $volatileEventQueues from Assembly
protected Locale $locale from Assembly
protected Manager $storageManager from Assembly
protected SMTPClient $defaultSmtpClient from Assembly
protected Session $session
protected Request $request
protected Route $router
protected Identity $identity
protected Authority> $authorities
protected Cookie> $cookies
protected string $requestID

Methods

__construct(Facility $facility)

Neues Anwendugs-Objekt erstellen.

__destruct()

Anwendung beenden

initEventQueues()

Eventqueues

from Assembly
EventQueue
getEventQueue(Event $class)

Eventqueue für Event holen und wenn noch nicht vorhanden anlegen

from Assembly
subscribeEvent(Subscriber $subscriber, string $eventClass)

Event abonnieren

from Assembly
unsubscribeEvent(Subscriber $subscriber, string $eventClass)

Abmelden

from Assembly
triggerEvent(Event $event)

Event Triggern

from Assembly
bool
shouldBeCached()

Soll die Anwendung cachen

from Assembly
Locale
getLocale()

Lokale der Anwendung

from Assembly
static Assembly
execute(Facility $facility)

Programm ausführen

from Assembly
static Assembly
checkCompatibility(Throwable $e)

Prüpft ob die Kompatibilität eingehalten wurde.

from Assembly
static Assembly|null
getInstance(string $assemblyClass = null)

Instanz ermitteln. Wird keine Instanzklasse angegeben, so wird das aktuelle Objekt in der Instanz-Map verwendet.

from Assembly
boolean|Assembly
validateInstanceCache()

Meßwerte überprüfen

from Assembly
initCacheExaminer()

Instanzprüfung erweitern

boolean
isInstanceValide()

Gültigkeit prüfen

from Assembly
static void
refresh(string $assemblyClass)

Anwendungsklasse aktualisieren

from Assembly
static CacheManager
getCacheManager()

AppCache zur Beschleunigung von Anfragen

from Assembly
loadConfig()

Konfiguration laden

from Assembly
Map
getPlaceholderMap()

Standardplatzhalter der Anwendung

string
replaceEnvironmentPlaceholder(string $string)

Standardplatzhalter der Anwendung

from Assembly
string
getLocationsClass()

No description

from Assembly
getLocations()

Pfade der Anwendung

from Assembly
initDirectories()

No description

from Assembly
Assembly
initSMTPClient()

Mailclient initialisieren

from Assembly
SMTPClient|null
getDefaultSmtpClient()

SMTP-Client

from Assembly
Assembly
initLogger()

Logging initialisieren

from Assembly
getConfiguration()

Konfiguration zurückgeben

from Assembly
string
getConfigurationValue(string $key, string $default = null)

Diese Methode liest einen Konfigurationswert aus.

from Assembly
$this
initPersistenceManager()

Instanz des Storage-Manager holen und Referenz in der Anwendung speichern

from Assembly
initStorage()

Initialisiert die Struktur für den Objektspeicher.

from Assembly
initStorageIndex()

Initialisiert die Struktur für den StorageIndex.

from Assembly
registerStorage(string $className, ObjectStorage $storage)

Ein Storageobjekt registrieren.

from Assembly
unregisterStorage(string $className)

Registrierung für eine Klasse aufheben

from Assembly
Alvine
getObject(string $className, string $id)

Objekt aus dem Storage auslesen

from Assembly
Subset
findObject(string $className, Query $query)

Nach einem Objekt suchen

from Assembly
ObjectStorage
getPersistenceHandler(string $className, string $mode)

Handler für den entsprechenden Speichertyp

from Assembly
Manager
getStorageManager()

Storage-Manager

from Assembly
deleteObject(Alvine $object)

Objekt aus dem Storage löschen

from Assembly
writeObject(Alvine $object)

Objekt in den definierten Speicher schreiben

from Assembly
string
getHashCode()

Diese Methode berechnet einen eindeutigen Wert für eine Anwendung. Da jede Anwendung nur eine Instanz haben kann, muss dieser Wert nur zu Klasse hin eindeutig sein.

from Assembly
init()

Initialisierung der Anwendung

finalize()

Finalisierung

Application
handleTasks()

Abarbeiten der in der Config definierten Tasks

from Assembly
Alvin
setView(View $view)

Neues View setzen

getView()

View

from Assembly
Directory
getCustomisationPath() deprecated

CustomisationPath

from Assembly
Directory
getDataPath() deprecated

Daten

from Assembly
Directory
getRepositoyPath() deprecated

Speicherort für Daten

from Assembly
Directory
getVendorPath() deprecated

Verzeichnis für Fremdanbieterdateien aus dem Backend

from Assembly
Directory
getLicensePath() deprecated

Verzeichnis mit Lizenzen

from Assembly
Directory
getDefaultPath() deprecated

Verzeichnis der Konfigurationsdateien

from Assembly
Directory
getConfigPath() deprecated

Verzeichnis der Konfigurationsdateien

from Assembly
Directory
getAssetPath() deprecated

Assets-Verzeichnis

from Assembly
Directory
getBasePath() deprecated

Basisverzeichnis

from Assembly
Directory
getClassPath() deprecated

Code-Verzeichnis

from Assembly
Directory
getLogPath() deprecated

Verzeichnis für Logdateien

from Assembly
Directory
getResourcePath() deprecated

Verzeichnis mit Resourcen

from Assembly
File
getResourceFile(string $filename)

Resourcen-Datei-Objekt zurückgeben

from Assembly
Web
initLocaleFromHeader(array $localeArray)

Versuchen die Lokale über den Header zu setzen

Web
initLocaleFromQuery(array $localeArray)

Versuchen die Lokale über den Request zu setzen

Web
initLocaleFromRequest(array $localeArray, string $localeString)

Locale initialisieren

Web
initLocaleFromCookie(array $localeArray)

Versuchen die Lokale über ein Cookie zu setzen

initLocale()

Lokale initialisieren

string
getRequestID()

ID des aktuellen Aufrufs (wird von Ignition initialisiert)

Router|null
getRouter()

Router der Anwendung

Web
initRouter()

Router initialisieren

Request
getRequest()

Request

Web
initRequest()

Request initialisieren

User
validateIdentityAgainstAuthorities(string $username, string $password)

Überprüfen des Benutzernamens und des Passwortes

Identity|null
getIdentityFromRequest()

Identität aus Request ermitteln. Es wird nach den POST-Variablen username und password gesucht. Akternativ können diese in der Konfiguration mittels der Eigenschaften

null|Identity
getIdentityFromRequestBody(string $userNameKey, string $passwordKey)

Identität aus dem Body holen

null|Identity
getIdentityFromWWWAuthentification()

Authentifiaction von WWW-Authentification

Web
authenticate()

Diese Methode liest entweder aus der Session oder aus der POST-Variable username den Namen der angefragten Identität aus.

Authority
getAuthority(string $name)

Authority

Authority>
getAuthorities()

Authorities

Web
initAuthority()

Autorität initialisieren

Web
route()

Diese Methode wird im Rahmen der Task-Bearbeitung (wenn nicht anders konfiguriert) aufgerufen und übergibt den Request an die im Routing definierten Presenter.

Web
executeRoute(string $destination)

Ausführen eines Routings

Web
setCookie(Cookie $cookie)

Cookies für den Versand vormerken.

Identity
getIdentity()

Identität der Anwendung

Directory
getWebPath() deprecated

Verzeichnis der Webdateien

Directory
getErrorPath() deprecated

Verzeichnis der Fehlerdateien

Directory
getJSPath() deprecated

Verzeichnis fürJavascript

Directory
getThemePath() deprecated

Verzeichnis der Themes

Directory
getPublicVendorPath() deprecated

Verzeichnis für Fremdanbieterdateien Frontend

Directory
getW3CPath() deprecated

Verzeichnis mit P2P Datei

URI
getBaseURI() deprecated

Basis-URI

boolean
existsSession()

Prüft ob im Request eine Session gesetzt ist.

array
getSessionDefinition()

Session Definition

Session|null
getSession()

Session

Web
initSession()

Lädt eine Session oder erstellt diese neu. Der Name der Klasse und der Name des Cookies, in dem die Session-ID gespeichert wird, kann über die Konfiguration gesteuert werden.

Session
loadSession(string $sessionClass, string $id)

Diese interne Methode wird von Web::initSession() aufgerufen und lädt eine Session aus dem gegebenen Storagesystem. Für andere Storagesysteme muss diese Methode überschrieben werden.

Web
writeSession()

Session schreiben. Für andere Storagesysteme muss diese Methode überschrieben werden.

Details

at line 104
protected __construct(Facility $facility)

Neues Anwendugs-Objekt erstellen.

Der Konstruktor erstellt ein neues Objekt und initialisiert die Systeminstanzen für Environment, Encoding, System und Math. Außerdem wird der Anwendung ein SystemLogger und ein Mailserver zugewiesen.

Parameters

Facility $facility

Exceptions

ConfigurationException

at line 115
__destruct()

Anwendung beenden

in Assembly at line 269
protected Assembly initEventQueues()

Eventqueues

Return Value

Assembly

in Assembly at line 284
protected EventQueue getEventQueue(Event $class)

Eventqueue für Event holen und wenn noch nicht vorhanden anlegen

Parameters

Event $class

Return Value

EventQueue

Exceptions

TypeException

in Assembly at line 307
Assembly subscribeEvent(Subscriber $subscriber, string $eventClass)

Event abonnieren

Parameters

Subscriber $subscriber
string $eventClass

Return Value

Assembly

in Assembly at line 320
Assembly unsubscribeEvent(Subscriber $subscriber, string $eventClass)

Abmelden

Parameters

Subscriber $subscriber
string $eventClass

Return Value

Assembly

in Assembly at line 332
Assembly triggerEvent(Event $event)

Event Triggern

Parameters

Event $event

Return Value

Assembly

in Assembly at line 342
bool shouldBeCached()

Soll die Anwendung cachen

Return Value

bool

in Assembly at line 351
Locale getLocale()

Lokale der Anwendung

Return Value

Locale

in Assembly at line 386
static Assembly execute(Facility $facility)

Programm ausführen

Die execute-Methode sucht nach der gewünschten Anwendung, erstellt ein Objekt der Anwendung, initiert dadurch die Konfiguration und ruft im Anschluß den Taskhandler auf.

Über die optinalen Parameter $namespace und $path können im ersten Aufruf die Anwendungsklassen inititalisiert werden. Bei weiteren Aufrufen, muss dies nicht mehr erfolgen. Der Namespace kann aber auch normal im AutoLoader registriert werden.

Der Task-Handler sorgt dafür, das die in der Konfiguration aufgeführten Task der Reihe nach ausgeführt werden. Durch die Flexibilität der Tasks, können in der konkreten Anwendung unterschiedliche Szenarien implementiert werden.

application.task=init
application.task=render

Über den Anwendungsmodus können bestimmte Regeln definiert werden. So wird der Anwendungscache nur im Produktivsystem aktiviert.

Parameters

Facility $facility

Return Value

Assembly Instanz der Anwendung

Exceptions

AssemblyNotFoundException
InvalidArgumentException

in Assembly at line 467
static protected Assembly checkCompatibility(Throwable $e)

Prüpft ob die Kompatibilität eingehalten wurde.

Parameters

Throwable $e

Return Value

Assembly

Exceptions

Throwable

in Assembly at line 507
static Assembly|null getInstance(string $assemblyClass = null)

Instanz ermitteln. Wird keine Instanzklasse angegeben, so wird das aktuelle Objekt in der Instanz-Map verwendet.

Wird kein Assembly gefunden, so wird null zurückgegeben.

Parameters

string $assemblyClass

Return Value

Assembly|null

in Assembly at line 527
boolean|Assembly validateInstanceCache()

Meßwerte überprüfen

Mit dieser Methode kann die Anwendung prüfen, ob die zwischengespeicherte Anwendung noch aktuell ist. Abgeleitetet Anwendungen müssen die Methode Application::initCacheExaminer() um die Werte erweitern, die für einen aktuelle Anwendung wichtig sind.

Return Value

boolean|Assembly

Exceptions

InvalidProbeException

at line 308
protected Assembly initCacheExaminer()

Instanzprüfung erweitern

Die Webklasse überwacht im Standard zusätzlich zur Anwendungskonfiguration noch das routing-Verzeichnis.

Ist ein anderes Verhalten gewünscht, oder wird der Default-Router nicht verwendet, so muss diese Methode von der konkreten Klasse überschrieben werden.

Return Value

Assembly Dieses Objekt

in Assembly at line 574
boolean isInstanceValide()

Gültigkeit prüfen

Prüfen ob die Daten der Instanz noch gültig sind.

Return Value

boolean Ergebnis

in Assembly at line 593
static void refresh(string $assemblyClass)

Anwendungsklasse aktualisieren

Mit dieser Methode wird der Zwischenspeicher der Anwendungsklasse geleert. Beim nächsten Aufruf von Assembly::execute wird das Objekt für diese Klasse neu erstellt.

Parameters

string $assemblyClass

Return Value

void

Exceptions

AssemblyNotFoundException

in Assembly at line 639
static CacheManager getCacheManager()

AppCache zur Beschleunigung von Anfragen

Diese Methode gibt den Anwendungscache zurück. Im Standard ist das temporäre Verzeichnis definiert. Dies sollte in der abgeleiteten Klasse durch eine schnellere Variante (z.B. Memcache) ersetzt werden.

Für Testzwecke und während der Entwicklung einer Anwendung kann diese Methode null zurückgeben. In diesem Fall wird kein Anwendungscache verwendet.

Return Value

CacheManager CacheManager

in Assembly at line 662
protected Assembly loadConfig()

Konfiguration laden

Diese Methode lädt die Konfiguration der Anwendung. Je nach Dateierweiterung wird eine von \Alvine\Types\Properties abgeleitete Klasse geladen. Für die Erweiterung .properties wird ein Objekt der Klasse \Alvine\Application\Configuration\Properties erstellt, für eine Endung .txt würde die Klasse \Alvine\Application\Configuration\Text initiert werden.

Return Value

Assembly

Exceptions

ConfigurationException
NotFoundException

at line 269
Map getPlaceholderMap()

Standardplatzhalter der Anwendung

Return Value

Map Systemplatzhalter

in Assembly at line 762
string replaceEnvironmentPlaceholder(string $string)

Standardplatzhalter der Anwendung

Parameters

string $string Inhalt

Return Value

string Inhalt mit ersetzten Platzhaltern

at line 684
protected Assembly initLocationsInstance()

Neue Instanz

Return Value

Assembly

in Assembly at line 784
protected string getLocationsClass()

Return Value

string

in Assembly at line 793
Locations getLocations()

Pfade der Anwendung

Return Value

Locations

in Assembly at line 823
protected initDirectories()

in Assembly at line 841
protected Assembly initSMTPClient()

Mailclient initialisieren

Initialisierung des Standard-Mail-Clients. Die Konfiguration erfolgt über die Eigenschaften application.mail.delivery.** (siehe auch assembly.config)

application.mail.delivery.default.class Klasse, die den Versand übernimmt (von SMTPClient abgeleitet) application.mail.delivery.default.server IP, oder Hostname des Mailservers (Standard ist localhost) application.mail.delivery.default.port IP-Port des SMTP-Servers (Standard ist 25)

Return Value

Assembly Dieses Objekt

in Assembly at line 891
SMTPClient|null getDefaultSmtpClient()

SMTP-Client

Return Value

SMTPClient|null

in Assembly at line 905
protected Assembly initLogger()

Logging initialisieren

Inititalisierung des Standardloggers für das Logging. Die Konfiguration erfolgt über die Eigenschaften application.logging.**. Der Logger muß von der Klasse \Alvine\Util\Logging\Logger abgeleitet sein. Für die Verarbeitung können die Handler über die Konfigurationsschlüssel

Return Value

Assembly Dieses Objekt

in Assembly at line 958
Properties getConfiguration()

Konfiguration zurückgeben

Liefert eine Kopie der Konfigurations. Änderungen in dem Objekt haben keine Auswirkungen auf die Anwenndung.

Return Value

Properties

in Assembly at line 975
string getConfigurationValue(string $key, string $default = null)

Diese Methode liest einen Konfigurationswert aus.

Ist der Schlüssel nicht angegeben, so wird der Default-Wert zurückgegeben.

Wird ein Teilschlüssel angegeben, so wird ebenfalls der Defaultwert zurückgegeben.

Parameters

string $key Schlüssel
string $default Wert

Return Value

string Konfigurationswert

in Assembly at line 1018
protected $this initPersistenceManager()

Instanz des Storage-Manager holen und Referenz in der Anwendung speichern

Return Value

$this

in Assembly at line 1028
protected Assembly initStorage()

Initialisiert die Struktur für den Objektspeicher.

Return Value

Assembly

in Assembly at line 1060
Assembly initStorageIndex()

Initialisiert die Struktur für den StorageIndex.

Return Value

Assembly

in Assembly at line 1092
Assembly registerStorage(string $className, ObjectStorage $storage)

Ein Storageobjekt registrieren.

Parameters

string $className Für diese Klasse oder das Interface gilt das Storageobjekt
ObjectStorage $storage Storageobjekt

Return Value

Assembly Dieses Objekt

in Assembly at line 1104
Assembly unregisterStorage(string $className)

Registrierung für eine Klasse aufheben

Parameters

string $className Name der Klasse

Return Value

Assembly Dieses Objekt

in Assembly at line 1125
Alvine getObject(string $className, string $id)

Objekt aus dem Storage auslesen

Diese Methode liest ein Objekt aus dem in der Konfiguration definierten Speicher aus. Der Klassenname muss mit führendem \ und vollem Namensraum angegeben werden.

Parameters

string $className Name der Klasse
string $id ID des Objektes

Return Value

Alvine Gespeicherte Klasse

in Assembly at line 1145
Subset findObject(string $className, Query $query)

Nach einem Objekt suchen

Die Suche erfolgt in dem in der Konfiguration definierten Indexer. Der Indexer gibt eine Ergebnismenge zurück. Diese Methode holt sich die ID des Ergebnisses und verwendet die Methode getObject um das echte Objekt zu laden.

Parameters

string $className Klassenname
Query $query Query

Return Value

Subset Ergebnismenge

Exceptions

NullException Es wurde kein Handler für den Typ gefunden
FindException Im Ergebnis wurde ein Eintrag ohne UUID oder Type gefunden. Wahrscheinlich ist der Index nicht mehr konsistent.

in Assembly at line 1159
protected ObjectStorage getPersistenceHandler(string $className, string $mode)

Handler für den entsprechenden Speichertyp

Parameters

string $className Klassenname
string $mode Mode für die Exception

Return Value

ObjectStorage

Exceptions

NullException Nicht gefunden

in Assembly at line 1168
Manager getStorageManager()

Storage-Manager

Return Value

Manager

in Assembly at line 1182
Assembly deleteObject(Alvine $object)

Objekt aus dem Storage löschen

Diese Methode löscht ein Objekt aus dem in der Konfiguration definierten Speicher.

Parameters

Alvine $object zu löschende Objekt

Return Value

Assembly Dieses Objekt

in Assembly at line 1197
Assembly writeObject(Alvine $object)

Objekt in den definierten Speicher schreiben

Das übergebene Objekt wird serialisierten und in den angegebenen Speicher geschrieben.

Parameters

Alvine $object zu speicherndes Objekt

Return Value

Assembly Dieses Objekt

in Assembly at line 1212
string getHashCode()

Diese Methode berechnet einen eindeutigen Wert für eine Anwendung. Da jede Anwendung nur eine Instanz haben kann, muss dieser Wert nur zu Klasse hin eindeutig sein.

Der Anwendungscache verwendet die ID um die Instanz der Anwendung zwischenzuspeichern. Diese Methode sollte deshalb von abgeleiteten Klassen nicht überschrieben werden.

Return Value

string Hashwert des Objektes

at line 388
protected Assembly init()

Initialisierung der Anwendung

Diese Methode wird im Rahmen der Task-Bearbeitung (wenn nicht anders konfiguriert) aufgerufen und initialisiert die Anwendung

Return Value

Assembly

at line 700
protected Assembly finalize()

Finalisierung

Diese Methode wird im Rahmen der Task-Bearbeitung (wenn nicht anders konfiguriert) aufgerufen und schließt die Bearbeitung ab und übergibt alle notwendigen Daten zurück an die PHP-Engine

Return Value

Assembly Dieses Objekt

in Assembly at line 1245
protected Application handleTasks()

Abarbeiten der in der Config definierten Tasks

Return Value

Application Dieses Objekt

Exceptions

TaskNotFoundException Der Task wurde nicht gefunden.

at line 804
Alvin setView(View $view)

Neues View setzen

Parameters

View $view View

Return Value

Alvin e\Application\Application Dieses Objekt

in Assembly at line 1295
View getView()

View

Return Value

View View

in Assembly at line 1306
Directory getCustomisationPath() deprecated

deprecated since version 20200707

CustomisationPath

in Assembly at line 1317
Directory getDataPath() deprecated

deprecated since version 20200707

Daten

in Assembly at line 1328
Directory getRepositoyPath() deprecated

deprecated since version 20200707

Speicherort für Daten

in Assembly at line 1339
Directory getVendorPath() deprecated

deprecated since version 20200707

Verzeichnis für Fremdanbieterdateien aus dem Backend

in Assembly at line 1350
Directory getLicensePath() deprecated

deprecated since version 20200707

Verzeichnis mit Lizenzen

in Assembly at line 1361
Directory getDefaultPath() deprecated

deprecated since version 20200707

Verzeichnis der Konfigurationsdateien

in Assembly at line 1372
Directory getConfigPath() deprecated

deprecated since version 20200707

Verzeichnis der Konfigurationsdateien

in Assembly at line 1383
Directory getAssetPath() deprecated

deprecated since version 20200707

Assets-Verzeichnis

in Assembly at line 1394
Directory getBasePath() deprecated

deprecated since version 20200707

Basisverzeichnis

in Assembly at line 1405
Directory getClassPath() deprecated

deprecated since version 20200707

Code-Verzeichnis

in Assembly at line 1416
Directory getLogPath() deprecated

deprecated since version 20200707

Verzeichnis für Logdateien

in Assembly at line 1427
Directory getResourcePath() deprecated

deprecated since version 20200707

Verzeichnis mit Resourcen

in Assembly at line 1454
File getResourceFile(string $filename)

Resourcen-Datei-Objekt zurückgeben

Die Methode sucht entweder im Resourcen-Verzeichnis der Anwendung oder im Absoluten-Pfad nach der Resourcen-Datei. Ist der Dateiname eine http-Resource so wird die Datei geladen und in eine temporäre Datei gespeichert. Dieses Dateiobjekt wird zurückgegeben.

// Temporäre Datei mit dme Inhalt von www.example.com
$this->getResourceFile('http://www.example.com/');
// Absolute Datei auf einem Windows-System
$this->getResourceFile('file://c:\temp\myfile.txt');
// Absolute Datei auf einem Unix-System (ohne file://)
$this->getResourceFile('/tmp/myfile.txt');
// Absolute Datei auf einem Unix-System (mit file://)
$this->getResourceFile('file:///tmp/myfile.txt');

Parameters

string $filename Dateiname oder URI

Return Value

File

at line 130
protected Web initLocaleFromHeader(array $localeArray)

Versuchen die Lokale über den Header zu setzen

Parameters

array $localeArray

Return Value

Web

at line 155
protected Web initLocaleFromQuery(array $localeArray)

Versuchen die Lokale über den Request zu setzen

Parameters

array $localeArray

Return Value

Web

at line 180
protected Web initLocaleFromRequest(array $localeArray, string $localeString)

Locale initialisieren

Parameters

array $localeArray
string $localeString Sprache

Return Value

Web

at line 195
protected Web initLocaleFromCookie(array $localeArray)

Versuchen die Lokale über ein Cookie zu setzen

Parameters

array $localeArray

Return Value

Web

at line 225
Assembly initLocale()

Lokale initialisieren

Die Lokale kommt aus dem Request. Wird keine passende Locale gefunden, so wird eine ConfigurationException geworfen.

In der Anwendungskonfiguration muss application.locale.languages definirt sein. Über den Schlüssel application.locale.language.requestkey kann ein Parameter definiert werden, der für die Sprache zuständig ist.

# kommagetrennte Liste mit den unterstützen Sprachen
application.locale.languages=de,de_CH,en

# Schlüssel für das Setzen der Lokale über einen Parameter
application.locale.language.parameterkey=language

Auswertereihenfolge: Query -> Cookie -> Header

Return Value

Assembly Dieses Objekt

Exceptions

ConfigurationException

at line 289
string getRequestID()

ID des aktuellen Aufrufs (wird von Ignition initialisiert)

Return Value

string

at line 338
Router|null getRouter()

Router der Anwendung

Vor dem Aufruf von getRouter muss Web::initRouter() aufgerufen werden. Web::initRouter() wird in der Regel von Web::init() aufgerufen.

Return Value

Router|null null, wenn noch nicht initialisiert

at line 349
protected Web initRouter()

Router initialisieren

Return Value

Web Dieses Objekt

Exceptions

ConfigurationException Kein Router definiert

at line 375
Request getRequest()

Request

Rückgabe des von der PHP-Enging übergebenen Daten in Form eines Request-Objektes

Return Value

Request Request

at line 419
Web initRequest()

Request initialisieren

Initialisieren eines Requests

Return Value

Web Dieses Objekt

at line 432
protected User validateIdentityAgainstAuthorities(string $username, string $password)

Überprüfen des Benutzernamens und des Passwortes

Parameters

string $username
string $password

Return Value

User

at line 465
Identity|null getIdentityFromRequest()

Identität aus Request ermitteln. Es wird nach den POST-Variablen username und password gesucht. Akternativ können diese in der Konfiguration mittels der Eigenschaften

  • application.web.authentication.identity.key und
  • application.web.authentication.identity.password

überschrieben werden.

Return Value

Identity|null

at line 502
protected null|Identity getIdentityFromRequestBody(string $userNameKey, string $passwordKey)

Identität aus dem Body holen

Parameters

string $userNameKey
string $passwordKey

Return Value

null|Identity

at line 517
protected null|Identity getIdentityFromWWWAuthentification()

Authentifiaction von WWW-Authentification

Return Value

null|Identity

See also

http://php.net/manual/de/features.http-auth.php

at line 542
protected Web authenticate()

Diese Methode liest entweder aus der Session oder aus der POST-Variable username den Namen der angefragten Identität aus.

Der Schlüssel für die verwendete POST-Variable kann über die Konfigurationseinstellung application.web.authentication.identity.key definiert werden. Wurden keine Werte definiert, so wird username und password verwendet.

Wurde keine Identität angegeben, so wird ein Anonymous-Objekt vom Typ \Alvine\Security\Authentication\Anonymous inititalisiert.

Return Value

Web Dieses Objekt

at line 579
Authority getAuthority(string $name)

Authority

Parameters

string $name

Return Value

Authority

at line 588
Authority> getAuthorities()

Authorities

Return Value

Authority>

at line 606
Web initAuthority()

Autorität initialisieren

Konfigurationsvariable: application.web.authentication.authority

Hinweis: Die Identität der Anwendung wird nicht zwangsläufig in der Session gespeichert. Einfache GET-Request brauchen nur die Authorisation und nicht eine Session!

Return Value

Web Dieses Objekt

Exceptions

ConfigurationException Keine Konfiguration gefunden

at line 637
protected Web route()

Diese Methode wird im Rahmen der Task-Bearbeitung (wenn nicht anders konfiguriert) aufgerufen und übergibt den Request an die im Routing definierten Presenter.

Wurde das Routing bereits durchgeführt, z.B. durch einen Authentifikationsfehler, so wird kein neues Routing gestartet.

Return Value

Web Dieses Objekt

Exceptions

RouteNotFoundException Wenn kein zutreffendes Routing gefunden wurde

at line 669
Web executeRoute(string $destination)

Ausführen eines Routings

Parameters

string $destination Name der Route

Return Value

Web Dieses Objekte

at line 774
Web setCookie(Cookie $cookie)

Cookies für den Versand vormerken.

Parameters

Cookie $cookie Cookie

Return Value

Web

at line 792
Identity getIdentity()

Identität der Anwendung

Hinweis: Die Identität der Anwendung wird nicht zwangsläufig in der Session gespeichert. Diese Zuweisung erfolgt zum Beispiel über den Authentication-Presenter.

Der Grund für diese gesonderte Zuweisung ist, das nicht jeder Request eine Session benötigt und bekommt. Ein einfacher Request kommt ohne Session aus und spart somit Resourcen.

Return Value

Identity Identität

at line 816
Directory getWebPath() deprecated

deprecated since version 20200707

Verzeichnis der Webdateien

at line 827
Directory getErrorPath() deprecated

deprecated since version 20200707

Verzeichnis der Fehlerdateien

at line 838
Directory getJSPath() deprecated

deprecated since version 20200707

Verzeichnis fürJavascript

at line 849
Directory getThemePath() deprecated

deprecated since version 20200707

Verzeichnis der Themes

at line 860
Directory getPublicVendorPath() deprecated

deprecated since version 20200707

Verzeichnis für Fremdanbieterdateien Frontend

at line 871
Directory getW3CPath() deprecated

deprecated since version 20200707

Verzeichnis mit P2P Datei

at line 882
URI getBaseURI() deprecated

deprecated since version 20200707

Basis-URI

at line 892
boolean existsSession()

Prüft ob im Request eine Session gesetzt ist.

Return Value

boolean true, wenn eine Session gesetzt ist.

at line 904
arraygetSessionDefinition()

Session Definition

Nur zur internen Verwendung in dieser Klasse Der Aufbau der Struktur kann sich jederzeit ändern.

Return Value

array string, string, string> Definition einer Session (Name, Klasse, Domain, Pfad)

at line 930
Session|null getSession()

Session

Return Value

Session|null Session

at line 950
Web initSession()

Lädt eine Session oder erstellt diese neu. Der Name der Klasse und der Name des Cookies, in dem die Session-ID gespeichert wird, kann über die Konfiguration gesteuert werden.

Werden keie Konfigurationswerte verwendet, so wird die Klasse \Alvine\Net\Session\Session, der Cookie-Name sid und eine Gültigkeit von einer Stunde verwendet.

Die Session wird aus dem in der Anwendung definierten Speicher abgelegt und aus diesem geladen. Ist keine Session verfügbar, so wird eine neue Session erstellt.

Return Value

Web Dieses Objekt

at line 1011
protected Session loadSession(string $sessionClass, string $id)

Diese interne Methode wird von Web::initSession() aufgerufen und lädt eine Session aus dem gegebenen Storagesystem. Für andere Storagesysteme muss diese Methode überschrieben werden.

Parameters

string $sessionClass
string $id

Return Value

Session

at line 1028
protected Web writeSession()

Session schreiben. Für andere Storagesysteme muss diese Methode überschrieben werden.

Hinweis: Die Identität der Anwendung wird nicht zwangsläufig in der Session gespeichert. Diese Zuweisung muss gesondert erfolgen (zum Beispiel über den Authentifcator-Presenter).

Der Grund für diese gesonderte Zuweisung ist, das nicht jeder Request eine Session benötigt und nicht jede Session die Indentitäts-Informationen benötigt.

Return Value

Web