using System; using System.Web; using Kreta.BusinessLogic.Classes.MobileApi.Common.Co; namespace Kreta.Web.Areas.MobileApi.ModelConverter { public static class MobileUserModelConverter { /// /// Try get mobile user from http context /// /// Mobile user /// True if mobile user exists public static bool TryLoadFromHttpContext(out MobileUser mobileUser) { mobileUser = (MobileUser)HttpContext.Current?.Items?[nameof(MobileUser)]; return mobileUser != null; } /// /// Try get mobile user from http context /// /// Mobile user /// True if mobile user exists public static MobileUser GetFromHttpContext() { MobileUser user; if (!TryLoadFromHttpContext(out user)) { throw new InvalidOperationException($"There is no existing mobile user in http context {nameof(MobileUser)}"); } return user; } } }