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;
}
}
}