trait DataImplementation

Die DataImplementation stellt eine Standard-Implementierung der Model-Schnittstelle für ein Modell, dass mit den Data-Presenter zusammenarbeitet bereit.

Das eigene Modell muss dabei nur dieses Trait per use Statement einbinden und über die Methode getModelMapping() den Zugriff definieren.

protected function getModelMapping() {
   return [
      // Feld, Index-Feld,  Pflichtangabe, Name des Feldes (SQL), Vorgabewert (Default)
      ['fieldname', 'indexer-fielname', true, \Alvine\Persistence\Relation\Field\Varchar::class, 'myName'],
      ['name', 'string_myname'],
      ['description', 'string_description'],
      ['uuid', 'sys_id']
  ];
}

// Einbinden der Implementierung
use \Alvine\Application\Web\Model\DataImplementation;

Diese Implementierung kann auch Relationen zwischen Objekten abbilden. Dazu muss die Methode getRelationMapping() überschrieben werden und ein Array mit den Relationen liefern.

public function getRelationMapping() {
  return [
           // Feldname,   Klasse des Beziehungsobjektes                   Klasse des Objektes
           ['groups','\Alvine\Service\Subversion\Model\MyMembership','\Alvine\Service\Subversion\Model\MyGroup']
         ];
}

Properties

protected Collection $volatileModelMappedByImplementation

Methods

type
initModelMapping()

ModelMapping initialisieren

static array
getModelMapping()

Diese Methode muss im Modell definiert werden und die Felder und den Index definieren.

IndexDocument
getIndexDocument()

IndexDokument der Klasse

FilterDocument
getFilterDocument(ParameterMap $parameter)

Filter-Dokument

FilterDocument
initFilterDocument(FilterDocument $filter, ParameterMap $parameter)

Filterdokument initialisieren

SimpleMap
getMapping(boolean $reverse = true)

Zuweisungsmap Indexfelder, Modell-Feld

Dataset
getDataset(Subset $result)

Dataset für Ausgabe erstellen

Collection
initExecuteParameter(ParameterMap $parameter)

Parameter für den Presenter

$this
initInstanceFromParameter(ParameterMap $parameter)

Instance erstellen

static Moel
getInstanceFromParameter(ParameterMap $parameter)

Instanz durch Parameter erstellen

string
getRelationMapping()

Mapping der Relationen

Linkage>
getRelationDefinition()

Relationen des Objektes

array
getValidationMapping()

Mapping für die Überprüfung

ValidationReport
doValidationAndGetReport()

Überprüfung durchführen und Report zurückgeben

Details

at line 83
protected type initModelMapping()

ModelMapping initialisieren

Das Model muss die Methode Model::getModelMapping() implementiert haben und ein Array mit den Werten Feld, Index-Feld (in Datenbank), Pflichtangabe, Feldklasse, Defaultwert oder Null zurück

Return Value

type

at line 109
abstract static protected arraygetModelMapping()

Diese Methode muss im Modell definiert werden und die Felder und den Index definieren.

Return Value

array Index-Feld, Pflichtangabe, Field, Default>

at line 119
IndexDocument getIndexDocument()

IndexDokument der Klasse

Return Value

IndexDocument

Exceptions

BadPropertyException
TypeException falls die Klasse nicht von Alvine angeleitet ist

at line 141
FilterDocument getFilterDocument(ParameterMap $parameter)

Filter-Dokument

Parameters

ParameterMap $parameter

Return Value

FilterDocument

at line 154
protected FilterDocument initFilterDocument(FilterDocument $filter, ParameterMap $parameter)

Filterdokument initialisieren

Parameters

FilterDocument $filter
ParameterMap $parameter

Return Value

FilterDocument

Exceptions

BadPropertyException

at line 175
SimpleMap getMapping(boolean $reverse = true)

Zuweisungsmap Indexfelder, Modell-Feld

Parameters

boolean $reverse Richtung

Return Value

SimpleMap

Exceptions

BadPropertyException

at line 197
Dataset getDataset(Subset $result)

Dataset für Ausgabe erstellen

Parameters

Subset $result

Return Value

Dataset

at line 231
Collection initExecuteParameter(ParameterMap $parameter)

Parameter für den Presenter

Parameters

ParameterMap $parameter

Return Value

Collection

at line 261
$this initInstanceFromParameter(ParameterMap $parameter)

Instance erstellen

Parameters

ParameterMap $parameter Parameter

Return Value

$this

Exceptions

BadPropertyException
UnprocessableEntity

at line 304
static Moel getInstanceFromParameter(ParameterMap $parameter)

Instanz durch Parameter erstellen

Parameters

ParameterMap $parameter

Return Value

Moel Model

at line 315
protected string getRelationMapping()

Mapping der Relationen

Diese Methode kann von abgeleiteten Modell überschrieben werden.

Return Value

string Feld, \string Klasse Relation, \string Klasse Objekt>

at line 328
Linkage> getRelationDefinition()

Relationen des Objektes

Unterstützt das Modell Relationen, so muss diese Methode getRelationMapping() überschrieben werden und die gewünschten Relationen liefern. Diese Methode erstellt daraus die ObjectMap

Return Value

Linkage>

at line 357
protected arraygetValidationMapping()

Mapping für die Überprüfung

Diese Methode sollte von der Modell-Klasse implementiert werden.

return [
     ['number', 'Bitte geben Sie Ihre 10stellige Nummer ein.', 'error', '\Alvine\Util\Constraint\Length', '10']
  ];

Return Value

array Message, Typ, Constraint, Konstruktor-Argumente> Mapping

at line 368
ValidationReport doValidationAndGetReport()

Überprüfung durchführen und Report zurückgeben

Return Value

ValidationReport