=== Summary: 675 files | 7 generated | 484 fresh | 4605 untracked | 4268 adopted | 355 marked | 466 validated-ok | 2+0 stale (sig+body) | 0 skipped | 0 failed | elapsed 11:08:11.442 (40091.44s) ===

This commit is contained in:
julian
2026-06-28 02:50:05 -07:00
parent a19fb90902
commit 586f02a2ca
654 changed files with 5260 additions and 0 deletions
@@ -13,23 +13,27 @@ public interface IRelayService
/// </summary>
/// <param name="relay">The relay whose status is being checked.</param>
/// <returns>A task that represents the asynchronous operation, containing the current <see cref="RelayEnum.Status"/> of the relay.</returns>
/// <!-- aidoc:v1 sig=2b11d08 -->
Task<RelayEnum.Status> CheckRelayStatus(Relay relay);
/// <summary>
/// Asynchronously checks the current status of the relay identified by the specified identifier.
/// </summary>
/// <param name="relayId">The unique identifier of the relay whose status is being queried.</param>
/// <returns>A task that represents the asynchronous operation, containing the <see cref="RelayEnum.Status"/> of the requested relay.</returns>
/// <!-- aidoc:v1 sig=8240e77 -->
Task<RelayEnum.Status> CheckRelayStatus(ObjectId relayId);
/// <summary>
/// Powers on the specified relay.
/// </summary>
/// <param name="relay">The relay to power on.</param>
/// <!-- aidoc:v1 sig=a6937ad -->
Task PowerOn(Relay relay);
/// <summary>
/// Powers off the specified relay by sending a command to deactivate it.
/// </summary>
/// <param name="relay">The relay to power off.</param>
/// <!-- aidoc:v1 sig=5540326 -->
Task PowerOff(Relay relay);
/// <summary>
/// Sets a manual relay with the specified status for the given point of contact and relay type.
@@ -37,18 +41,21 @@ public interface IRelayService
/// <param name="status">The status to apply to the manual relay.</param>
/// <param name="pocId">The identifier of the point of contact associated with the relay.</param>
/// <param name="type">The type of relay to set manually.</param>
/// <!-- aidoc:v1 sig=a56b641 -->
Task SetManualRelay(RelayEnum.Status status, ObjectId pocId, RelayEnum.Type type);
/// <summary>
/// Retrieves a relay by its unique identifier, returning <c>null</c> if no matching relay is found.
/// </summary>
/// <param name="relay">The unique identifier of the relay to look up.</param>
/// <returns>A <see cref="Task{TResult}"/> that resolves to the <see cref="Relay"/> if found, or <c>null</c> if no relay matches the provided identifier.</returns>
/// <!-- aidoc:v1 sig=89a52df -->
Task<Relay?> GetById(ObjectId relay);
/// <summary>
/// Retrieves the list of <see cref="Relay"/> objects corresponding to the specified collection of relay identifiers.
/// </summary>
/// <param name="relayList">The list of <see cref="ObjectId"/> values identifying the relays to retrieve. May be <c>null</c>.</param>
/// <returns>A <see cref="List{Relay}"/> containing the relays found for the provided identifiers.</returns>
/// <!-- aidoc:v1 sig=cab20f9 -->
List<Relay> GetRelayInList(List<ObjectId>? relayList);
/// <summary>
/// Retrieves the relays of a specified type from the provided configuration relay list.
@@ -56,6 +63,7 @@ public interface IRelayService
/// <param name="configurationRelayList">The list of relay ObjectIds to filter, or null if no configuration relays are available.</param>
/// <param name="type">The relay type to match against the configuration relays.</param>
/// <returns>A list of <see cref="Relay"/> objects that match the specified <paramref name="type"/>.</returns>
/// <!-- aidoc:v1 sig=ac9918d -->
List<Relay> GetRelayByTypeInList(List<ObjectId>? configurationRelayList, RelayEnum.Type type);
/// <summary>
@@ -63,12 +71,14 @@ public interface IRelayService
/// </summary>
/// <param name="request">The pagination filter containing the criteria used to retrieve the relays.</param>
/// <returns>A task that represents the asynchronous operation, containing the paginated response with the requested relays.</returns>
/// <!-- aidoc:v1 sig=171773b -->
Task<PaginationResponse<Relay>> GetPaginatedRelays(PaginationFilter request);
/// <summary>
/// Inserts a new relay record based on the provided request data.
/// </summary>
/// <param name="request">The relay entity to be inserted.</param>
/// <returns>A task that resolves to the inserted <see cref="Relay"/>, or <c>null</c> if the insert did not return a value.</returns>
/// <!-- aidoc:v1 sig=8e83e60 -->
Task<Relay?> InsertRelay(Relay request);
/// <summary>
/// Updates an existing relay identified by the specified <paramref name="objectId"/> with the provided <paramref name="relay"/> data.
@@ -77,5 +87,6 @@ public interface IRelayService
/// <param name="objectId">The unique identifier of the relay to update.</param>
/// <param name="relay">The relay data containing the updated values.</param>
/// <returns>A task that resolves to the updated <see cref="Relay"/>, or <c>null</c> if the relay was not found.</returns>
/// <!-- aidoc:v1 sig=cbb172b -->
Task<Relay?> UpdateRelayById(ObjectId objectId, Relay relay);
}