57 Commits

Author SHA1 Message Date
Gabriele C
273c318e96 Cleanup 2017-11-02 11:24:17 +01:00
ljacqu
90073ef95d Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into 792-registration-date-and-ip
Conflicts:
	src/main/java/fr/xephi/authme/command/executable/authme/RegisterAdminCommand.java
	src/main/java/fr/xephi/authme/datasource/Columns.java
	src/main/java/fr/xephi/authme/datasource/SQLite.java
	src/main/java/fr/xephi/authme/process/join/AsynchronousJoin.java
	src/main/java/fr/xephi/authme/service/SessionService.java
	src/main/java/fr/xephi/authme/settings/properties/DatabaseSettings.java
	src/test/java/fr/xephi/authme/service/SessionServiceTest.java
	src/test/resources/fr/xephi/authme/datasource/sql-initialize.sql
2017-10-15 23:45:41 +02:00
Gabriele C
22e95493de #1031 Introduce hasSession field in datasource (#1351)
* Introduce hasSession field in datasource

That makes isLogged more consistent as it will be '1' only when the player is online.

* Fixes

* Fix unit testing

* Update config doc

* Create SessionService

* Create test for SessionService, avoid DB operations if sessions are disabled

* Cleanup: remove outdated warning for session timeout = 0
- Remove outdated warning
- Encapsulate session enabled check in SessionService

* Fix failing SessionServiceTest, add data source integration tests for session methods
2017-10-15 18:32:51 +02:00
ljacqu
ea58e20c3d #792 Include registration date into purging logic
- Take MAX(reg_date, login_date) as timestamp to compare against
- Remove the second "all" parameter to include entries with 0 registration date -> we expect registration date to always be set to the current date, so the parameter becomes obsolete
2017-10-15 18:29:01 +02:00
ljacqu
07633a89c8 Create SQL data source utils class
- Extract logic used in SQLite and MySQL for logging and closing SQL objects
    - Decided to leave buildAuthFromResultSet methods individually as this might be more implementation-specific
- Rename DataSource#close to DataSource#closeConnection to fix conflict with static import
2017-04-18 22:55:39 +02:00
ljacqu
04ca36fe53 Use more specific query to get logged in players without email
- Reduces the amount of data returned from the DB and the work required to build objects
2017-04-18 22:30:54 +02:00
ljacqu
b99cc3bada #1127 Create DataSource#getEmail 2017-04-18 21:07:31 +02:00
ljacqu
a764598f88 Adjust repo links in code 2017-03-28 08:11:00 +02:00
Gabriele C
58c42cf300 Package cleanup
- authme.cache to authme.data
- Rename PlayerData to LimboPlayer to match with LimboCache
- Move authme.converter to authme.datasource.converter
- Split output package into output and message
2016-10-05 21:10:40 +02:00
ljacqu
ff9f50f63f #886 Do not include players with lastlogin = 0 in autopurge or default purge 2016-09-18 16:49:34 +02:00
ljacqu
5953bfd012 #784 Separate purge execution and purge task creation
- Delete accounts in PurgeExecutor, after permission check
2016-07-17 17:33:25 +02:00
ljacqu
dccbd5262f Don't update IP twice
- IP is updated in datasource#updateSession after successful login
- Remove no longer used DataSource#updateIp
2016-07-12 21:45:05 +02:00
ljacqu
3629c51fc1 #674 PurgeService: Always register if purging, reduce code duplication
- Rename autoPurging to isPurging: we should always register if a purge task is in progress (regardless if autopurge or not) and deny any new requests
- Reduce the same logic being coded multiple times by calling through the methods
- DataSource: remove purgeBanned in favor of purgeRecords, both do exactly the same thing
2016-06-16 22:52:11 +02:00
Gnat008
fb8baeafd2 remove database auto purge methods 2016-06-16 12:52:42 -04:00
Gnat008
af1520802d major refactor of the purging process 2016-06-16 12:28:42 -04:00
Gabriele C
df2329fd9a Fix conflict 2016-05-16 16:27:59 +02:00
ljacqu
e04f7dc711 #704 Implement reloading via injector
- Create interfaces Reloadable and SettingsDependent to recognize reloadable classes
- Iterate through instances in injector to reload
2016-05-12 19:51:10 +02:00
games647
0bd6ac5cc8 Make the purge progress run more balanced (Fixes #696) 2016-05-09 13:09:40 +02:00
ljacqu
ca0cbe6caf Code householding
- Move console initialization for tests into TestHelper
- Remove unused properties in legacy Settings
- Add issue number to TODO comments where applicable
2016-04-14 12:28:19 +02:00
ljacqu
b6ccb3e632 #567 Add/change email should be aware of account threshold 2016-04-03 14:24:12 +02:00
ljacqu
dfc713fde6 Reload only specific entities (work in progress)
- Remove attempt of reinitializing all components -> will lead to inconsistent states. Call reload on reloadable components instead
2016-03-09 18:39:04 +01:00
ljacqu
98df21d75a #575 Hotfix for reload support
- Create temporary method for reloading any stateful entities -> a lot of duplicated code, to be fixed soon within #432
- Remove unused methods
2016-03-05 22:30:35 +01:00
ljacqu
27b1fa770f #392 Add datasource integration tests 2016-02-26 22:12:16 +01:00
ljacqu
e8f518711c #442 Fix email presence check being case-insensitive
- Add integration tests
- Change DataSource interface to return the number of accounts only, since that's all we require
2016-02-21 21:38:29 +01:00
ljacqu
374113ff01 #534 Send error if name is restricted 2016-02-20 07:25:14 +01:00
DNx5
cc29d8b628 Fix duplicate entry error, #528 2016-02-20 06:47:59 +07:00
ljacqu
90e0dc1875 Various code householding
- Remove unused API on DataSource
- Add some sensible javadoc to DataSource
- Minor code simplification
2016-02-19 23:19:38 +01:00
DNx5
7c1dd888cc Fix real name update. 2016-02-16 07:14:40 +07:00
ljacqu
db4d4a7cce #477 Change lastlogin column from bigint to timestamp (work in progress)
- Alter column type
- Create migration for MySQL
- Unrelated: move DataSource enum to its own file
2016-02-07 14:27:03 +01:00
ljacqu
b0ba893827 #437 Add/change email should check if email is already used
- Untested/incomplete implementation
2016-01-17 20:41:19 +01:00
DNx5
e0c3affa33 Merge branch 'master' into 137-xenforo-support
Conflicts:
	src/main/java/fr/xephi/authme/datasource/CacheDataSource.java
	src/main/java/fr/xephi/authme/datasource/DataSource.java
	src/main/java/fr/xephi/authme/datasource/SQLite.java
	src/main/java/fr/xephi/authme/security/crypts/BCRYPT.java
2016-01-06 12:15:27 +07:00
DNx5
0c305a6287 Added new updatePassword method in DataSource class 2015-12-31 12:55:34 +07:00
DNx5
bd5d341e67 Xenforo support.
- Added getPassword method in DataSource and all implementations.
2015-12-31 11:05:18 +07:00
Xephi59
e1a84448a2 Fix the whole Javadoc syntax 2015-12-31 01:06:09 +01:00
ljacqu
a3402d573f #358 Handle hash + salt as one "unit"
- Rename HashResult to EncryptedPassword to reflect its broader use
- Use EncryptedPassword in methods that require the hash and the salt, instead of passing them as strings separately
- Store EncryptedPassword as field in PlayerAuth; updatePassword() thus processes the entire data in the EncryptedPassword object
2015-12-30 17:56:22 +01:00
DNx5
efcdca4087 Use Guava cache for caching PlayerAuth object. 2015-12-12 20:16:56 +07:00
Tim Visée
47b1d00ccf Fixed various spelling and grammar issues 2015-11-23 22:07:32 +01:00
Tim Visée
36c50c4507 Reformatted code with new code style 2015-11-23 21:46:34 +01:00
AuthMe-Team
9ec2d6d059 Stuff from the common floobits workspace
Author:    AuthMe-Team <AuthMeTeam@123NoEmail.com>
2015-11-23 20:23:52 +01:00
Gabriele C
bd1f868c6d standard javadoc 2015-11-21 01:31:18 +01:00
Gabriele C
118c79401a Prepare the project for javadocs 2015-11-21 01:27:06 +01:00
Gabriele C
d4498521c3 Remove useless hikari sqlite mode 2015-11-08 01:35:13 +01:00
Gabriele C
ddda62aa14 cleaup 2015-11-07 00:13:29 +01:00
DNx5
ce432aa25a add exception to datasource method signature. 2015-11-03 12:38:24 +07:00
Gabriele C
3567fc909d Organize imports 2015-10-09 19:18:24 +02:00
DNx5
3620b712b7 improve DatabaseCalls, 2015-09-15 14:38:55 +07:00
Gabriele C
c0eb15ee49 Cleanup 2015-09-07 20:38:29 +02:00
DNx5
200ff01cd9 never return null, just throw exception. 2015-09-06 22:24:23 +07:00
Xephi59
4c2fad3643 Fix LowerCase issue 2015-07-23 16:23:25 +02:00
Xephi59
030e9b599e Dramastically increase performance
Maybe fix low tps :O
2015-06-27 04:19:59 +02:00