# Class Command

Class Command

Key abstraction for all proc/edit operations and UNDO management

Declaration :

- C++ : class Command
- Java : public interface Command
- Php : public interface Command

Stereotype: interface

Attribut ID

Declaration :

- Uml : + ID :
- C++ : public: const ID

Attribut name

Declaration :

- Uml : + name : Symbol
- C++ : public: const Symbol name

Attribut do

Declaration :

- Uml : + do : Mutation
- C++ : public: Mutation do

Attribut undo

Declaration :

- Uml : + undo : UndoMutation
- C++ : public: UndoMutation undo

Attribut closure

Declaration :

- Uml : - closure : CmdClosure
- C++ : private: CmdClosure closure

Operation execute

Declaration :

- Uml : + execute(in context : HandlingPattern) : void
- C++ : public: void execute ()

Relation <unidirectional association>

Declaration :

- Uml : # : CmdClosure, multiplicity : 1
- C++ : protected: CmdClosure*

Stereotype: has_a

Relation <unidirectional association>

Declaration :

- Uml : # : Mutation
- C++ : protected: Mutation*

Stereotype: has_a

Relation <unidirectional association>

Declaration :

- Uml : # : UndoMutation
- C++ : protected: UndoMutation*

All public operations : execute