Commit Graph

2445 Commits

Author SHA1 Message Date
Rsl1122
b56deeb546 [Debt] NetworkContainer creation
Added a Factory to NetworkContainer class.

Users can gain access to NetworkContainers via FetchOperations.
2018-10-12 21:30:41 +03:00
Rsl1122
e7b2770295 [Fix] Fixed Analysis Page Caching
Network Page Update Processor was removing the finished analysis right
after it finished.
2018-10-11 22:36:22 +03:00
Rsl1122
5411fdfead [Debt] AnalysisContainer Factory
Since AnalysisContainer was only created in PageFactory it was easy to
inject dependencies for.
2018-10-08 18:12:58 +03:00
Rsl1122
2ea0caa612 [Debt] AnalysisContainer Low TPS Threshold 2018-10-08 18:03:54 +03:00
Rsl1122
6533875aff [Debt] HealthIndex settings
Added settings and formatters to parameters of different health index
mutators.
2018-10-08 18:02:11 +03:00
Rsl1122
ef16f8ece1 [Debt] ActivityIndex thresholds in RetentionData 2018-10-08 17:40:46 +03:00
Rsl1122
23f96f96aa [Fix] Network Settings save/load
Database was not enabled when the call was made, leading to a NPE when
using MySQL. (DataSource not initialized)

Fixed by moving the calls to scheduled tasks inside TaskSystems.
2018-10-08 17:35:04 +03:00
Rsl1122
47213fa564 [V] APF 3.3.1-SNAPSHOT 2018-10-08 16:55:06 +03:00
Rsl1122
81be032ccf [Debt] Updated Network page updating
This moves the network page servers tab generation and removes need for
network page updates on Bukkit servers, so it was removed.
2018-10-07 21:51:01 +03:00
Rsl1122
d448e7f868 [V] Dropped SNAPSHOT from APF version
Abstract Plugin Framework 3.3.0 is now available in central.
2018-10-07 16:46:50 +03:00
Rsl1122
ade810ca8c [Fix] Fix Command registration
Issue was caused by no call to registerCommands was made at runtime.
2018-10-07 16:17:06 +03:00
Rsl1122
1e19acb8ca
Merge pull request #744 from Rsl1122/development
PR for 4.4.7
2018-10-07 11:46:27 +03:00
Rsl1122
d57915e66c
Update versions.txt 2018-10-07 11:45:49 +03:00
Rsl1122
dd3c297fd0 [V] Increased version to 4.4.7 2018-10-06 21:56:58 +03:00
Rsl1122
7f9146fcf4 [Debt] Refactored Server Boxes to network page generation
Some features could not be implemented or will have reduced precision:
- Server type
- Players Online is deduced from TPS data
- Analysis Refresh date is now a true/false based on cache value
2018-10-06 21:38:59 +03:00
Vankka
27c2492599 DiscordSRV plugin data by Vankka (#743) 2018-10-05 22:30:57 +03:00
Vankka
a33ca5b004 LuckPerms Plugin Data by Vankka (#742) 2018-10-04 20:32:34 +03:00
Rsl1122
add18feb83 [Debt] Removed deprecated APF usage leftovers
Removed deprecated:
* Benchmark usage
* TimeAmount usage
* StaticHolder usage
* Log usage
* ErrorManager
2018-10-03 21:33:46 +03:00
Rsl1122
51e2d6fe91 [Debt] Added thresholds to ActivityIndex methods
This required addition of PlanConfig in some places to obtain the values
2018-10-03 20:59:17 +03:00
Rsl1122
6bb24c3903 [New] Set DebugLogger in ConfigSystem
Old Abstract Plugin Framework functionality did this differently,
but now this falls on the hands of developers to not limit the settings.
2018-10-03 20:43:20 +03:00
Rsl1122
c4bf9a500f [Fix] Fixed compile issues
Compile issues were caused by recent changes in APF:
* ISender -> Sender rename
* BukkitCMDSender was in use in test, but was made package private.

Fixes:
* Replaced ISender -> Sender
* Replaced BukkitCMDSender use in MiscUtilsTest
* Moved two database tests out from MiscUtilsTest
2018-10-03 20:26:12 +03:00
Rsl1122
6ca86b8c76 [Debug] Improved debug channel usage 2018-09-29 14:44:23 +03:00
Rsl1122
bd636892d6 [Debt] Fixed Plugin Enable Sequence
Removed PlanPlugin.getInstance()
Temporarily disabled Plugin Bridge hooking
2018-09-29 14:19:29 +03:00
Rsl1122
e60e1abe9a [Fix] Fixed cyclic dependency - WorldAliasSettings 2018-09-29 13:47:19 +03:00
Rsl1122
ea9a8b8812 [Debt] Sorted up some Analysis refresh code
Split AnalysisPage#getRefreshingHtml into new RefreshingAnalysisResponse
class. Moved AnalysisPageResponse.refreshNow to ServerPageHandler.
2018-09-29 13:43:56 +03:00
Rsl1122
3625156b36 [Debt] Moved SRP violation in Session
Session#getLongestWorldPlayed was a violation of Single Responsibility
Principle.
The method was moved to WorldAliasSettings, although still a violation,
it makes more sense there than inside the Session class. It also allows
creation of Session without a WorldAliasSettings dependency.
2018-09-29 13:32:59 +03:00
Rsl1122
e12f258a33 [Debt] PlanAPI getInstance uses a static holder.
This is close to a Singleton pattern, but not quite. Testing required
to know impact of using static here. - Is it possible to set null?
2018-09-29 13:21:54 +03:00
Rsl1122
32044ed016 [Debt] Removed easy use of PlanPlugin.getInstance
This removed easy to remove usages of PlanPlugin.getInstance method.
2018-09-29 12:55:22 +03:00
Rsl1122
aeec459ee9 [Debt] Added PlanFiles to FileResponse constructor
ResponseFactory provides the Response objects this dependency.
Renamed all occurrences of "planFiles" -> "files"
2018-09-29 12:44:56 +03:00
Rsl1122
9b9443adf4 [Debt] Removed ServerInfo.getServerUUID() method
Most uses of this method were already handled, but database related were
not. Dependency was met by adding a Supplier<UUID> to SQLDB class.
Patch and Table classes have getServerUUID() method that use supplier in
SQLDB.

UserImportDataBuilder required the dependency, and it was provided via
UserImportData#builder(UUID).
2018-09-29 12:40:58 +03:00
Rsl1122
bca1371774 [V] Updated PluginBridge jar 2018-09-29 12:17:28 +03:00
Rsl1122
a18dc2d3f2 [Fix] Prevented NPE due in PluginData
This exception was caused by analysisData being null during PluginData
analysis - This should not occur unless two analysis are being performed
concurrently & first analysis finishes and clears the variable.

Additional work is required for preventing two concurrent analysis.

Affected issues: #711
2018-09-29 12:16:07 +03:00
Rsl1122
93951f1f25 [Fix] Increased database clean task start delay
1 second delay is not enough when a patch system has not applied all
patches, and some data requiring patching is scheduled for removal.

Affected issues: #732
2018-09-26 20:43:49 +03:00
Rsl1122
92ce37dda3 [Fix] Patch System column addition fixes
This affects KillsServerIDPatch and IPHashPatch issues.

Affected issues: #732
2018-09-26 20:40:41 +03:00
Rsl1122
a48b660a05 [Debt] Delegated Exception logs to ResponseFactory
ErrorResponse caught an IOException for reading a file from the jar,
but this error should be moved further up stream - thus catching it was
delegated to ResponseFactory, where the error can be parsed into
InternalErrorResponse and dealt with accordingly.
2018-09-24 20:39:36 +03:00
Rsl1122
7f53fb4c80 [Debt] Moved LogsFolderCleanTask out of PlanFiles
This had to be done in order for a call to settings to be made without
a dependency cycle, since PlanConfig depends on PlanFiles.
2018-09-24 19:53:03 +03:00
Rsl1122
b972c26fe8 [Smell] Renamed FileSystem to PlanFiles 2018-09-24 19:41:11 +03:00
Rsl1122
594e9b4072 [Debt] Removed FileUtil.getStringFromResource
Because of PlanPlugin dependency this code needed to be moved elsewhere.
New method to use is FileSystem#readCustomizableResourceFlat
2018-09-24 19:38:39 +03:00
Rsl1122
81969682a4
Update versions.txt 2018-09-24 19:21:06 +03:00
Rsl1122
0d3eb77d90
Merge pull request #733 from Rsl1122/development
PR for 4.4.6
2018-09-23 18:28:56 +03:00
Rsl1122
e72b89571e [Fix] Order of Registration to PluginData values
Old addValue method added the values in an arbitrary label order,
Order of adding makes more sense and gives developers more control.
2018-09-23 18:04:03 +03:00
Rsl1122
836bf28348 [V] Version bump to 4.4.6 2018-09-23 17:52:33 +03:00
Rsl1122
d1d2753422 [Fix] Fix MySQL query for "Has Column"
MySQL query for has column did not take database name into account.
This means that a database with multiple Plan databases would provide
wrong results for the Patch system, leading to patch failiure

Affected issues: Fixes #732
2018-09-23 17:51:36 +03:00
Rsl1122
cbb45bf49d [Fix] Locale lang group replacement changes
Changed the Lang that was being used to replace things on the html, now
some of the Lang is no longer used. (CmdHelpLang, CommandLang, etc)
GenericLang caused page breakage due to wrong replacements, so it is no
longer used for replacement

Affected issues: Fixes #706
2018-09-23 17:39:15 +03:00
Rsl1122
e7cbf10ee3 [Debt] AnalysisPluginsTabContentCreator non-static 2018-09-19 20:04:58 +03:00
Rsl1122
7a817d3463 [Test] Added TestAPFModule
This dagger module can be used in the future when creating full test
components for system wide testing.
2018-09-19 13:45:36 +03:00
Rsl1122
1a638ca4c9 [Test] Removed some unnecessary test utilities
ConsoleSenders can be mocked on the spot, so a concrete implementation
is not required.
2018-09-19 13:44:54 +03:00
Rsl1122
5fc5494da9 [Debt] Created factory for Accordion objects.
SessionAccordion and ServerAccordion are now constructed with a factory.
Renamed: AbstractAccordion -> Accordion, as class was not abstract.
2018-09-19 13:22:38 +03:00
Rsl1122
ad5837b519 [Debt] Removed CacheSystem.getInstance() method
This deprecated method was no longer in use.
2018-09-19 13:01:31 +03:00
Rsl1122
eb91fbc990 [Debt] ActivityIndex#getFormattedValue(Formatter) 2018-09-18 18:43:58 +03:00