Commit Graph

3052 Commits

Author SHA1 Message Date
Rsl1122
7ca0c04365 ExtensionServerDataQuery + BooleanAggregateQuery:
- Queries plan_extension_server_values

- Queries plan_extension_player_values for aggregates
2019-03-30 11:29:43 +02:00
Rsl1122
c8687b7c48 Fixed ConfigReader sometimes adding empty string to a null value. 2019-03-30 11:04:51 +02:00
Rsl1122
18d6b862b7 ExtensionServerData class 2019-03-30 09:19:23 +02:00
Rsl1122
142cea7f6b Moved some results classes around 2019-03-30 09:17:49 +02:00
Rsl1122
d98a51b632 Storage for extension server data 2019-03-29 11:32:32 +02:00
Rsl1122
db90410487 Gatherer methods for server providers 2019-03-29 11:16:35 +02:00
Rsl1122
ed4dff350a Color replacement to StringProvider values 2019-03-29 10:03:40 +02:00
Rsl1122
b288182e42 Fix SQL error introduced when 'hidden' was added 2019-03-27 14:46:44 +02:00
Rsl1122
001b5a6cc7 Fixing some new code smells:
Critical:
- String literal duplication fixed in a few places
- Cognitive complexity reduced in BooleanProviderValueGatherer

Major:
- Called Optional#isPresent before accessing value
  16 instances in ProviderTransactions
- private constructor to Extension tables
- Missing deprecated tags to deprecated plugin tab stuff
- Unused class variable removal
- Throw dedicated exceptions in ServerServerInfo
- Unused method removal

Minor:
- Renamed 'API' field to 'service' in ExtensionService
- Unused variable removal
2019-03-27 14:30:53 +02:00
Rsl1122
2d228dedea Registered DiscordSRV extension 2019-03-26 21:51:55 +02:00
Rsl1122
b1d75a1d4a Bump extension versions 2019-03-26 21:04:48 +02:00
Rsl1122
4ea45ad9d9 Implemented BooleanProvider hidden parameter 2019-03-26 21:00:18 +02:00
Rsl1122
29e9f0483b Added comment about nested query 2019-03-26 20:41:04 +02:00
Rsl1122
961b8caae8 Added missing "as ..." to the query:
Attempts to fix
"Every derived table must have its own alias"
2019-03-26 14:23:04 +02:00
Rsl1122
40075f697c Nest query since MySQL can not select and update:
More information
https://stackoverflow.com/a/9843719

Attempts to fix:
'You can't specify target table 'plan_extension_user_values' for update
in FROM clause'
2019-03-26 14:16:17 +02:00
Rsl1122
c1a6fdd6fc Reverse table names since MySQL can not select and update:
More information
https://stackoverflow.com/questions/4429319/you-cant-specify-target-table-for-update-in-from-clause

Attempts to fix:
'You can't specify target table 'plan_extension_user_values' for update
in FROM clause'
2019-03-26 13:51:42 +02:00
Rsl1122
47a6a9b2aa Transaction for removing unsatisfied Conditional data:
This is one of the most complex queries I have made.

- Select all fulfilled conditions for all players (conditionName when
  true and not_conditionName when false)
- Left join with player value & provider tables when uuids match, and
  when condition matches a condition in the query above.
- Filter the join query for values where the condition did not match
  any provided condition in the join (Is null)
- Delete all player values with IDs that are returned by the left join
  query after filtering

In addition:
- Added test for the transaction
- Added extension data removal to RemoveEverythingTransaction
- Added unregister method to ExtensionService
2019-03-26 12:22:57 +02:00
Rsl1122
09ac2dce09 Registered BanManager Extension 2019-03-24 17:37:32 +02:00
Rsl1122
c77ec3fd79 Added flow for Negated conditions
Negated conditions' names are prefixed with not_

This allows checking against negated Conditionals and does not need
adding more table rows.
2019-03-24 16:53:51 +02:00
Rsl1122
91bb5bf31b Extract method call booleans from PluginInfo 2019-03-24 15:59:54 +02:00
Rsl1122
f73cef8587 Bump extension API to 0.0.2 2019-03-24 15:53:20 +02:00
Rsl1122
0be153d03e Added booleans to PluginInfo for controlling method calls. 2019-03-24 15:52:32 +02:00
Rsl1122
600e90873e Added Conditional#negated 2019-03-24 15:34:58 +02:00
Rsl1122
2b620f97f1 Added BooleanProvider#hidden 2019-03-24 15:34:45 +02:00
Rsl1122
60f5571e42 Registered AdvancedBan extension 2019-03-24 13:46:11 +02:00
Rsl1122
099330ebd7 DataExtension API player page plugin tab generation 2019-03-24 12:28:13 +02:00
Rsl1122
aab5436b25 Deprecated player plugin tab related things 2019-03-24 10:29:54 +02:00
Rsl1122
28d5cf106a Query for DataExtension data of a single player 2019-03-23 13:10:05 +02:00
Rsl1122
a514e29e78 getByName to Extension enums 2019-03-23 13:06:31 +02:00
Rsl1122
2831bf4cd4 Fix flipped double and percentage storage transactions 2019-03-23 13:05:40 +02:00
Rsl1122
fb8d01e5c2 Data objects for extension data about a player
These objects make it easier to construct query data from database.
2019-03-21 13:19:35 +02:00
Rsl1122
134a7b1e18 Fixed many Extension Provider store errors 2019-03-20 17:17:23 +02:00
Rsl1122
f31dbe8a9a Fix Extension SQL Syntax errors related to id selection 2019-03-20 15:57:12 +02:00
Rsl1122
da33ec0b9e Extension data updating to login listeners 2019-03-20 15:55:48 +02:00
Rsl1122
f62140d6ca Debug logging of DataExtension registration 2019-03-20 14:40:07 +02:00
Rsl1122
09787f4ff1 Fixed Extension SQL syntax errors 2019-03-20 14:37:55 +02:00
Rsl1122
0c95a4cc63 Config enable check for DataExtension registration 2019-03-20 13:48:50 +02:00
Rsl1122
e8da008538 Added 'extensions' module:
- Module is in charge of registering built in DataExtensions
- This is done via ExtensionRegister
2019-03-20 13:37:56 +02:00
Rsl1122
5061f6d9ec Logging of implementation mistake warnings 2019-03-18 20:10:39 +02:00
Rsl1122
a8450f51b8 Annotation String length enforcement:
- Description is 150 characters max, truncated
- Others are 50 characters max, truncated
- StringProvider value is 50 characters max, truncated
2019-03-18 20:07:17 +02:00
Rsl1122
405d4f643b Extension table create table statements 2019-03-18 19:56:16 +02:00
Rsl1122
031eba7cea Handling of by default empty annotation values 2019-03-18 19:35:08 +02:00
Rsl1122
48e65a60c8 ExtensionService implementation 2019-03-18 15:04:53 +02:00
Rsl1122
dead33f78c Interface for registering DataExtensions 2019-03-18 14:52:23 +02:00
Rsl1122
a812af9e5f Transaction for removing invalid providers from storage 2019-03-18 14:33:43 +02:00
Rsl1122
a87c2cd32e String result store transaction 2019-03-18 14:27:14 +02:00
Rsl1122
78959ba190 Percentage result store transaction 2019-03-18 14:26:38 +02:00
Rsl1122
413e0501df Number result store transaction 2019-03-18 14:25:59 +02:00
Rsl1122
76d4298818 Double result store transaction 2019-03-18 14:25:17 +02:00
Rsl1122
770a896864 Boolean result store transaction 2019-03-18 14:24:07 +02:00