add published posts repo triggering from publishing trigger
This commit is contained in:
parent
8104678a99
commit
277d978f9e
@ -3,6 +3,7 @@ package com.insanusmokrassar.postssystem.core.publishing
|
|||||||
import com.insanusmokrassar.postssystem.core.post.PostId
|
import com.insanusmokrassar.postssystem.core.post.PostId
|
||||||
import com.insanusmokrassar.postssystem.core.post.RegisteredPost
|
import com.insanusmokrassar.postssystem.core.post.RegisteredPost
|
||||||
import com.insanusmokrassar.postssystem.core.post.repo.PostsRepo
|
import com.insanusmokrassar.postssystem.core.post.repo.PostsRepo
|
||||||
|
import com.insanusmokrassar.postssystem.core.post.repo.WritePostsRepo
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.repos.PublishingKeysRepo
|
import com.insanusmokrassar.postssystem.core.publishing.repos.PublishingKeysRepo
|
||||||
import kotlinx.coroutines.channels.BroadcastChannel
|
import kotlinx.coroutines.channels.BroadcastChannel
|
||||||
import kotlinx.coroutines.channels.Channel
|
import kotlinx.coroutines.channels.Channel
|
||||||
@ -19,6 +20,7 @@ interface PublishingTrigger {
|
|||||||
|
|
||||||
class BusinessPublishingTrigger(
|
class BusinessPublishingTrigger(
|
||||||
private val postsRepo: PostsRepo,
|
private val postsRepo: PostsRepo,
|
||||||
|
private val publishedPostsRepo: WritePostsRepo,
|
||||||
private val publishingKeysRepo: PublishingKeysRepo
|
private val publishingKeysRepo: PublishingKeysRepo
|
||||||
) : PublishingTrigger {
|
) : PublishingTrigger {
|
||||||
private val postingTriggeredChannel: BroadcastChannel<RegisteredPost> = BroadcastChannel(Channel.BUFFERED)
|
private val postingTriggeredChannel: BroadcastChannel<RegisteredPost> = BroadcastChannel(Channel.BUFFERED)
|
||||||
@ -30,6 +32,7 @@ class BusinessPublishingTrigger(
|
|||||||
|
|
||||||
return postsRepo.getPostById(postId) ?.let { post ->
|
return postsRepo.getPostById(postId) ?.let { post ->
|
||||||
if (postsRepo.deletePost(postId)) {
|
if (postsRepo.deletePost(postId)) {
|
||||||
|
publishedPostsRepo.createPost(post)
|
||||||
postingTriggeredChannel.send(post)
|
postingTriggeredChannel.send(post)
|
||||||
postId
|
postId
|
||||||
} else {
|
} else {
|
||||||
|
Loading…
Reference in New Issue
Block a user