mirror of
https://github.com/DiscordSRV/Ascension.git
synced 2024-11-25 12:25:15 +01:00
Updated Home (markdown)
parent
4fe2119744
commit
c8b4d8de97
12
Home.md
12
Home.md
@ -160,24 +160,20 @@ The main class structure, from top to bottom
|
||||
+ The primary type that is passed to (almost) everything via [dependency injection](https://en.wikipedia.org/wiki/Dependency_injection)
|
||||
- Avoids the nasty generics of `AbstractDiscordSRV`
|
||||
|
||||
- `AbstractDiscordSRV<C, CC>` (abstract class)
|
||||
- `AbstractDiscordSRV<B, C, CC, MC>` (abstract class)
|
||||
+ In the `:common` module
|
||||
+ C and CC are the configuration types which will be specified by the **Platform**DiscordSRV class
|
||||
+ B is the bootstrap type
|
||||
+ C, CC and MC are the configuration types which will be specified by the **Platform**DiscordSRV class
|
||||
+ Implements `DiscordSRV` and `DiscordSRVApi` methods which don't rely on platform code
|
||||
+ The 'true' main class of DiscordSRV
|
||||
|
||||
- `ServerDiscordSRV<C, CC>` and `ProxyDiscordSRV<C, CC>` (abstract classes)
|
||||
+ In the `:common` module
|
||||
+ Contains server or proxy specific code
|
||||
- for example: server switch messages are only required on the proxy so registering them happens in ProxyDiscordSRV
|
||||
|
||||
- **Platform**DiscordSRV (`BukkitDiscordSRV`, `BungeeDiscordSRV` etc.) (regular classes)
|
||||
+ In the platform's module (`:bukkit`, `:bungee` etc.)
|
||||
+ The platform implementation
|
||||
+ Dependency injected into plugin hooks and platform specific implementations
|
||||
|
||||
Illustration of the above:
|
||||
![](https://i.imgur.com/MvZYoHv.png#)
|
||||
![](https://i.imgur.com/O2O0cQs.png#)
|
||||
|
||||
## JarInJar loading
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user