diff options
| author | Roy Ben Shabat <Roy.mail.net@gmail.com> | 2025-07-29 00:54:47 +0300 |
|---|---|---|
| committer | Roy Ben Shabat <Roy.mail.net@gmail.com> | 2025-07-29 00:54:47 +0300 |
| commit | 70f9f4dcbe3d4537ff2bd503f18288b9a7b0e19e (patch) | |
| tree | ab7c70dbe23c04e9e6ea9a165b6840e0b2ed1df7 /Software/Visual_Studio/Tango.Telemetry/TelemetryBase.cs | |
| parent | d70056692f43b2a39dbaefebe7c6e096a1205fb4 (diff) | |
| download | Tango-70f9f4dcbe3d4537ff2bd503f18288b9a7b0e19e.tar.gz Tango-70f9f4dcbe3d4537ff2bd503f18288b9a7b0e19e.zip | |
Tango.Telemetry v1
Diffstat (limited to 'Software/Visual_Studio/Tango.Telemetry/TelemetryBase.cs')
| -rw-r--r-- | Software/Visual_Studio/Tango.Telemetry/TelemetryBase.cs | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/Software/Visual_Studio/Tango.Telemetry/TelemetryBase.cs b/Software/Visual_Studio/Tango.Telemetry/TelemetryBase.cs new file mode 100644 index 000000000..3eda84a67 --- /dev/null +++ b/Software/Visual_Studio/Tango.Telemetry/TelemetryBase.cs @@ -0,0 +1,40 @@ +using LiteDB; +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Tango.Telemetry +{ + public class TelemetryBase : ITelemetry + { + [BsonId(true)] + public int Id { get; set; } + public DateTime Time { get; set; } + public List<string> PendingDestinations { get; set; } + + public TelemetryBase() + { + PendingDestinations = new List<string>(); + } + + public byte[] ToBytes(Formatting format = Formatting.None, bool flatten = true) + { + return Encoding.UTF8.GetBytes(ToJson(format, flatten)); + } + + public string ToJson(Formatting format = Formatting.None, bool flatten = true) + { + if (flatten) + { + return JsonFlattener.FlattenObjectToFlatJson(this, format); + } + else + { + return JsonConvert.SerializeObject(this, format); + } + } + } +} |
