![]() |
Metamodel: Object Actions |
Objektové akce jsou používány kromě jiného pro vytváření a rušení objektů.
Třída CreateObjectAction je akce, která pouze vytvoří instanci daného klasifikátoru (ten tedy nesmí být abstraktní) a vloží ji do výstupního pinu. Neinicializuje počáteční hodnoty atributů a objekt neobsahuje linky (instance asociací). Tuto akci nelze pro vytvoření linků použít (od toho jsou jiné akce, viz dále). Notace je stejná jako u třídy Action.
Třída DestroyObjectAction naopak instanci objektu, kterou dostane na vstupním pinu, zruší. Chování akce lze upravit atributy isDestroyLinks (pokud je false, pak akce nezruší odkazy na tuto instanci) a isDestroyOwnedObjects (pokud je true, pak budou zrušeny i objekty, které předaná instance vlastní přes kompoziční vazbu). Opět, notace je stejná jako u třídy Action. Tuto akci lze použít pro linky, v tom případě je pak ale použita sémantika třídy DestroyLinkAction (viz dále).
Třída TestIdentityAction má za úkol porovnat dvě instance tříd(y) a vrátit na výstup (typ Boolean), zda jsou identické. Znovu, notace je stejná jako u třídy Action.
Konečně poslední třída, ReadSelfAction, je akce, která má vrátit objekt hostující akci. Každá akce je součástí nějaké aktivity, aktivita může být přiřazena klasifikátoru (např. jako tělo operace nebo jako část stavového automatu). Tato operace vrátí právě tento klasifikátor, je-li nějaký, jinak vrací objekt aktivity. Notace je stejná jako u třídy Action.
Žádné komentáře:
Okomentovat