ArchiSteamFarm.ArchiWebHandler.RefreshSessionIfNeeded C# (CSharp) Метод

RefreshSessionIfNeeded() приватный Метод

private RefreshSessionIfNeeded ( ) : Task
Результат Task
		private async Task<bool> RefreshSessionIfNeeded() {
			if (DateTime.Now.Subtract(LastSessionRefreshCheck).TotalSeconds < MinSessionTTL) {
				return true;
			}

			await SessionSemaphore.WaitAsync().ConfigureAwait(false);

			try {
				if (DateTime.Now.Subtract(LastSessionRefreshCheck).TotalSeconds < MinSessionTTL) {
					return true;
				}

				bool? isLoggedIn = await IsLoggedIn().ConfigureAwait(false);
				if (isLoggedIn.GetValueOrDefault(true)) {
					LastSessionRefreshCheck = DateTime.Now;
					return true;
				} else {
					Bot.ArchiLogger.LogGenericInfo("Refreshing our session!");
					return await Bot.RefreshSession().ConfigureAwait(false);
				}
			} finally {
				SessionSemaphore.Release();
			}
		}