AutoCatAvalonia/AutoCatCore/Services/Storage/StorageService.cs

39 lines
844 B
C#

using AutoCatCore.Model;
using Realms;
namespace AutoCatCore.Services.Storage;
public class StorageService: IStorageService
{
private readonly Realm _realm = Realm.GetInstance();
public bool IsLoggedIn
{
get
{
var user = _realm.All<User>().FirstOrDefault();
return user?.Token != null;
}
}
public string? AuthToken => _realm.All<User>().FirstOrDefault()?.Token;
public async Task SetUser(User user)
{
await _realm.WriteAsync(() =>
{
_realm.RemoveAll<User>();
_realm.Add(user);
});
}
public async Task AddVehicle(Vehicle vehicle)
{
await _realm.WriteAsync(() =>
{
_realm.Add(vehicle);
});
}
public IEnumerable<Vehicle> AllVehicles => _realm.All<Vehicle>();
}