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);