@startuml class CommandManager { - {static} instance : CommandManager - commandStack : LinkedList - redoStack : LinkedList - maxCapacity : int = 100 - CommandManager() + {static} getInstance() : CommandManager + setMaxCapacity(capacity:int) : void + executeCommand(command:ICommand) : void + undo() : void + redo() : ICommand + clearHistory() : void } @enduml