diff --git a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/MethodType.java b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/MethodType.java index 5939d2c98..03bed638a 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/MethodType.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/MethodType.java @@ -30,10 +30,6 @@ import java.util.UUID; */ public enum MethodType { - @Deprecated - PLAYER_UUID, - @Deprecated - PLAYER_NAME, PLAYER, GROUP, SERVER; diff --git a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionAggregateBooleansQuery.java b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionAggregateBooleansQuery.java index 2c028af30..3eb30568c 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionAggregateBooleansQuery.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionAggregateBooleansQuery.java @@ -40,17 +40,15 @@ import java.util.UUID; import static com.djrapitops.plan.storage.database.sql.building.Sql.*; /** - * Query aggregated boolean values from player value table. + * Query for selecting a percentage of true for each boolean provided for players. *

- * Returns Map: PluginID - ExtensionServerData.Factory. + * Returns Map: PluginID - {@link ExtensionData.Builder}. *

* How it is done: - * - Combines three queries, one that selects true boolean count, one that selects boolean value count and one that selects provider information. - * - Data query is sorted into a multi-map: PluginID - Tab Name - Tab Data - * - (Tab Name can be empty.) - * - Multi-map is sorted into ExtensionPlayerData objects by PluginID, one per ID - *

- * There are multiple data extraction methods to make extracting the value query easier. + * 1. Query count of boolean values + * 2. Query count of boolean=true + * 3. Combine with provider information + * 4. Map into ExtensionData objects by PluginID, one per ID * * @author Rsl1122 */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionAggregateDoublesQuery.java b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionAggregateDoublesQuery.java index ad596c117..5bbd52bc3 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionAggregateDoublesQuery.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionAggregateDoublesQuery.java @@ -40,17 +40,14 @@ import java.util.UUID; import static com.djrapitops.plan.storage.database.sql.building.Sql.*; /** - * Query aggregated boolean values from player value table. + * Query for selecting average and total for each double value provided for players. *

- * Returns Map: PluginID - ExtensionServerData.Factory. + * Returns Map: PluginID - {@link ExtensionData.Builder}. *

* How it is done: - * - Combines three queries, one that selects true boolean count, one that selects boolean value count and one that selects provider information. - * - Data query is sorted into a multi-map: PluginID - Tab Name - Tab Data - * - (Tab Name can be empty.) - * - Multi-map is sorted into ExtensionPlayerData objects by PluginID, one per ID - *

- * There are multiple data extraction methods to make extracting the value query easier. + * 1. Query averages and totals + * 2. Join with provider information query + * 3. Map into ExtensionData objects by PluginID, one per ID * * @author Rsl1122 */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionAggregateGroupsQuery.java b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionAggregateGroupsQuery.java index d49b74a2c..c497acf5f 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionAggregateGroupsQuery.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionAggregateGroupsQuery.java @@ -38,9 +38,14 @@ import java.util.UUID; import static com.djrapitops.plan.storage.database.sql.building.Sql.*; /** - * Query aggregated Group values from groups table. + * Query for selecting Tables out of groups for players. *

- * Returns Map: PluginID - ExtensionServerData.Factory. + * Returns Map: PluginID - {@link ExtensionData.Builder}. + *

+ * How it's done: + * 1. Query count for each group name + * 2. Join with provider information + * 3. Map to ExtensionData objects, one per Plugin ID * * @author Rsl1122 */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionAggregateNumbersQuery.java b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionAggregateNumbersQuery.java index a739598fc..527b752dc 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionAggregateNumbersQuery.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionAggregateNumbersQuery.java @@ -41,17 +41,14 @@ import java.util.UUID; import static com.djrapitops.plan.storage.database.sql.building.Sql.*; /** - * Query aggregated boolean values from player value table. + * Query for selecting average and total for each number value provided for players. *

- * Returns Map: PluginID - ExtensionServerData.Factory. + * Returns Map: PluginID - {@link ExtensionData.Builder}. *

* How it is done: - * - Combines three queries, one that selects true boolean count, one that selects boolean value count and one that selects provider information. - * - Data query is sorted into a multi-map: PluginID - Tab Name - Tab Data - * - (Tab Name can be empty.) - * - Multi-map is sorted into ExtensionPlayerData objects by PluginID, one per ID - *

- * There are multiple data extraction methods to make extracting the value query easier. + * 1. Query averages and totals + * 2. Join with provider information query + * 3. Map into ExtensionData objects by PluginID, one per ID * * @author Rsl1122 */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionAggregatePercentagesQuery.java b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionAggregatePercentagesQuery.java index cc96e8f25..44d3ae97d 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionAggregatePercentagesQuery.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionAggregatePercentagesQuery.java @@ -40,17 +40,14 @@ import java.util.UUID; import static com.djrapitops.plan.storage.database.sql.building.Sql.*; /** - * Query aggregated boolean values from player value table. + * Query for selecting average for each percentage value provided for players. *

- * Returns Map: PluginID - ExtensionServerData.Factory. + * Returns Map: PluginID - {@link ExtensionData.Builder}. *

* How it is done: - * - Combines three queries, one that selects true boolean count, one that selects boolean value count and one that selects provider information. - * - Data query is sorted into a multi-map: PluginID - Tab Name - Tab Data - * - (Tab Name can be empty.) - * - Multi-map is sorted into ExtensionPlayerData objects by PluginID, one per ID - *

- * There are multiple data extraction methods to make extracting the value query easier. + * 1. Query averages + * 2. Join with provider information query + * 3. Map into ExtensionData objects by PluginID, one per ID * * @author Rsl1122 */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionPlayerDataQuery.java b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionPlayerDataQuery.java index 8da94c2e3..f5f8136b7 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionPlayerDataQuery.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionPlayerDataQuery.java @@ -44,14 +44,11 @@ import static com.djrapitops.plan.storage.database.sql.building.Sql.*; *

* Returns Map: Server UUID - List of ExtensionData. *

- * How it is done: - * - Two queries are run, one that fetches all extensions and one that fetches all data of the player. - * - Data query is sorted into a multi-map: PluginID - Tab Name - Tab Data - * - (Tab Name can be empty.) - * - Multi-map is sorted into ExtensionData objects by PluginID, one per ID - * - This map is sorted into final Map: Server UUID - List of ExtensionData at the highest level. - *

- * There are multiple data extraction methods to make extracting the value query easier. + * Following utilities are used to query the data more easily. + * - {@link ExtensionData.Builder} + * - {@link QueriedTabData} + * - {@link QueriedTables} + * These utilities allow combining incomplete information. * * @author Rsl1122 */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionPlayerGroupsQuery.java b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionPlayerGroupsQuery.java index 62438c53b..b45e154c7 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionPlayerGroupsQuery.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionPlayerGroupsQuery.java @@ -42,7 +42,7 @@ import static com.djrapitops.plan.storage.database.sql.building.Sql.*; /** * Query player's Groups by Plugin ID inside ExtensionData objects. *

- * - Group names are represented as a String value, concatenated to a single one. + * - Group names are represented as a String value, concatenated to a single String, separated by ', '. * - String values are placed into Tabs they belong to * - Tabs are placed to plugin they belong to * - The map is returned diff --git a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionPlayerTablesQuery.java b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionPlayerTablesQuery.java index bb9b5468f..0ed323ad8 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionPlayerTablesQuery.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionPlayerTablesQuery.java @@ -41,16 +41,12 @@ import static com.djrapitops.plan.storage.database.sql.building.Sql.*; /** * Query player tables from tableprovider table. *

- * Returns Map: PluginID - ExtensionData.Factory. + * Returns Map: PluginID - {@link ExtensionData.Builder}. *

* How it is done: - * - TableProviders are queried and formed into Table.Factory objects sorted into a multi-map: PluginID - TableID - Table.Factory - * - Table values are queried and merged into the above multimap - * - Data query is sorted into a multi-map: PluginID - Tab Name - Tab Data - * - (Tab Name can be empty.) - * - Multi-map is sorted into ExtensionData objects by PluginID, one per ID - *

- * There are multiple data extraction methods to make extracting the value query easier. + * 1. TableProviders are queried and formed into {@link Table.Factory} objects inside {@link QueriedTables}. + * 2. Table values are queried and merged + * 3. QueriedTables is mapped into ExtensionData objects by PluginID, one per ID * * @author Rsl1122 */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionServerDataQuery.java b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionServerDataQuery.java index f2c843f5b..86f26e595 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionServerDataQuery.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionServerDataQuery.java @@ -36,19 +36,15 @@ import java.util.*; import static com.djrapitops.plan.storage.database.sql.building.Sql.*; /** - * Query ExtensionServerData of a server. + * Query ExtensionData of a server. *

- * Returns List of ExtensionServerData. + * Returns List of ExtensionData. *

- * How it is done: - * - Two queries are run, one that fetches all extensions and one that fetches all data of the player. - * - Data query is sorted into a multi-map: PluginID - Tab Name - Tab Data - * - (Tab Name can be empty.) - * - Multi-map is sorted into ExtensionServerData objects by PluginID, one per ID - * - This map is combined with similar maps that contain aggregated player values - * - This map is sorted into List of ExtensionPlayerData at the highest level. - *

- * There are multiple data extraction methods to make extracting the value query easier. + * Following utilities are used to query the data more easily. + * - {@link ExtensionData.Builder} + * - {@link QueriedTabData} + * - {@link QueriedTables} + * These utilities allow combining incomplete information. * * @author Rsl1122 */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionServerPlayerDataTableQuery.java b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionServerPlayerDataTableQuery.java index 26cba5ac3..5392c2d4f 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionServerPlayerDataTableQuery.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionServerPlayerDataTableQuery.java @@ -39,7 +39,7 @@ import static com.djrapitops.plan.storage.database.sql.building.Sql.*; /** * Query Extension data of x most recent players on a server. *

- * Returns Map: Player UUID - ExtensionTabData (container for provider based data) + * Returns Map: Player UUID - {@link ExtensionTabData} (container for provider based data) * * @author Rsl1122 */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionServerTablesQuery.java b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionServerTablesQuery.java index 7872604f9..847c2c869 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionServerTablesQuery.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/extension/implementation/storage/queries/ExtensionServerTablesQuery.java @@ -38,16 +38,12 @@ import static com.djrapitops.plan.storage.database.sql.building.Sql.*; /** * Query server tables from tableprovider table. *

- * Returns Map: PluginID - ExtensionServerData.Factory. + * Returns Map: PluginID - {@link ExtensionData.Builder}. *

* How it is done: - * - TableProviders are queried and formed into Table.Factory objects sorted into a multi-map: PluginID - TableID - Table.Factory - * - Table values are queried and merged into the above multimap - * - Data query is sorted into a multi-map: PluginID - Tab Name - Tab Data - * - (Tab Name can be empty.) - * - Multi-map is sorted into ExtensionServerData objects by PluginID, one per ID - *

- * There are multiple data extraction methods to make extracting the value query easier. + * 1. TableProviders are queried and formed into {@link Table.Factory} objects inside {@link QueriedTables}. + * 2. Table values are queried and merged + * 3. QueriedTables is mapped into ExtensionData objects by PluginID, one per ID * * @author Rsl1122 */ diff --git a/Plan/common/src/main/java/com/djrapitops/plan/extension/table/TableAccessor.java b/Plan/common/src/main/java/com/djrapitops/plan/extension/table/TableAccessor.java index 19fef428f..fb8ca6904 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/extension/table/TableAccessor.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/extension/table/TableAccessor.java @@ -21,7 +21,7 @@ import com.djrapitops.plan.extension.icon.Color; import com.djrapitops.plan.extension.icon.Icon; /** - * Utility for accessing implementation variables inside Table.Factory object. + * Utility for accessing implementation variables inside {@link Table.Factory} object. * * @author Rsl1122 */