From 3261f04260a52029db126baf46e529c772fab9f5 Mon Sep 17 00:00:00 2001 From: KrashKart Date: Mon, 21 Oct 2024 00:33:59 +0800 Subject: [PATCH] Add Command Classes UML diagram Let's, * Replace XYZCommand class to a Command Class package in all UML diagrams * Add the Command Class UML file --- docs/diagrams/CommandClasses.puml | 61 ++++++++++++++++++++++++++++ docs/diagrams/LogicClassDiagram.puml | 8 ++-- docs/diagrams/ParserClasses.puml | 7 ++-- 3 files changed, 69 insertions(+), 7 deletions(-) create mode 100644 docs/diagrams/CommandClasses.puml diff --git a/docs/diagrams/CommandClasses.puml b/docs/diagrams/CommandClasses.puml new file mode 100644 index 00000000000..036c083d1a2 --- /dev/null +++ b/docs/diagrams/CommandClasses.puml @@ -0,0 +1,61 @@ +@startuml +!include style.puml +skinparam arrowThickness 1.1 +skinparam arrowColor LOGIC_COLOR_T4 +skinparam classBackgroundColor LOGIC_COLOR + +Class "{abstract}\nCommand" as Command +Class HiddenOutside #FFFFFF + +package "Command Classes" as CommandClasses { + together { + Class "{abstract}\nAbstractFindCommand" as AFC + Class "AddCommand" as AC + Class "ClearCommand" as CC + Class "DeleteCommand" as DC + Class "EditCommand" as EdC + Class "ExitCommand" as ExC + Class "FindByEmailCommand" as FEC + Class "FindByNameCommand" as FNC + Class "FindByTagCommand" as FTC + Class "FindByPhoneCommand" as FPC + Class "HelpCommand" as HC + Class "ListCommand" as LC + } +} +HiddenOutside ..> Command + +AFC -u-|> Command +AFC -[hidden]right- AC +FEC -u-|> AFC +FNC -u-|> AFC +FTC -u-|> AFC +FPC -u-|> AFC + +AC -u-|> Command +AC -[hidden]right- CC +FEC -[hidden]u- AC + +CC -u-|> Command +CC -[hidden]right- DC +FEC -[hidden]u- CC + +DC -u-|> Command +DC -[hidden]right- EdC +FEC -[hidden]u- DC + +EdC -u-|> Command +EdC -[hidden]right- ExC +FEC -[hidden]u- EdC + +ExC -u-|> Command +ExC -[hidden]right- HC +FEC -[hidden]u- ExC + +HC -u-|> Command +HC -[hidden]right- LC +FEC -[hidden]u- HC + +LC -u-|> Command +FEC -[hidden]u- LC +@enduml \ No newline at end of file diff --git a/docs/diagrams/LogicClassDiagram.puml b/docs/diagrams/LogicClassDiagram.puml index 58b4f602ce6..9700eab4506 100644 --- a/docs/diagrams/LogicClassDiagram.puml +++ b/docs/diagrams/LogicClassDiagram.puml @@ -8,7 +8,8 @@ package Logic as LogicPackage { package "Parser Classes" as ParserClasses{ } -Class XYZCommand +package "Command Classes" as CommandClasses{ +} Class CommandResult Class "{abstract}\nCommand" as Command @@ -29,9 +30,9 @@ HiddenOutside ..> Logic LogicManager .right.|> Logic LogicManager -right->"1" ParserClasses -ParserClasses ..> XYZCommand : <> +ParserClasses ..> CommandClasses : <> -XYZCommand -up-|> Command +CommandClasses -up-|> Command LogicManager .left.> Command : <> LogicManager --> Model @@ -39,7 +40,6 @@ LogicManager --> Storage Storage --[hidden] Model Command .[hidden]up.> Storage Command .right.> Model -note right of XYZCommand: XYZCommand = AddCommand, \nFindCommand, etc Logic ..> CommandResult LogicManager .down.> CommandResult diff --git a/docs/diagrams/ParserClasses.puml b/docs/diagrams/ParserClasses.puml index 4e756fe94c0..7ba2b420cfd 100644 --- a/docs/diagrams/ParserClasses.puml +++ b/docs/diagrams/ParserClasses.puml @@ -5,7 +5,8 @@ skinparam arrowColor LOGIC_COLOR_T4 skinparam classBackgroundColor LOGIC_COLOR Class "{abstract}\nCommand" as Command -Class XYZCommand +package "Command Classes" as CommandClasses { +} package "Parser classes"{ Class "<>\nParser" as Parser @@ -23,7 +24,7 @@ HiddenOutside ..> CampusConnectParser CampusConnectParser .down.> XYZCommandParser: <> -XYZCommandParser ..> XYZCommand : <> +XYZCommandParser ..> CommandClasses : <> CampusConnectParser ..> Command : <> XYZCommandParser .up.|> Parser XYZCommandParser ..> ArgumentMultimap @@ -34,5 +35,5 @@ CliSyntax ..> Prefix XYZCommandParser ..> ParserUtil ParserUtil .down.> Prefix ArgumentTokenizer .down.> Prefix -XYZCommand -up-|> Command +CommandClasses -up-|> Command @enduml