1
0
mirror of https://github.com/bitwarden/mobile synced 2026-01-03 17:13:50 +00:00

set up user settings data table and access repository

This commit is contained in:
Kyle Spearrin
2017-02-08 20:39:37 -05:00
parent 230722945e
commit 3ad1e8a3ba
10 changed files with 69 additions and 0 deletions

View File

@@ -39,6 +39,11 @@ namespace Bit.App.Repositories
Connection.Update(obj);
return Task.FromResult(0);
}
public virtual Task UpsertAsync(T obj)
{
Connection.InsertOrReplace(obj);
return Task.FromResult(0);
}
public virtual async Task DeleteAsync(T obj)
{

View File

@@ -0,0 +1,30 @@
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Bit.App.Abstractions;
using Bit.App.Models.Data;
using Newtonsoft.Json;
namespace Bit.App.Repositories
{
public class SettingsRepository : Repository<SettingsData, string>, ISettingsRepository
{
public SettingsRepository(ISqlService sqlService)
: base(sqlService)
{ }
public Task<IEnumerable<IEnumerable<string>>> GetEquivablentDomains(string userId)
{
var equivalentDomainsJson = Connection.Table<SettingsData>().Where(f => f.Id == userId)
.Select(f => f.EquivalentDomains).FirstOrDefault();
if(string.IsNullOrWhiteSpace(equivalentDomainsJson))
{
return Task.FromResult<IEnumerable<IEnumerable<string>>>(null);
}
var equivalentDomains = JsonConvert.DeserializeObject<IEnumerable<IEnumerable<string>>>(equivalentDomainsJson);
return Task.FromResult(equivalentDomains);
}
}
}