Konfiguration¶
Über die Methode DataSource::getInstanceFromProperties()
lässt sich die Datenquelle über Eigenschaften - zum Beispiel
aus einer Property-Datei - konfigurieren.
# Uniform Resource Identifier der Datenquelle
uri=mongodb://example.com:1425/alvine/object
Eigenschaften¶
Eigenschaft | Beschreibung | Beispiel |
---|---|---|
uri | URI der Datenquelle | mongodb://example.com:1425/alvine/object |
URI¶
Die URI hat den klassischen Aufbau aus Protokoll, Server, Port, Tabelle und Collection
mongodb://example.com:1425/alvine/object
┃ ┃ ┃ ┃ ┃
┃ ┃ ┃ ┃ ┗━━━ Name der Collection (optional)
┃ ┃ ┃ ┗━━━ Name der Tabelle (optional)
┃ ┃ ┗━━━ Port
┃ ┗━━━ Server
┗━━━ Protokoll
Das Protokoll muss immer mongodb sein, ein anderes Protokoll führt zu einer \Alvine\Persistence\DataObjectException
Exception.
Wird kein Server, Port, Datenbank oder die zu verwendende Collection angegeben, so werden die Konstanten DataSource::DEFAULTSERVER
,
DataSource::DEFAULTPORT
, DataSource::DEFAULTDATABASE
und DataSource::DEFAULTCOLLECTION
mit dem Wert object
verwendet.
Beispiel¶
Über folgende Anweisungen werden erst die Eigenschaften eingelesen und im Anschluß das Datenobjekt erstellt.
// Eigenschaftsdatei definieren
$file=new \Alvine\IO\File\File('datasource.properties', new \Alvine\IO\File\Directory(__DIR__));
// Eigenschaften einlesen
$properties=new \Alvine\Types\Configuration\Properties($file);
// Datenquelle erstellen
$source=\Alvine\Persistence\Provider\MongoDB\DataSource::getInstanceFromProperties($properties);