private async Task SubscriptionExpirationCallback(KeyValuePair <long, LabelingType> key, long value)
        {
            logger.LogInformation($"Labeling: {value} subscription expired.");
            switch (key.Value)
            {
            case LabelingType.Transcription:
                await lifetimeScopeExecutor.ExecuteInNewScope <ITranscriptionService>(service => service.ReleaseTranscriptionAsync(value));

                break;

            case LabelingType.FullConversationMoments:
                await lifetimeScopeExecutor.ExecuteInNewScope <IFCMomentsService>(service => service.ReleaseMomentAsync(value));

                break;

            default:
                break;
            }
        }
 public override Task <ResponseStatus> GetMissingFiles(MissingFilesRequest request, ServerCallContext context)
 {
     return(lifetimeScopeExecutor.ExecuteInNewScope <IExaminationIntegrationActionsService, ResponseStatus>(service => service.GetMissingFiles(request, context)));
 }
 public override Task <ResponseStatus> Subscribe(SubscriptionRequest request, ServerCallContext context)
 {
     return(lifetimeScopeExecutor.ExecuteInNewScope <ISubscriptionActionsService, ResponseStatus>(service => service.Subscribe(request, context)));
 }
 public override Task <ResponseStatus> AudioUpdatesAvailable(NotificationRequest request, ServerCallContext context)
 {
     return(lifetimeScopeExecutor.ExecuteInNewScope <IExaminationIntegrationActionsService, ResponseStatus>(service => service.AudioUpdatesAvailable(request, context)));
 }