public async Task <IPost> GetPost(string postId) { await EnsureBlogSettings().ConfigureAwait(false); return(await postQueries.GetPost( settings.Id, postId, CancellationToken) .ConfigureAwait(false)); }
public async Task Handle(string projectId, string postId, CancellationToken cancellationToken = default(CancellationToken)) { var post = await _postQueries.GetPost(projectId, postId, cancellationToken); var project = await _projectSettingsResolver.GetCurrentProjectSettings(cancellationToken); var url = await _blogUrlResolver.ResolvePostUrl(post, project); var message = new PushMessageModel() { MessageType = "contentdelete", Body = "Content deleted", Data = url }; var queueItem = new PushQueueItem( message, BuiltInRecipientProviderNames.AllButCurrentUserPushNotificationRecipientProvider); queueItem.TenantId = post.BlogId; queueItem.RecipientProviderCustom1 = _userIdResolver.GetCurrentUserId(); _pushNotificationsQueue.Enqueue(queueItem); }