| | | 1 | | using ArturRios.Mediator.Command; |
| | | 2 | | |
| | | 3 | | namespace ArturRios.Heimdall.Command.Output; |
| | | 4 | | |
| | | 5 | | /// <summary> |
| | | 6 | | /// Result of <see cref="Input.AddScopeOwnerCommand" /> (UC-21). Reports the two <c>PublicId</c>s |
| | | 7 | | /// the new ownership links and whether the request was the idempotent no-op of AF-21d. The |
| | | 8 | | /// <c>SCOPE_OWNER</c> row itself has no identifier to return — it is a join row, not an |
| | | 9 | | /// addressable resource — and internal Ids never leave the data layer. |
| | | 10 | | /// </summary> |
| | | 11 | | public class AddScopeOwnerCommandOutput : CommandOutput |
| | | 12 | | { |
| | | 13 | | /// <summary>Public identifier of the scope that gained the owner.</summary> |
| | 22 | 14 | | public Guid ScopeId { get; set; } |
| | | 15 | | |
| | | 16 | | /// <summary>Public identifier of the person now owning the scope.</summary> |
| | 22 | 17 | | public Guid PersonId { get; set; } |
| | | 18 | | |
| | | 19 | | /// <summary> |
| | | 20 | | /// <c>true</c> when the person already owned the scope and nothing was written (AF-21d); |
| | | 21 | | /// <c>false</c> when this request created the ownership. AF-21d already answers with its own |
| | | 22 | | /// status (200 against the main flow's 201), so this flag confirms which path ran rather than |
| | | 23 | | /// being the only way to tell them apart. |
| | | 24 | | /// </summary> |
| | 23 | 25 | | public bool AlreadyOwner { get; set; } |
| | | 26 | | } |