-
Notifications
You must be signed in to change notification settings - Fork 33
Complete revision of the module system #277
Complete revision of the module system #277
Conversation
Update Pull Request
Add basic model structure.
Fix some issues about new module system.
The loading of the modules was tested. The order should be as follows:
|
This pull request introduces 1 alert when merging e09cc49 into e5f21bf - view on LGTM.com new alerts:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are a few more changes I may have missed to mark.
All in all not bad, a few things should be done differently though, in order to reduce coupling of classes and improving cohesion (https://sites.google.com/site/koesterprogramming/home/softwareentwicklung/kohaesion-und-kopplung)
...net-master/src/main/java/eu/cloudnetservice/cloudnet/v2/master/module/ModuleClassLoader.java
Outdated
Show resolved
Hide resolved
...main/java/eu/cloudnetservice/cloudnet/v2/master/module/model/CloudModuleDescriptionFile.java
Outdated
Show resolved
Hide resolved
...main/java/eu/cloudnetservice/cloudnet/v2/master/module/model/CloudModuleDescriptionFile.java
Outdated
Show resolved
Hide resolved
Improve initialization of JavaCloudModule. Make type token into a constant. Make on CloudModuleDescriptionFile some fields into interface.
...net-master/src/main/java/eu/cloudnetservice/cloudnet/v2/master/module/CloudModuleLogger.java
Outdated
Show resolved
Hide resolved
...et-master/src/main/java/eu/cloudnetservice/cloudnet/v2/master/module/CloudModuleManager.java
Outdated
Show resolved
Hide resolved
...et-master/src/main/java/eu/cloudnetservice/cloudnet/v2/master/module/CloudModuleManager.java
Outdated
Show resolved
Hide resolved
...et-master/src/main/java/eu/cloudnetservice/cloudnet/v2/master/module/CloudModuleManager.java
Outdated
Show resolved
Hide resolved
...et-master/src/main/java/eu/cloudnetservice/cloudnet/v2/master/module/CloudModuleManager.java
Outdated
Show resolved
Hide resolved
...et-master/src/main/java/eu/cloudnetservice/cloudnet/v2/master/module/CloudModuleManager.java
Outdated
Show resolved
Hide resolved
...et-master/src/main/java/eu/cloudnetservice/cloudnet/v2/master/module/CloudModuleManager.java
Outdated
Show resolved
Hide resolved
...et-master/src/main/java/eu/cloudnetservice/cloudnet/v2/master/module/CloudModuleManager.java
Outdated
Show resolved
Hide resolved
...et-master/src/main/java/eu/cloudnetservice/cloudnet/v2/master/module/CloudModuleManager.java
Outdated
Show resolved
Hide resolved
...et-master/src/main/java/eu/cloudnetservice/cloudnet/v2/master/module/CloudModuleManager.java
Outdated
Show resolved
Hide resolved
…aster/module/CloudModuleLogger.java Co-authored-by: Marvin <[email protected]>
…aster/module/CloudModuleManager.java Co-authored-by: Marvin <[email protected]>
…aster/module/CloudModuleManager.java Co-authored-by: Marvin <[email protected]>
…aster/module/CloudModuleManager.java Co-authored-by: Marvin <[email protected]>
…aster/module/CloudModuleManager.java Co-authored-by: Marvin <[email protected]>
Co-authored-by: Marvin <[email protected]>
Update java documentation.
Fix some import. Replace CopyOnWriteArrayList. Remove some not necessaries final parameters.
Fix imports.
...et-master/src/main/java/eu/cloudnetservice/cloudnet/v2/master/module/CloudModuleManager.java
Outdated
Show resolved
Hide resolved
Remove unused exceptions. Add notnull annotations. Remove not necessary finals.
...mples/src/main/java/eu/cloudnetservice/cloudnet/v2/examples/module/ExampleModuleCommand.java
Show resolved
Hide resolved
cloudnet-master/src/main/java/eu/cloudnetservice/cloudnet/v2/master/CloudConfig.java
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Alright, merging. Keep in mind that all modules need to be adapted to this new API. |
In this Pull Request the complete module system was revised. Circular dependencies should no longer be a problem in the future. Also an extended API was made available to allow developers to better integrate the system. It was built very similar to Bukkit and the Spigot API.
Missing functions are the Observe Pattern for Auto Update and the Event for FileDeployment into the Cloud.
Also the CloudAPI load bug was fixed because of the renaming of the pack.
And there are a few places where an improved exception handling was done.
And yes, the code needs to be more ordered or made more beautiful and also the description needs to be added.