Skip to content

Commit

Permalink
#544: use plantuml for documentation (#548)
Browse files Browse the repository at this point in the history
  • Loading branch information
slskiba authored Aug 22, 2024
1 parent 58c43f0 commit 9a71170
Show file tree
Hide file tree
Showing 4 changed files with 89 additions and 1 deletion.
6 changes: 6 additions & 0 deletions documentation/design.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
= IDEAsy Design

[plantuml]
----
include::images/design.puml[]
----
1 change: 0 additions & 1 deletion documentation/images/Design.drawio

This file was deleted.

Binary file removed documentation/images/Design.png
Binary file not shown.
83 changes: 83 additions & 0 deletions documentation/images/design.puml
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
@startuml
skinparam classFontStyle bold
skinparam classAttributeIconSize 0

'''' Attributes and methods '''

class Ide {
{static} +main(String [])
}

class CliArgument
class Property

interface IdeLogger
interface IdeContext

interface CommandletManager
interface EnvironmentVariables
interface FileAccess
interface ProcessContext
interface SystemInfo

interface ToolRepository
interface CustomToolRepository

class UrlMetadata
interface UrlArtifact

class Commandlet
class ToolCommandlet
class LocalToolCommandlet
class GlobalToolCommandlet
class PluginBasedToolCommandlet
class IdeToolCommandlet
class IdeaBasedIdeToolCommandlet

class UpdateInitiator{
{static} +main(String [])
}

class UpdateManager
interface UrlUpdater


'''' Relations '''

Ide ..> CliArgument
Ide ..> Property
Ide ..> Commandlet
Ide ..> IdeContext

IdeLogger <|-- IdeContext : extends

IdeContext ..> CommandletManager
IdeContext ..> EnvironmentVariables
IdeContext ..> FileAccess
IdeContext ..> ProcessContext
IdeContext ..> SystemInfo
IdeContext ..> ToolRepository
IdeContext ..> UrlMetadata
IdeContext ..> GitContext
UrlMetadata ..> UrlArtifact

AbstractIdeContext ..|> IdeContext : implements
IdeContextConsole --|> AbstractIdeContext : extends
IdeLoggerImpl ..|> IdeLogger : implements

GitContextImpl ..|> GitContext : implements

CommandletManager ..> Commandlet
Commandlet <|-- ToolCommandlet : extends
ToolCommandlet <|-- LocalToolCommandlet : extends
ToolCommandlet <|-- GlobalToolCommandlet : extends
LocalToolCommandlet <|-- PluginBasedToolCommandlet : extends
PluginBasedToolCommandlet <|-- IdeToolCommandlet : extends
IdeToolCommandlet <|-- IdeaBasedIdeToolCommandlet : extends

ToolRepository <|-- CustomToolRepository : extends

UpdateInitiator ..> UpdateManager
UpdateManager ..> UrlUpdater

@enduml

0 comments on commit 9a71170

Please sign in to comment.