1eb6e972b0
Bulk CommentChecker pass: fills in <param>/<inheritdoc> tags on public APIs across all 23 src/ projects so the doc-coverage gate is green. Also adds a Sister Projects section to CLAUDE.md pointing at the MxAccess Gateway and OtOpcUa sibling repos, and gitignores local credential captures (*login*.txt) and the wonder-app-vd03 deploy/ artifacts.
68 lines
2.0 KiB
C#
68 lines
2.0 KiB
C#
using ScadaLink.Commons.Types.Enums;
|
|
|
|
namespace ScadaLink.Commons.Entities.Deployment;
|
|
|
|
public class DeploymentRecord
|
|
{
|
|
/// <summary>
|
|
/// The deployment record identifier.
|
|
/// </summary>
|
|
public int Id { get; set; }
|
|
|
|
/// <summary>
|
|
/// The instance identifier being deployed.
|
|
/// </summary>
|
|
public int InstanceId { get; set; }
|
|
|
|
/// <summary>
|
|
/// The current deployment status.
|
|
/// </summary>
|
|
public DeploymentStatus Status { get; set; }
|
|
|
|
/// <summary>
|
|
/// The deployment identifier.
|
|
/// </summary>
|
|
public string DeploymentId { get; set; }
|
|
|
|
/// <summary>
|
|
/// The revision hash of the deployed configuration, or null.
|
|
/// </summary>
|
|
public string? RevisionHash { get; set; }
|
|
|
|
/// <summary>
|
|
/// The user who initiated the deployment.
|
|
/// </summary>
|
|
public string DeployedBy { get; set; }
|
|
|
|
/// <summary>
|
|
/// The time when the deployment was initiated.
|
|
/// </summary>
|
|
public DateTimeOffset DeployedAt { get; set; }
|
|
|
|
/// <summary>
|
|
/// The time when the deployment completed, or null if still in progress.
|
|
/// </summary>
|
|
public DateTimeOffset? CompletedAt { get; set; }
|
|
|
|
/// <summary>
|
|
/// Error message if the deployment failed, or null.
|
|
/// </summary>
|
|
public string? ErrorMessage { get; set; }
|
|
|
|
/// <summary>
|
|
/// WP-4: Optimistic concurrency token for deployment status updates.
|
|
/// </summary>
|
|
public byte[] RowVersion { get; set; } = [];
|
|
|
|
/// <summary>
|
|
/// Initializes a new instance of the DeploymentRecord.
|
|
/// </summary>
|
|
/// <param name="deploymentId">The deployment identifier.</param>
|
|
/// <param name="deployedBy">The user initiating the deployment.</param>
|
|
public DeploymentRecord(string deploymentId, string deployedBy)
|
|
{
|
|
DeploymentId = deploymentId ?? throw new ArgumentNullException(nameof(deploymentId));
|
|
DeployedBy = deployedBy ?? throw new ArgumentNullException(nameof(deployedBy));
|
|
}
|
|
}
|