...
Codeblock | ||
---|---|---|
| ||
<?php namespace brandbox\pluginType\pluginName\lib\request { use brandbox\admin\plugin; use brandbox\pluginType\pluginName; class vcard extends plugin\lib\requestAbstract { /** * @param pluginName\lib\entity\pluginNamePerson $person * * @return pluginName\lib\map\vcard */ public function getByEntity($person) { return $this ->map() ->from($person) ->to(pluginName\lib\map\vcard::class) ; } } } ?> |
Folgende Methoden wurden in diesem Beispiel genutzt:
Methode | Beschreibung |
---|---|
| Legt die Datenquelle fest. Dies kann entweder ein instantiiertes Objekt oder ein Array sein. Wird zusätzlich der Parameter |
| Führt das Mapping auf Basis der festgelegten Informationen durch und gibt das resultierende Objekt, welches über den Parameter |
Mapping auf Entities
Muss von einem Array oder Objekt auf ein Datenbank-Entity gemapped werden, so sollte die Mapping-Klasse \brandbox\component\mapping\lib\map\mapEntity
genutzt werden. Die wird mithilfe der Methode mapBuilderInterface::withMap($map)
festgelegt.
...
In alle Mapping-Vorgänge kann auf verschiedenste Weise eingegriffen werden. Die folgenden Methoden stehen hierfür zur Verfügung und können vor dem Aufruf von mapBuilderInterface::to($output)
eingesetzt werden.
Methode | Beschreibung | ||||
---|---|---|---|---|---|
| Setzt die Mapping-Klasse für den aktuellen Mapping-Vorgang. Hier kann entweder ein Klassenname oder ein instantiiertes Objekt angegeben werden. Mapping-Klassen müssen das o.g. mapInterface implementieren und generische oder spezifische Mapping-Methoden bereitstellen. $withSource kann verwendet werden um in der Mapping-Methode nicht die Property rein gereicht zu bekommen sondern das gesamte Quellobjekt. | ||||
| Zwischen Quelle und Ziel können sich die Property-Namen unterscheiden, obwohl die gleichen Daten enthalten sein sollen. Hierfür kann diese Methode genutzt werden. Der Parameter $target gibt den Property-Namen im Zielobjekt an und der Parameter $source den Property-Namen im Quellobjekt. Beispiel
|
| |||||
| Mithilfe dieser Methode können statische Werte in bestimmte Properties im Zielobjekt eingefügt werden. Hierbei wird das eigentliche Mapping umgangen und der angegebene Wert genutzt. | ||||
| Mithilfe dieser Methode kann für eine bestimmte Property Code außerhalb der Mapping-Klasse aufgerufen werden. Auch kann hier, wie bei Beispiel
|
|
Eigene Mapping-Klassen nutzen
...