actually fix the session score concurrency issue

fix rare bug with shared guid kicker plugin
allow hiding of the connection lost notification
This commit is contained in:
RaidMax
2020-04-22 18:46:41 -05:00
parent 9e74dac5ed
commit 92a26600af
10 changed files with 240 additions and 41 deletions

View File

@ -96,6 +96,8 @@ namespace SharedLibraryCore.Configuration
public QuickMessageConfiguration[] QuickMessages { get; set; }
[ConfigurationIgnore]
public string WebfrontUrl => string.IsNullOrEmpty(ManualWebfrontUrl) ? WebfrontBindUrl?.Replace("0.0.0.0", "127.0.0.1") : ManualWebfrontUrl;
[ConfigurationIgnore]
public bool IgnoreServerConnectionLost { get; set; }
public IBaseConfiguration Generate()
{

View File

@ -285,7 +285,7 @@ namespace SharedLibraryCore
public List<Report> Reports { get; set; }
public List<ChatInfo> ChatHistory { get; protected set; }
public Queue<PlayerHistory> ClientHistory { get; private set; }
public Game GameName { get; protected set; }
public Game GameName { get; set; }
// Info
public string Hostname { get; protected set; }

View File

@ -374,6 +374,7 @@ namespace SharedLibraryCore.Services
EF.CompileAsyncQuery((DatabaseContext context, long networkId) =>
context.Clients
.Include(c => c.CurrentAlias)
.Include(c => c.AliasLink)
.Select(_client => new EFClient()
{
ClientId = _client.ClientId,
@ -389,7 +390,7 @@ namespace SharedLibraryCore.Services
.FirstOrDefault(c => c.NetworkId == networkId)
);
public async Task<EFClient> GetUnique(long entityAttribute)
public virtual async Task<EFClient> GetUnique(long entityAttribute)
{
using (var context = new DatabaseContext(true))
{