Innovenergy_trunk/csharp/app/API/LoginState.cs

30 lines
750 B
C#

using InnovEnergy.API.DataModel;
namespace InnovEnergy.API;
public class LoginState
{
public static readonly Random Rng = new Random();
public User LoginUser { get; }
public Folder HomeFolder { get; }
public String Token { get; }
public String? Error { get; set; }
public Int32 DataVersion { get; set; }
public LoginState(User loginUser, Folder homeFolder, Int32 dataVersion)
{
LoginUser = loginUser;
HomeFolder = homeFolder;
DataVersion = dataVersion;
Token = GenerateToken();
}
private static String GenerateToken()
{
var buffer = new Byte[16];
Rng.NextBytes(buffer);
return Convert.ToBase64String(buffer);
}
}