mirror of
https://github.com/jwetzell/qController.git
synced 2026-08-17 05:13:40 +00:00
initial working maui migration with android only
This commit is contained in:
@@ -0,0 +1,70 @@
|
||||
using Serilog;
|
||||
using System.Collections.ObjectModel;
|
||||
using Acr.Settings;
|
||||
using qController.QItems;
|
||||
|
||||
namespace qController
|
||||
{
|
||||
public class QStorage
|
||||
{
|
||||
public static ObservableCollection<QInstance> qInstances;
|
||||
static QStorage(){
|
||||
|
||||
qInstances = (ObservableCollection<QInstance>)CrossSettings.Current.GetValue(new ObservableCollection<QInstance>().GetType(), "qInstances", null);
|
||||
|
||||
if (qInstances == null)
|
||||
{
|
||||
Log.Debug("QSTORAGE - No qInstance exists creating one");
|
||||
qInstances = new ObservableCollection<QInstance>();
|
||||
updateStorage();
|
||||
}
|
||||
}
|
||||
|
||||
public static bool AddInstance(string name, string address){
|
||||
return AddInstance(new QInstance(name, address));
|
||||
}
|
||||
|
||||
public static bool AddInstance(QInstance q){
|
||||
if(!Contains(q.name, q.address)){
|
||||
qInstances.Add(q);
|
||||
updateStorage();
|
||||
return true;
|
||||
}else{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public static void RemoveInstance(string name, string address){
|
||||
foreach (var item in qInstances)
|
||||
{
|
||||
if(item.address == address && item.name == name){
|
||||
RemoveInstance(item);
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
public static void RemoveInstance(QInstance q){
|
||||
qInstances.Remove(q);
|
||||
updateStorage();
|
||||
}
|
||||
|
||||
private static void updateStorage(){
|
||||
CrossSettings.Current.SetValue("qInstances", qInstances);
|
||||
}
|
||||
|
||||
public static bool Contains(string name, string address){
|
||||
foreach (var item in qInstances)
|
||||
{
|
||||
Log.Information("Item name: " + item.name + " Found Name: " + name);
|
||||
if (item.address == address)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
public bool IsEmpty(){
|
||||
return qInstances.Count == 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user