EssentialsX

EssentialsX

2M Downloads

Replace the Methods interface with a direct hook to VaultAPI

DoNotSpamPls opened this issue ยท 4 comments

commented

Feature description
Back in the day when Essentials was created, the Methods interface may have been useful, as it interfaced with multiple economy plugins (BOSEconomy, iConomy, etc.). However, any modern economy plugin now supports Vault (shown by Vault being the only method currently available).

How the feature is useful
Essentials won't have to have the whole plugin as a dependency anymore, and will just be able to use the VaultAPI. There will be a bit less code to maintain and using newer versions of the VaultAPI would be as simple as bumping the version in pom.xml

commented

I don't think Reserve will ever get a high enough adoption - Vault has been the de-facto economy API for half a decade now, and it's unlikely anything will replace it in the forseeable future. Also, the Vault API is open source, so a PR could always be made to add methods supporting BigDecimals.

commented
commented

We've already removed the old plugin libraries, so that's not an issue.

The main reason I'd argue we should keep using the Register interfaces is that we can adapt them to use Reserve if/when that becomes worthwhile. Unlike Vault, Reserve supports BigDecimals, though I don't think it's likely we'll add support any time soon due to low adoption.

commented

There's no harm in having a layer of abstraction between Essentials and Vault, right? I kind of agree with md that there's not really any point to removing support for this, since other plugins may come around that people want to use, and even if they aren't adopted super highly, it doesn't make sense to make it even harder for them to exist.