diff options
Diffstat (limited to 'doc/diagrams/main.plant')
-rw-r--r-- | doc/diagrams/main.plant | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/doc/diagrams/main.plant b/doc/diagrams/main.plant new file mode 100644 index 0000000..4429300 --- /dev/null +++ b/doc/diagrams/main.plant @@ -0,0 +1,48 @@ +@startuml +class SSSync { ++void main(String[] args) +} + +class SSSyncConfParser { ++loadMainConfig(String mainConfigFile) ++loadConnConfig(String connConfigFile) +} + +class SSSyncConnectionsFactory { ++setupConnections(ConfigConnectionsBean confConn) +} + +class SSSyncTasksFactory { ++setupTasks(ConnectionsHolder connections, ConfigRootBean confMain) +} + +abstract class AbstractSyncTask { + #String taskName + #boolean dryRun + +Boolean call() +} + +interface "Callable<Boolean>" as Callable_Boolean_ { +} +Callable_Boolean_ <|.. AbstractSyncTask + +class ExecutorService { ++invokeAll(Callable tasks...) +} + +SSSync *-- "1" ConfigRootBean +SSSync *-- "1" ConfigConnectionsBean +SSSync *-- "1" ConnectionsHolder +SSSync *-- "*" AbstractSyncTask + +SSSync "(1)" -up-> SSSyncConfParser +SSSync "(2)" -up-> SSSyncConnectionsFactory +SSSync "(3)" -up-> SSSyncTasksFactory +SSSync "(4)" -> ExecutorService + +ConfigRootBean *-- "1" ConfigGlobalsBean +ConfigRootBean *-- "*" ConfigTaskBean + +ConnectionsHolder *-- "*" LDAPConnectionWrapper +ConnectionsHolder *-- "*" SQLConnectionWrapper +@enduml |