add data-logger (#10748)

* Added data-logger

* Thanks for catching the reflection issues. To address the "Use of reflection is not allowed" feedback properly and avoid any hacky workarounds, I realized the plugin's core architecture needed a refactor.

Here is what I've updated:

    Removed Dynamic Class Loading: Overhauled the UI routing by removing the reflection-based panel instantiation and replacing it with explicit Guice bindings and a safe switch statement in DataLoggerPanel.

    Removed Gson TypeToken Reflection: Removed the dynamic TypeToken reflection in FileIOService, replacing it with standard Java function parsing via the LogType enum.

    Removed Method Invocation: Replaced the reflective invoke call with a direct client.getAccountHash() API call in the new AbstractLogger base class.
Let me know if everything looks good to go!

* To address the "Use of reflection is not allowed" feedback properly and avoid any hacky workarounds, I realized the plugin's core architecture needed a refactor.

I have made the following changes;

    Removed Dynamic Class Loading: Overhauled the UI routing by removing the reflection-based panel instantiation and replacing it with explicit Guice bindings and a safe switch statement in DataLoggerPanel.

    Removed Gson TypeToken Reflection: Removed the dynamic TypeToken reflection in FileIOService, replacing it with standard Java function parsing via the LogType enum.

    Removed Method Invocation: Replaced the reflective invoke call with a direct client.getAccountHash() API call in the new AbstractLogger base class.

Let me know if everything looks good to go!
This commit is contained in:
Max Moons
2026-03-04 00:18:45 +01:00
committed by GitHub
parent 1f4d18e0b6
commit b685da386c

3
plugins/data-logger Normal file
View File

@@ -0,0 +1,3 @@
repository=https://github.com/Maximuis94/runelite-plugins.git
commit=f817c13e3ff65c647bc58fd78b69e8ac75f3efb8
authors=maximuis94