diff options
Diffstat (limited to 'Software/Visual_Studio/Tango.Telemetry/TelemetryLiteDbPendingStorageManager.cs')
| -rw-r--r-- | Software/Visual_Studio/Tango.Telemetry/TelemetryLiteDbPendingStorageManager.cs | 80 |
1 files changed, 0 insertions, 80 deletions
diff --git a/Software/Visual_Studio/Tango.Telemetry/TelemetryLiteDbPendingStorageManager.cs b/Software/Visual_Studio/Tango.Telemetry/TelemetryLiteDbPendingStorageManager.cs deleted file mode 100644 index 47b8db826..000000000 --- a/Software/Visual_Studio/Tango.Telemetry/TelemetryLiteDbPendingStorageManager.cs +++ /dev/null @@ -1,80 +0,0 @@ -using LiteDB; -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace Tango.Telemetry -{ - public class TelemetryLiteDbPendingStorageManager : ITelemetryPendingStorageManager - { - private bool _disposed; - private LiteDatabase _database; - - public String DatabasePath { get; private set; } - - public TelemetryLiteDbPendingStorageManager() - { - DatabasePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "Twine", "Tango", "Telemetry", Path.GetFileNameWithoutExtension(AppDomain.CurrentDomain.FriendlyName) + ".telemetry"); - Directory.CreateDirectory(Path.GetDirectoryName(DatabasePath)); - - _database = new LiteDatabase($"Filename={DatabasePath}"); - _database.Pragma("TIMEOUT", 10); //Read Timeout - _database.Pragma("UTC_DATE", true); //Keep time as UTC when getting data - _database.Commit(); - } - - public virtual void Dispose() - { - if (_database != null) - { - try - { - _disposed = true; - _database.Dispose(); - _database = null; - } - catch { } - } - } - - ~TelemetryLiteDbPendingStorageManager() - { - Dispose(); - } - - private ILiteCollection<T> GetCollection<T>() where T : ITelemetry - { - return _database.GetCollection<T>(); - } - - public void InsertOrUpdateTelemetryObject<T>(T telemetry) where T : ITelemetry - { - var collection = GetCollection<T>(); - collection.Upsert(telemetry); - } - - public void DeleteTelemetryObject<T>(T telemetry) where T : ITelemetry - { - var collection = GetCollection<T>(); - collection.Delete(telemetry.Id); - } - - public List<ITelemetry> GetTelemetryAll() - { - var names = _database.GetCollectionNames(); - - List<ITelemetry> telemetryAll = new List<ITelemetry>(); - - foreach (var name in names) - { - var collection = _database.GetCollection<ITelemetry>(name); - telemetryAll.AddRange(collection.FindAll().ToList()); - } - - return telemetryAll.OrderBy(x => x.Time).ToList(); - } - } -} |
