Player Analytics plugin for Minecraft Server platforms (Bukkit/Sponge/Nukkit/BungeeCord/Velocity) - View player activity of your server with ease. 📆
Go to file
Risto Lahtela ebaffcab5e
[Merge] Module split (#786)
* Moved project files to 'common'-module

This is done so that refactoring into multiple smaller modules is easier
as the IDE will not attempt to move tests incorrectly when moving things
between different modules

* Created 'bukkit' module

Following classes were removed during the operation:
- BukkitServerInfo (Renamed to ServerServerInfo)
- SpongeServerInfo (could use ServerServerInfo)
- Hastebin (not viable on every platform, unused)
- HastebinTest
- MockPlayers (unused, bukkit specific)

Changes to classes:
- Renamed Importer to BukkitImporter (contained bukkit related impl.)
- Extracted Importer interface from BukkitImporter
- Turned BukkitPlanModule and BukkitClassBindingModule to interfaces by
  using @Binds annotation
- Added Status class since PlayersOnlineListener had a boolean,
  that stated if kicks were counted.

This commit completes split partially and was not pushed on commit.

* Created 'sponge' module

Changes to classes:
- Turned ServerSuperClassBindingModule, SuperClassBindingModule,
  SpongePlanModule and SpongeClassBindingModule to interfaces by
  using @Binds annotation
- Renamed SystemObjectBindingModule to SystemObjectProvidingModule
- Removed sponge related calls in ServerProperties
- Made EmptyImportSystem injectable

This commit completes split partially and was not pushed on commit.

* Changed shade configuration

Further tweaks required.

* Created 'bungeecord' module

Changes to classes:
- Removed use of BungeePingTimerTask in VelocityTaskSystem
- Removed use of RedisBungee in VelocityServerProperties
- Fixed bukkit command.commands.RegisterCommandFilter package

Changes to project structure:
- Dependency versions now in main pom via dependencyManagement
- Repositories now defined in main pom

* Created 'velocity' module

Changes to classes:
- Made RawDataResponse use Gson via reflection since it is no longer
  available in dependencies of 'common' module

* Created 'plugin' module

This module is for creating a single deployment artifact and testing of
system interactions.

Fixes to tests:
- Reflection no longer fails to initialize if Bukkit.getServer() is null
- PingCountTimerBukkit no longer fails to be created if Reflection fails
- Removed unnecessary @AfterClass from H2Test
- Jar resource path fixes to Mocker

* Shading configuration

org.slf4j classes are relocated in 'common', 'bukkit' & 'bungeecord'.
In 'sponge' & 'velocity' they are not relocated, allowing injection
as plugin logger, while using slf4j-nop for HikariCP logging.

This allows single release artifact.

* Removed 'Icon' from .gitignore

* Attempt to fix test resources

Because all jar resources are located in 'common', an attempt to fetch
them is made to common/target/Plan-common.jar, which for some reason
is a bad path.

This attempts to remedy that by creating a temporary file from an
InputStream, read with Class#getResourceAsStream

Ignored HTTPSWebServerAuthTest as the certificate path was invalid for
some reason.
2018-11-11 12:55:09 +02:00
.github/ISSUE_TEMPLATE Update issue templates (#696) 2018-08-23 08:53:54 +03:00
docs Fixed plan.inspect and plan.qinspect permission nodes for Sponge 2018-09-06 16:34:33 -04:00
Plan [Merge] Module split (#786) 2018-11-11 12:55:09 +02:00
PlanPluginBridge [Fix] Compile issues on PluginBridge 2018-11-04 19:42:08 +02:00
.gitattributes :octocat: Added .gitattributes 2016-12-08 19:28:26 +02:00
.gitignore [Merge] Module split (#786) 2018-11-11 12:55:09 +02:00
.travis.yml Updated pluginbridge jar 2018-10-14 15:19:38 +03:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2017-10-09 13:07:37 +03:00
CONTRIBUTING.md Update CONTRIBUTING.md 2017-10-24 11:38:52 +03:00
LICENSE [Merge] Changing license from proprietary to LGPLv3 2018-10-28 08:59:38 +02:00
README.md [New] H2 Db Support + improvements (#774) by Fuzzlemann 2018-11-03 16:49:55 +02:00
versions.txt Update versions.txt 2018-11-04 20:18:49 +02:00

Player Analytics

Build Status Discord
Quality Gate

Player Analytics is a Bukkit plugin that gathers data about player activity & displays that data on an internal webserver. Originally the plugin only displayed data of other plugins, but now it gathers it's own data, while displaying data from various other plugins.

Image

Documentation

Documentation can be found On the Wiki

Used Libraries