Zum Inhalt

Element <memstore>

Zweck: Akzeptiert eine veraltete Memstore-Deklaration mit Warnung und ignoriert sie; der eingebaute Memstore bleibt unverändert.

Warum: Verwende dieses Element nur beim Upgrade eines bestehenden Descriptors. Neue Modelle schreiben mit target='mem' und lesen mit source='mem' sowie sourceEntity.

Beispiel

1
<memstore id="mem"/>

Entscheidungshilfe

Fachlicher Nutzen: Bewahrt bestehende Deskriptoren während der Migration, ohne einen eigenen Memstore-Client oder ein eigenes Ziel anzulegen.

  • Verwenden, wenn

    • Beim Ausführen eines älteren Descriptors, der noch unter setup enthält.
  • Anderen Ansatz wählen, wenn

    • Beim Erstellen neuer Modelle; die eingebaute mem-Quelle und das mem-Ziel benötigen keine Deklaration.

Vollständige Beispiele

Ein bestehendes Modell mit einer veralteten Memstore-Deklaration ausführen

Behalte die alte Deklaration während des Upgrades; sie erzeugt eine Warnung, ohne Memstore-Lese- oder Schreibvorgänge zu ändern.

legacy-memstore/datamimic.xml
1
2
3
4
5
6
7
<setup schemaVersion="1.0" numProcess="1">
    <memstore id="mem"/>
    <generate name="customers" count="2" target="mem">
        <key name="id" generator="IncrementGenerator"/>
    </generate>
    <generate name="customer_copy" source="mem" sourceEntity="customers" target="LogExporter"/>
</setup>

Regeln und ungültige Kombinationen

W005 — Deprecated Memstore Declaration Ignored

in descriptor '{descriptor}' is deprecated and ignored; execution continues. The built-in Memstore needs no declaration. Use target='mem' to write and source='mem' with sourceEntity to read. This declaration does not create a custom source or target ID.

Warum: The descriptor declares a Memstore even though the runtime provides the built-in mem source and target.

Lösung: Remove the declaration when updating the model; keep its data-producing and data-reading steps.

Vollständige Regel

Erlaubte Elternelemente / Erlaubte Kindelemente

Erlaubte Elternelemente: else, else-if, if, setup, while

Erlaubte Kindelemente:

Keine

Attribute

Alle 1 Attribute anzeigen

id

Veraltete Deklarations-ID; wird mit W005 akzeptiert und ignoriert. Sie erzeugt keine eigene Source- oder Target-ID.

erforderlich; string.