public async Task StopAsync(CancellationToken cancellationToken)
    {
        await StopAsyncInternal(cancellationToken);

        if (_next != null)
        {
            await _next.StopAsync(cancellationToken);
        }
    }
 public async Task StopAsync(CancellationToken cancellationToken)
 {
     // base StopAsync logic ...
     await _decorator.StopAsync(cancellationToken);
 }