Commit Graph

2894 Commits

Author SHA1 Message Date
Rsl1122
3ab30f8b9f Transactions can now be executed within other Transactions:
- No save point/connection management overhead.
2019-02-16 14:28:06 +02:00
Rsl1122
edb6a6eb72 Refactored WorldTimesTable#getWorldTimesOfUser to a query 2019-02-16 14:28:05 +02:00
Rsl1122
767bc89db0 Fixed CommonDBTest#worldNamesAreStored 2019-02-16 14:28:04 +02:00
Rsl1122
b4a125b4b5 Renamed AggregateQueries to ServerAggregateQueries 2019-02-16 14:28:03 +02:00
Rsl1122
57827b9154 Changes to WorldTable:
- Removed 'extends Table'
- Made constructor private
- Now only contains static variables and methods
- Removes getter from SQLDB
2019-02-16 14:28:02 +02:00
Rsl1122
b5ecc227f1 Removed WorldTable#saveWorlds 2019-02-16 14:28:01 +02:00
Rsl1122
35d5db638d Removed WorldTable#getWorldNames 2019-02-16 14:28:00 +02:00
Rsl1122
a548ae6cf6 Removed WorldTable#saveWorlds 2019-02-16 14:28:00 +02:00
Rsl1122
9e9196b181 Transaction for storing World names.
Used on Gamemode change, World change or on join event.
This should ensure that the world name is stored when the session is
saved.
2019-02-16 14:27:59 +02:00
Rsl1122
d095c791fb Moved db.sql.queries to db.access.queries 2019-02-16 14:27:58 +02:00
Rsl1122
4805498e41 Save world name when session is saved (temporarily) - fix 2019-02-16 14:27:57 +02:00
Rsl1122
b3d9efc502 Removed WorldTable#getWorlds() - not used 2019-02-16 14:27:56 +02:00
Rsl1122
02a3a0a58a New worlds now saved when session is saved (temporarily):
This behavior is to be changed once World change event runs its own
transaction for storing new world names.
2019-02-16 14:27:56 +02:00
Rsl1122
69abb4d406 Removed ServerTable:statementSelectServerNameID - not used 2019-02-16 14:27:55 +02:00
Rsl1122
4ecf98edfd Removed NicknamesTable#getAllNicknames - not used 2019-02-16 14:27:54 +02:00
Rsl1122
a63ab7d65c Refactored SessionsTable#saveSession to an executable:
Affected:
- KillsTable#savePlayerKills
- WorldTimesTable#saveWorldTimes
- KillsTable and WorldTimesTable where execution contained duplication
  with LargeStoreQueries, mainly INSERT_STATEMENT and batch additions
- SessionCache#endSession now returns an Optional Session for future
  refactoring, when Logout transaction is being made.
2019-02-16 14:27:53 +02:00
Rsl1122
dc6ce30015 Refactored CommandStoreTransaction stuff into executables 2019-02-16 14:27:52 +02:00
Rsl1122
4315b53ca3 [#900] Refactored WorldTimesTable#getWorldTimesOfServer to a query:
- Changed GROUP BY to group by world_name instead, this should fix the
  issue, even if it could not be reproduced.
2019-02-16 14:27:51 +02:00
Rsl1122
0a7695a3d3 [#900] Attempt to reproduce bug with a test 2019-02-16 14:27:51 +02:00
Rsl1122
4809f0e7de Missing license header to CommandStoreTransaction 2019-02-16 14:27:50 +02:00
Rsl1122
2951be69a5 CommandStoreTransaction, changes to CommandUseTable:
- Refactored CommandUseTable#commandUsed into a transaction
- Removed 'extends Table' from CommandUseTable
- Made CommandUseTable constructor private
- Removed SaveOperations#commandUsed
- Removed CommandProcessor
2019-02-16 14:27:50 +02:00
Rsl1122
9b7e12ccfb Replace usages of FetchOperations that fetch containers with the queries 2019-02-16 14:27:49 +02:00
Rsl1122
8fe712ccfe Fix sql syntax error 2019-02-16 14:27:48 +02:00
Rsl1122
03335ec145 Removed CommandUseTable id related methods - not used 2019-02-16 14:27:47 +02:00
Rsl1122
41275a1f84 Refactored CommandUseTable#getCommandUse to a query 2019-02-16 14:27:45 +02:00
Rsl1122
e309f83c3d Removed CommandUseTable#getCommandUse() - not used 2019-02-16 14:27:44 +02:00
Rsl1122
0fae44cc80 Removed SQLDB#createTables 2019-02-16 14:27:44 +02:00
Rsl1122
73c9f71166 Refactor DB index creation task into a transaction 2019-02-16 14:27:43 +02:00
Rsl1122
300dc69e33 Fixed networkContainerSupportsAllNetworkKeys by:
- Ignoring Deprecated key fields when requiring support
2019-02-16 14:27:42 +02:00
Rsl1122
4ee31de3ed Refactored SQLDB#clean into a transaction 2019-02-16 14:27:42 +02:00
Rsl1122
0f79263424 Refactored TPSTable#getPeakPlayerCount+derivatives to queries:
Optimizes fetch for the player peaks
2019-02-16 14:27:41 +02:00
Rsl1122
35e967e2eb Renamed some OptionalFetchQueries to start with fetch 2019-02-16 14:27:41 +02:00
Rsl1122
dcde2e559f Removed TPSTable#getAllTimePeak() - not used 2019-02-16 14:27:40 +02:00
Rsl1122
08e0a4b6eb Removed TPSTable#getTPSData() - not used 2019-02-16 14:27:39 +02:00
Rsl1122
817ce5bbd9 AggregateQueries for server user counts:
- Removed CountOperations, SQLCountOps
- Removed UserInfoTable#getServerUserCount
- Removed UserInfoTable#getPlayersRegisteredForServers
- Optimized server box generation for network page, user counts
- Deprecated NetworkKeys.SERVER_REGISTER_DATA, no longer supported.
2019-02-16 14:27:39 +02:00
Rsl1122
fbb1bb72de Optimized ManageBackupCommand with #baseUserCount method
New backup is not initialized if the source database does not have users
2019-02-16 14:27:38 +02:00
Rsl1122
a99fe31b75 Added AggregateQueries#baseUserCount
Counts how many users Plan knows about
2019-02-16 14:27:37 +02:00
Rsl1122
019f75bafe Rename CountQueryStatement to HasMoreThanZeroQueryStatement
This is to avoid confusion as the Query is of type Boolean instead of
Integer.
2019-02-16 14:27:37 +02:00
Rsl1122
9e496914b3 Refactored SQLFetchOps#get___PlayerContainers to a queries 2019-02-16 14:27:36 +02:00
Rsl1122
d4b5731e2e Refactored SQLFetchOps#getPlayerContainer to a query 2019-02-16 14:27:35 +02:00
Rsl1122
6023b9e88c Split ServerContainerQuery and NetworkContainerQuery into classes 2019-02-16 14:27:35 +02:00
Rsl1122
0ae37f017a Refactored SecurityTable#getWebUser into a query
- Removes CheckOperations#doesWebUserExists
- Removed usages of FetchOperations#getWebUser
- Split WebUser functionality test into 3 tests
2019-02-16 14:27:34 +02:00
Rsl1122
46a41de81d Removed SQLDB#getAllTables and #getAllTablesRemoveOrder 2019-02-16 14:27:33 +02:00
Rsl1122
6f39b19470 Refactored some Container fetch operations into queries:
- FetchOperations#getNetworkContainer refactored into a query
- FetchOperations#getServerContainer refactored into a query
- Deprecated SQLDB#get[TableName] methods
- Deprecated SQLDB#getAllTables & SQLDB#getAllTablesRemoveOrder
- Deprecated All Operations interfaces

Everything deprecated in this commit will be removed.
2019-02-16 14:27:32 +02:00
Rsl1122
afa0715416 Removed outdated TODOs 2019-02-16 14:27:32 +02:00
Rsl1122
685c58ec42 Refactored PingTable#insertAllPings to an executable
- Renamed some of the new methods
2019-02-16 14:27:31 +02:00
Rsl1122
ee0462c1d0 Fix four failing db WorldTimes tests 2019-02-16 14:27:30 +02:00
Rsl1122
7559ab2904 Refactored SessionsTable#insertSessions to an executable:
Also affected:
- KillsTable#savePlayerKills
- WorldTimesTable#saveWorldTimes
2019-02-16 14:27:30 +02:00
Rsl1122
f48b45ccb2 Removed UsersTable#updateKicked 2019-02-16 14:27:29 +02:00
Rsl1122
35c9caf59a Refactored UsersTable#insertUsers to an executable:
- New object to represent plan_users data, BaseUser
- Deprecated UserInfo#getName
2019-02-16 14:27:29 +02:00