| | | 1 | | namespace AsiBackbone.Core.Classification; |
| | | 2 | | |
| | | 3 | | /// <summary> |
| | | 4 | | /// Default provider-neutral resolver for DLP or classification failure behavior. |
| | | 5 | | /// </summary> |
| | | 6 | | /// <remarks> |
| | | 7 | | /// Initializes a new instance of the <see cref="DefaultAsiBackboneDlpFailurePolicyResolver" /> class. |
| | | 8 | | /// </remarks> |
| | | 9 | | /// <param name="options">Optional policy options. When omitted, conservative defaults are used.</param> |
| | 18 | 10 | | public sealed class DefaultAsiBackboneDlpFailurePolicyResolver(DlpFailurePolicyOptions? options = null) : IAsiBackboneDl |
| | | 11 | | { |
| | 18 | 12 | | private readonly DlpFailurePolicyOptions options = options ?? new DlpFailurePolicyOptions(); |
| | | 13 | | |
| | | 14 | | /// <inheritdoc /> |
| | | 15 | | public ValueTask<DlpFailurePolicyResolution> ResolveAsync( |
| | | 16 | | DlpFailurePolicyContext context, |
| | | 17 | | CancellationToken cancellationToken = default) |
| | | 18 | | { |
| | 20 | 19 | | ArgumentNullException.ThrowIfNull(context); |
| | 19 | 20 | | cancellationToken.ThrowIfCancellationRequested(); |
| | | 21 | | |
| | 18 | 22 | | DlpFailureBehavior behavior = options.GetBehavior(context); |
| | | 23 | | |
| | 14 | 24 | | return ValueTask.FromResult( |
| | 14 | 25 | | DlpFailurePolicyResolution.Create(context, behavior)); |
| | | 26 | | } |
| | | 27 | | } |