Files
Kaiteki/docs/class_structure.yuml
2020-10-20 10:18:19 +02:00

68 lines
2.2 KiB
Plaintext

// Use https://yuml.me/ to render this file.
// -----------------------------------------
// colors
[PleromaClient{bg:sandybrown}]
[PleromaAdapter{bg:sandybrown}]
[PleromaAccount{bg:wheat}]
[PleromaStatus{bg:wheat}]
[MisskeyClient{bg:chartreuse}]
[MisskeyAdapter{bg:chartreuse}]
[MisskeyUser{bg:palegreen}]
[MisskeyNote{bg:palegreen}]
[MastodonClient{bg:dodgerblue}]
[MastodonAdapter{bg:dodgerblue}]
[MastodonAccount{bg:lightskyblue}]
[MastodonStatus{bg:lightskyblue}]
// definitions
[MastodonClient|getAccount(id);]
[PleromaClient|getChats()]
[MisskeyClient|showUser(userId)]
[AccountSecret|instance;username;password]
[ClientSecret|instance;clientId;clientSecret]
[AccountCompound]
[Account|*generic*]
[FediverseAdapter|User getUserById(id);LoginResult login();]
[FediverseClientBase|instance;accessToken;clientId;clientSecret]
[LoginResult|String reason;bool successful;bool aborted]
// connections
[AccountCompound]account-.->[Account]
[AccountCompound]adapter-.->[FediverseAdapter]
[AccountCompound]container-.->[AccountContainer]
[AccountCompound]accountSecret-.->[AccountSecret]
[AccountCompound]clientSecret-.->[ClientSecret]
[Account]->[MisskeyUser]
[Account]->[MastodonAccount]
[MastodonClient]-.->[MastodonStatus]pleroma-.->[PleromaStatus|conversationId;reactions]
[MastodonClient]-.->[MastodonAccount]pleroma-.->[PleromaAccount|backgroundImage]
[AccountContainer;clear();remove(compound);addCurrentAccount(compound);changeAccount(compound);loadAllAccounts();createClient(type);checkAccounts();]
[AccountContainer]-.->[AccountSecretRepository]
[AccountContainer]-.->[ClientSecretRepository]
[AccountContainer]-.->[AccountCompound]
[FediverseAdapter]returns-.->[LoginResult]
[FediverseAdapter]client-.->[FediverseClientBase]
[FediverseAdapter]^-[MastodonAdapter]->[MastodonClient]^-[PleromaClient]
[FediverseAdapter]^-[PleromaAdapter]->[PleromaClient]
[FediverseAdapter]^-[MisskeyAdapter]->[MisskeyClient]
[FediverseAdapter]-.->[*Generic classes from Kaiteki*|OriginalClass source]
[FediverseClientBase]^-[MastodonClient]
[FediverseClientBase]^-[MisskeyClient]
[MisskeyClient]-.->[MisskeyNote]
[MisskeyClient]-.->[MisskeyUser]
[AccountSecretRepository]-.->[AccountSecret]
[ClientSecretRepository]-.->[ClientSecret]