#### [Abblix\.Oidc\.Server](https://www.abblix.com/docs/api/abblix-oidc-server 'index')
### [Abblix\.Oidc\.Server\.Features\.BackChannelAuthentication\.AuthenticationNotifiers](https://www.abblix.com/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.BackChannelAuthentication.AuthenticationNotifiers 'Abblix\.Oidc\.Server\.Features\.BackChannelAuthentication\.AuthenticationNotifiers')

## PollModeCompletionHandler Class

Handles CIBA poll mode token delivery where the client periodically polls the token endpoint to retrieve tokens\.
In poll mode, the authenticated request is stored and remains available until the client retrieves it or it expires\.
Supports optional long\-polling to reduce polling frequency and improve efficiency\.

```csharp
public class PollModeCompletionHandler : Abblix.Oidc.Server.Features.BackChannelAuthentication.AuthenticationNotifiers.AuthenticationCompletionHandler
```

Inheritance [System\.Object](https://learn.microsoft.com/en-us/dotnet/api/system.object 'System\.Object') → [AuthenticationCompletionHandler](https://www.abblix.com/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.BackChannelAuthentication.AuthenticationNotifiers.AuthenticationCompletionHandler 'Abblix\.Oidc\.Server\.Features\.BackChannelAuthentication\.AuthenticationNotifiers\.AuthenticationCompletionHandler') → PollModeCompletionHandler
### Constructors

## PollModeCompletionHandler\(ILogger\<PollModeCompletionHandler\>, IBackChannelRequestStorage, ISubjectTypeConverter, IBackChannelLongPollingService\) Constructor {#Abblix.Oidc.Server.Features.BackChannelAuthentication.AuthenticationNotifiers.PollModeCompletionHandler.PollModeCompletionHandler(Microsoft.Extensions.Logging.ILogger_Abblix.Oidc.Server.Features.BackChannelAuthentication.AuthenticationNotifiers.PollModeCompletionHandler_,Abblix.Oidc.Server.Features.BackChannelAuthentication.Interfaces.IBackChannelRequestStorage,Abblix.Oidc.Server.Features.PairwiseIdentifiers.ISubjectTypeConverter,Abblix.Oidc.Server.Features.BackChannelAuthentication.Interfaces.IBackChannelLongPollingService)}

Handles CIBA poll mode token delivery where the client periodically polls the token endpoint to retrieve tokens\.
In poll mode, the authenticated request is stored and remains available until the client retrieves it or it expires\.
Supports optional long\-polling to reduce polling frequency and improve efficiency\.

```csharp
public PollModeCompletionHandler(Microsoft.Extensions.Logging.ILogger<Abblix.Oidc.Server.Features.BackChannelAuthentication.AuthenticationNotifiers.PollModeCompletionHandler> logger, Abblix.Oidc.Server.Features.BackChannelAuthentication.Interfaces.IBackChannelRequestStorage storage, Abblix.Oidc.Server.Features.PairwiseIdentifiers.ISubjectTypeConverter subjectTypeConverter, Abblix.Oidc.Server.Features.BackChannelAuthentication.Interfaces.IBackChannelLongPollingService? statusNotifier);
```
#### Parameters

###### `logger` [Microsoft\.Extensions\.Logging\.ILogger&lt;](https://learn.microsoft.com/en-us/dotnet/api/microsoft.extensions.logging.ilogger-1 'Microsoft\.Extensions\.Logging\.ILogger\`1')[PollModeCompletionHandler](https://www.abblix.com/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.BackChannelAuthentication.AuthenticationNotifiers.PollModeCompletionHandler 'Abblix\.Oidc\.Server\.Features\.BackChannelAuthentication\.AuthenticationNotifiers\.PollModeCompletionHandler')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/microsoft.extensions.logging.ilogger-1 'Microsoft\.Extensions\.Logging\.ILogger\`1') {#Abblix.Oidc.Server.Features.BackChannelAuthentication.AuthenticationNotifiers.PollModeCompletionHandler.PollModeCompletionHandler(Microsoft.Extensions.Logging.ILogger_Abblix.Oidc.Server.Features.BackChannelAuthentication.AuthenticationNotifiers.PollModeCompletionHandler_,Abblix.Oidc.Server.Features.BackChannelAuthentication.Interfaces.IBackChannelRequestStorage,Abblix.Oidc.Server.Features.PairwiseIdentifiers.ISubjectTypeConverter,Abblix.Oidc.Server.Features.BackChannelAuthentication.Interfaces.IBackChannelLongPollingService).logger}

Logger for tracking notification events\.

###### `storage` [IBackChannelRequestStorage](https://www.abblix.com/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.BackChannelAuthentication.Interfaces.IBackChannelRequestStorage 'Abblix\.Oidc\.Server\.Features\.BackChannelAuthentication\.Interfaces\.IBackChannelRequestStorage') {#Abblix.Oidc.Server.Features.BackChannelAuthentication.AuthenticationNotifiers.PollModeCompletionHandler.PollModeCompletionHandler(Microsoft.Extensions.Logging.ILogger_Abblix.Oidc.Server.Features.BackChannelAuthentication.AuthenticationNotifiers.PollModeCompletionHandler_,Abblix.Oidc.Server.Features.BackChannelAuthentication.Interfaces.IBackChannelRequestStorage,Abblix.Oidc.Server.Features.PairwiseIdentifiers.ISubjectTypeConverter,Abblix.Oidc.Server.Features.BackChannelAuthentication.Interfaces.IBackChannelLongPollingService).storage}

Storage for authentication requests\.

###### `subjectTypeConverter` [ISubjectTypeConverter](https://www.abblix.com/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.PairwiseIdentifiers.ISubjectTypeConverter 'Abblix\.Oidc\.Server\.Features\.PairwiseIdentifiers\.ISubjectTypeConverter') {#Abblix.Oidc.Server.Features.BackChannelAuthentication.AuthenticationNotifiers.PollModeCompletionHandler.PollModeCompletionHandler(Microsoft.Extensions.Logging.ILogger_Abblix.Oidc.Server.Features.BackChannelAuthentication.AuthenticationNotifiers.PollModeCompletionHandler_,Abblix.Oidc.Server.Features.BackChannelAuthentication.Interfaces.IBackChannelRequestStorage,Abblix.Oidc.Server.Features.PairwiseIdentifiers.ISubjectTypeConverter,Abblix.Oidc.Server.Features.BackChannelAuthentication.Interfaces.IBackChannelLongPollingService).subjectTypeConverter}

Seals a session's subject the way the requesting client sees it,
            so the end user who authenticated can be compared against the one the request named\.

###### `statusNotifier` [IBackChannelLongPollingService](https://www.abblix.com/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.BackChannelAuthentication.Interfaces.IBackChannelLongPollingService 'Abblix\.Oidc\.Server\.Features\.BackChannelAuthentication\.Interfaces\.IBackChannelLongPollingService') {#Abblix.Oidc.Server.Features.BackChannelAuthentication.AuthenticationNotifiers.PollModeCompletionHandler.PollModeCompletionHandler(Microsoft.Extensions.Logging.ILogger_Abblix.Oidc.Server.Features.BackChannelAuthentication.AuthenticationNotifiers.PollModeCompletionHandler_,Abblix.Oidc.Server.Features.BackChannelAuthentication.Interfaces.IBackChannelRequestStorage,Abblix.Oidc.Server.Features.PairwiseIdentifiers.ISubjectTypeConverter,Abblix.Oidc.Server.Features.BackChannelAuthentication.Interfaces.IBackChannelLongPollingService).statusNotifier}

Wakes a client waiting on a long poll\. Nullable because a deployment may
            register none, NOT because long\-polling is off: the default registration is unconditional, so this is
            normally present even where the setting is disabled \- the waiting is what the setting decides, and a
            notification nobody waits for is a no\-op\.
