diff options
Diffstat (limited to 'Software/Visual_Studio/Tango.Telemetry/ITelemetryDestination.cs')
| -rw-r--r-- | Software/Visual_Studio/Tango.Telemetry/ITelemetryDestination.cs | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/Software/Visual_Studio/Tango.Telemetry/ITelemetryDestination.cs b/Software/Visual_Studio/Tango.Telemetry/ITelemetryDestination.cs index 10424531b..aec3d164a 100644 --- a/Software/Visual_Studio/Tango.Telemetry/ITelemetryDestination.cs +++ b/Software/Visual_Studio/Tango.Telemetry/ITelemetryDestination.cs @@ -6,12 +6,33 @@ using System.Threading.Tasks; namespace Tango.Telemetry { + /// <summary> + /// Represents a target destination that can receive and process published telemetry data. + /// Implementations may include cloud services, databases, or custom sinks. + /// </summary> public interface ITelemetryDestination : IDisposable { - bool Enable { get; set; } + /// <summary> + /// Gets or sets the unique name of the destination used for identification and logging. + /// </summary> String Name { get; set; } + + /// <summary> + /// Checks whether the destination is currently available to receive telemetry. + /// </summary> + /// <returns>True if the destination is available; otherwise, false.</returns> Task<bool> IsAvailable(); + + /// <summary> + /// Gets a read-only list of source types that this destination supports. + /// </summary> IReadOnlyList<TelemetrySourceTypes> SupportedSourceTypes { get; } + + /// <summary> + /// Publishes the given telemetry package along with machine metadata properties. + /// </summary> + /// <param name="package">The telemetry package to publish.</param> + /// <param name="properties">Metadata properties such as SerialNumber, MachineType, and Environment.</param> Task Publish(TelemetryPublishPackage package, List<KeyValuePair<String, String>> properties); } -} +}
\ No newline at end of file |
