migration on new package
This commit is contained in:
business_cases/post_creating
client
common
server
core
api
build.gradlepublish.gradle
src
commonMain
kotlin
com
insanusmokrassar
postssystem
core
post
repo
dev
commonTest
kotlin
dev
inmo
postssystem
core
exposed
ktor
client
common
server
publishing
api
exposed
ktor
client
common
server
@ -17,7 +17,7 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
project.version = "$core_version"
|
project.version = "$core_version"
|
||||||
project.group = "com.insanusmokrassar"
|
project.group = "$group_name"
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
mavenLocal()
|
mavenLocal()
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
package com.insanusmokrassar.postssystem.business_cases.post_creating.client
|
package dev.inmo.postssystem.business_cases.post_creating.client
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.business_cases.post_creating.server.*
|
import dev.inmo.postssystem.business_cases.post_creating.server.*
|
||||||
import com.insanusmokrassar.postssystem.core.content.Content
|
import dev.inmo.postssystem.core.content.Content
|
||||||
import com.insanusmokrassar.postssystem.core.post.RegisteredPost
|
import dev.inmo.postssystem.core.post.RegisteredPost
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.TriggerId
|
import dev.inmo.postssystem.core.publishing.TriggerId
|
||||||
import dev.inmo.micro_utils.ktor.client.BodyPair
|
import dev.inmo.micro_utils.ktor.client.BodyPair
|
||||||
import dev.inmo.micro_utils.ktor.client.unipost
|
import dev.inmo.micro_utils.ktor.client.unipost
|
||||||
import dev.inmo.micro_utils.ktor.common.buildStandardUrl
|
import dev.inmo.micro_utils.ktor.common.buildStandardUrl
|
@ -17,7 +17,7 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
project.version = "$core_version"
|
project.version = "$core_version"
|
||||||
project.group = "com.insanusmokrassar"
|
project.group = "$group_name"
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
mavenLocal()
|
mavenLocal()
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
package com.insanusmokrassar.postssystem.business_cases.post_creating.server
|
package dev.inmo.postssystem.business_cases.post_creating.server
|
||||||
|
|
||||||
import com.benasher44.uuid.uuid4
|
import com.benasher44.uuid.uuid4
|
||||||
import com.insanusmokrassar.postssystem.core.content.Content
|
import dev.inmo.postssystem.core.content.Content
|
||||||
import com.insanusmokrassar.postssystem.core.content.api.ContentRepo
|
import dev.inmo.postssystem.core.content.api.ContentRepo
|
||||||
import com.insanusmokrassar.postssystem.core.post.*
|
import dev.inmo.postssystem.core.post.*
|
||||||
import com.insanusmokrassar.postssystem.core.post.repo.PostsRepo
|
import dev.inmo.postssystem.core.post.repo.PostsRepo
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.*
|
import dev.inmo.postssystem.core.publishing.*
|
||||||
|
|
||||||
class BusinessPostCreatingCase(
|
class BusinessPostCreatingCase(
|
||||||
private val postsRepo: PostsRepo,
|
private val postsRepo: PostsRepo,
|
@ -1,8 +1,8 @@
|
|||||||
package com.insanusmokrassar.postssystem.business_cases.post_creating.server
|
package dev.inmo.postssystem.business_cases.post_creating.server
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.content.Content
|
import dev.inmo.postssystem.core.content.Content
|
||||||
import com.insanusmokrassar.postssystem.core.post.RegisteredPost
|
import dev.inmo.postssystem.core.post.RegisteredPost
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.TriggerId
|
import dev.inmo.postssystem.core.publishing.TriggerId
|
||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
|
|
||||||
@Serializable
|
@Serializable
|
@ -1,4 +1,4 @@
|
|||||||
package com.insanusmokrassar.postssystem.business_cases.post_creating.server
|
package dev.inmo.postssystem.business_cases.post_creating.server
|
||||||
|
|
||||||
const val postCreatingRootRoute = "postCreating"
|
const val postCreatingRootRoute = "postCreating"
|
||||||
|
|
@ -16,7 +16,7 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
project.version = "$core_version"
|
project.version = "$core_version"
|
||||||
project.group = "com.insanusmokrassar"
|
project.group = "$group_name"
|
||||||
|
|
||||||
apply plugin: "java-library"
|
apply plugin: "java-library"
|
||||||
apply plugin: "kotlin"
|
apply plugin: "kotlin"
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
package com.insanusmokrassar.postssystem.business_cases.post_creating.server
|
package dev.inmo.postssystem.business_cases.post_creating.server
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.post.RegisteredPost
|
import dev.inmo.postssystem.core.post.RegisteredPost
|
||||||
import dev.inmo.micro_utils.ktor.server.unianswer
|
import dev.inmo.micro_utils.ktor.server.unianswer
|
||||||
import dev.inmo.micro_utils.ktor.server.uniload
|
import dev.inmo.micro_utils.ktor.server.uniload
|
||||||
import io.ktor.application.call
|
import io.ktor.application.call
|
@ -17,7 +17,7 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
project.version = "$core_version"
|
project.version = "$core_version"
|
||||||
project.group = "com.insanusmokrassar"
|
project.group = "$group_name"
|
||||||
|
|
||||||
apply from: "publish.gradle"
|
apply from: "publish.gradle"
|
||||||
|
|
||||||
|
@ -27,11 +27,11 @@ publishing {
|
|||||||
pom {
|
pom {
|
||||||
description = "Core library for PostsSystem"
|
description = "Core library for PostsSystem"
|
||||||
name = "PostsSystem Core"
|
name = "PostsSystem Core"
|
||||||
url = "https://git.insanusmokrassar.com/PostsSystem/PostsSystemCore"
|
url = "https://git.inmo.dev/PostsSystem/PostsSystemCore"
|
||||||
|
|
||||||
scm {
|
scm {
|
||||||
developerConnection = "scm:git:[fetch=]https://git.insanusmokrassar.com/PostsSystem/PostsSystemCore.git[push=]https://git.insanusmokrassar.com/PostsSystem/PostsSystemCore.git"
|
developerConnection = "scm:git:[fetch=]https://git.inmo.dev/PostsSystem/PostsSystemCore.git[push=]https://git.inmo.dev/PostsSystem/PostsSystemCore.git"
|
||||||
url = "https://git.insanusmokrassar.com/PostsSystem/PostsSystemCore.git"
|
url = "https://git.inmo.dev/PostsSystem/PostsSystemCore.git"
|
||||||
}
|
}
|
||||||
|
|
||||||
developers {
|
developers {
|
||||||
@ -55,7 +55,7 @@ publishing {
|
|||||||
|
|
||||||
license {
|
license {
|
||||||
name = "Apache Software License 2.0"
|
name = "Apache Software License 2.0"
|
||||||
url = "https://git.insanusmokrassar.com/PostsSystem/PostsSystemCore/src/master/LICENSE"
|
url = "https://git.inmo.dev/PostsSystem/PostsSystemCore/src/master/LICENSE"
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.post.repo
|
|
||||||
|
|
||||||
interface PostsRepo : ReadPostsRepo, WritePostsRepo
|
|
@ -1,4 +1,4 @@
|
|||||||
package com.insanusmokrassar.postssystem.core
|
package dev.inmo.postssystem.core
|
||||||
|
|
||||||
import com.soywiz.klock.DateTime
|
import com.soywiz.klock.DateTime
|
||||||
|
|
@ -1,8 +1,8 @@
|
|||||||
package com.insanusmokrassar.postssystem.core
|
package dev.inmo.postssystem.core
|
||||||
|
|
||||||
import com.benasher44.uuid.uuid4
|
import com.benasher44.uuid.uuid4
|
||||||
import com.insanusmokrassar.postssystem.core.content.ContentId
|
import dev.inmo.postssystem.core.content.ContentId
|
||||||
import com.insanusmokrassar.postssystem.core.post.PostId
|
import dev.inmo.postssystem.core.post.PostId
|
||||||
|
|
||||||
fun generateId() = uuid4().toString()
|
fun generateId() = uuid4().toString()
|
||||||
fun generatePostId(): PostId = generateId()
|
fun generatePostId(): PostId = generateId()
|
@ -1,4 +1,4 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.content
|
package dev.inmo.postssystem.core.content
|
||||||
|
|
||||||
import dev.inmo.micro_utils.common.ByteArrayAllocator
|
import dev.inmo.micro_utils.common.ByteArrayAllocator
|
||||||
import dev.inmo.micro_utils.common.ByteArrayAllocatorSerializer
|
import dev.inmo.micro_utils.common.ByteArrayAllocatorSerializer
|
||||||
@ -41,8 +41,8 @@ val BinaryContent.isImage: Boolean
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Content which is already registered in database. Using its [id] you can retrieve all known
|
* Content which is already registered in database. Using its [id] you can retrieve all known
|
||||||
* [com.insanusmokrassar.postssystem.core.post.RegisteredPost]s by using
|
* [dev.inmo.postssystem.core.post.RegisteredPost]s by using
|
||||||
* [com.insanusmokrassar.postssystem.core.post.repo.ReadPostsRepo.getPostsByContent]
|
* [dev.inmo.postssystem.core.post.repo.ReadPostsRepo.getPostsByContent]
|
||||||
*/
|
*/
|
||||||
@Serializable
|
@Serializable
|
||||||
data class RegisteredContent(
|
data class RegisteredContent(
|
@ -1,3 +1,3 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.content.api
|
package dev.inmo.postssystem.core.content.api
|
||||||
|
|
||||||
interface ContentRepo : ReadContentRepo, WriteContentRepo
|
interface ContentRepo : ReadContentRepo, WriteContentRepo
|
@ -1,12 +1,12 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.content.api
|
package dev.inmo.postssystem.core.content.api
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.content.ContentId
|
import dev.inmo.postssystem.core.content.ContentId
|
||||||
import com.insanusmokrassar.postssystem.core.content.RegisteredContent
|
import dev.inmo.postssystem.core.content.RegisteredContent
|
||||||
import dev.inmo.micro_utils.pagination.Pagination
|
import dev.inmo.micro_utils.pagination.Pagination
|
||||||
import dev.inmo.micro_utils.pagination.PaginationResult
|
import dev.inmo.micro_utils.pagination.PaginationResult
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Simple read API by different properties of [com.insanusmokrassar.postssystem.core.content.Content].
|
* Simple read API by different properties of [dev.inmo.postssystem.core.content.Content].
|
||||||
*/
|
*/
|
||||||
interface ReadContentRepo {
|
interface ReadContentRepo {
|
||||||
/**
|
/**
|
@ -1,6 +1,6 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.content.api
|
package dev.inmo.postssystem.core.content.api
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.content.*
|
import dev.inmo.postssystem.core.content.*
|
||||||
import kotlinx.coroutines.flow.Flow
|
import kotlinx.coroutines.flow.Flow
|
||||||
|
|
||||||
interface WriteContentRepo {
|
interface WriteContentRepo {
|
@ -1,6 +1,6 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.post
|
package dev.inmo.postssystem.core.post
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.post.repo.PostsRepo
|
import dev.inmo.postssystem.core.post.repo.PostsRepo
|
||||||
|
|
||||||
class BusinessPublishablePostsRepo(
|
class BusinessPublishablePostsRepo(
|
||||||
/**
|
/**
|
@ -1,7 +1,7 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.post
|
package dev.inmo.postssystem.core.post
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.UnixMillis
|
import dev.inmo.postssystem.core.UnixMillis
|
||||||
import com.insanusmokrassar.postssystem.core.content.ContentId
|
import dev.inmo.postssystem.core.content.ContentId
|
||||||
import com.soywiz.klock.DateTime
|
import com.soywiz.klock.DateTime
|
||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
import kotlinx.serialization.Transient
|
import kotlinx.serialization.Transient
|
||||||
@ -18,8 +18,8 @@ sealed class Post {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Root entity of the whole system. Can be retrieved from [com.insanusmokrassar.postssystem.core.post.repo.ReadPostsRepo]
|
* Root entity of the whole system. Can be retrieved from [dev.inmo.postssystem.core.post.repo.ReadPostsRepo]
|
||||||
* by getting and created in [com.insanusmokrassar.postssystem.core.post.repo.WritePostsRepo] by inserting of [Post]
|
* by getting and created in [dev.inmo.postssystem.core.post.repo.WritePostsRepo] by inserting of [Post]
|
||||||
* instance
|
* instance
|
||||||
*/
|
*/
|
||||||
@Serializable
|
@Serializable
|
@ -0,0 +1,3 @@
|
|||||||
|
package dev.inmo.postssystem.core.post.repo
|
||||||
|
|
||||||
|
interface PostsRepo : ReadPostsRepo, WritePostsRepo
|
@ -1,10 +1,10 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.post.repo
|
package dev.inmo.postssystem.core.post.repo
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.MAX_DATE
|
import dev.inmo.postssystem.core.MAX_DATE
|
||||||
import com.insanusmokrassar.postssystem.core.MIN_DATE
|
import dev.inmo.postssystem.core.MIN_DATE
|
||||||
import com.insanusmokrassar.postssystem.core.content.ContentId
|
import dev.inmo.postssystem.core.content.ContentId
|
||||||
import com.insanusmokrassar.postssystem.core.post.PostId
|
import dev.inmo.postssystem.core.post.PostId
|
||||||
import com.insanusmokrassar.postssystem.core.post.RegisteredPost
|
import dev.inmo.postssystem.core.post.RegisteredPost
|
||||||
import com.soywiz.klock.DateTime
|
import com.soywiz.klock.DateTime
|
||||||
import dev.inmo.micro_utils.pagination.*
|
import dev.inmo.micro_utils.pagination.*
|
||||||
|
|
@ -1,6 +1,6 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.post.repo
|
package dev.inmo.postssystem.core.post.repo
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.post.*
|
import dev.inmo.postssystem.core.post.*
|
||||||
import kotlinx.coroutines.flow.Flow
|
import kotlinx.coroutines.flow.Flow
|
||||||
|
|
||||||
interface WritePostsRepo {
|
interface WritePostsRepo {
|
||||||
@ -9,7 +9,7 @@ interface WritePostsRepo {
|
|||||||
val postUpdatedFlow: Flow<RegisteredPost>
|
val postUpdatedFlow: Flow<RegisteredPost>
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* For creating of post you need to create all its [com.insanusmokrassar.postssystem.core.content.RegisteredContent]
|
* For creating of post you need to create all its [dev.inmo.postssystem.core.content.RegisteredContent]
|
||||||
* and (or just) retrieve their [ContentIds] and put it into some [Post] implementation line [SimplePost].
|
* and (or just) retrieve their [ContentIds] and put it into some [Post] implementation line [SimplePost].
|
||||||
*
|
*
|
||||||
* This method SHOULD use [PostId] of [RegisteredPost.id] in case if [RegisteredPost] passed
|
* This method SHOULD use [PostId] of [RegisteredPost.id] in case if [RegisteredPost] passed
|
@ -1,7 +1,7 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.api
|
package dev.inmo.postssystem.core.api
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.content.*
|
import dev.inmo.postssystem.core.content.*
|
||||||
import com.insanusmokrassar.postssystem.core.generateContentId
|
import dev.inmo.postssystem.core.generateContentId
|
||||||
import kotlinx.serialization.json.Json
|
import kotlinx.serialization.json.Json
|
||||||
import kotlin.test.Test
|
import kotlin.test.Test
|
||||||
import kotlin.test.assertEquals
|
import kotlin.test.assertEquals
|
@ -16,7 +16,7 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
project.version = "$core_version"
|
project.version = "$core_version"
|
||||||
project.group = "com.insanusmokrassar"
|
project.group = "$group_name"
|
||||||
|
|
||||||
apply plugin: "java-library"
|
apply plugin: "java-library"
|
||||||
apply plugin: "kotlin"
|
apply plugin: "kotlin"
|
||||||
|
@ -23,11 +23,11 @@ publishing {
|
|||||||
|
|
||||||
description = "Exposed realisation for PostsSystem Core"
|
description = "Exposed realisation for PostsSystem Core"
|
||||||
name = "PostsSystem Core Exposed realization"
|
name = "PostsSystem Core Exposed realization"
|
||||||
url = "https://git.insanusmokrassar.com/PostsSystem/Core/"
|
url = "https://git.inmo.dev/PostsSystem/Core/"
|
||||||
|
|
||||||
scm {
|
scm {
|
||||||
developerConnection = "scm:git:[fetch=]https://git.insanusmokrassar.com/PostsSystem/Core/.git[push=]https://git.insanusmokrassar.com/PostsSystem/Core/.git"
|
developerConnection = "scm:git:[fetch=]https://git.inmo.dev/PostsSystem/Core/.git[push=]https://git.inmo.dev/PostsSystem/Core/.git"
|
||||||
url = "https://git.insanusmokrassar.com/PostsSystem/Core/.git"
|
url = "https://git.inmo.dev/PostsSystem/Core/.git"
|
||||||
}
|
}
|
||||||
|
|
||||||
developers {
|
developers {
|
||||||
@ -44,7 +44,7 @@ publishing {
|
|||||||
|
|
||||||
license {
|
license {
|
||||||
name = "Apache Software License 2.0"
|
name = "Apache Software License 2.0"
|
||||||
url = "https://git.insanusmokrassar.com/PostsSystem/Core/src/master/LICENSE"
|
url = "https://git.inmo.dev/PostsSystem/Core/src/master/LICENSE"
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.exposed
|
package dev.inmo.postssystem.core.exposed
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.content.*
|
import dev.inmo.postssystem.core.content.*
|
||||||
import com.insanusmokrassar.postssystem.core.content.api.ContentRepo
|
import dev.inmo.postssystem.core.content.api.ContentRepo
|
||||||
import com.insanusmokrassar.postssystem.core.exposed.content.*
|
import dev.inmo.postssystem.core.exposed.content.*
|
||||||
import com.insanusmokrassar.postssystem.core.generateContentId
|
import dev.inmo.postssystem.core.generateContentId
|
||||||
import dev.inmo.micro_utils.pagination.*
|
import dev.inmo.micro_utils.pagination.*
|
||||||
import kotlinx.coroutines.channels.BroadcastChannel
|
import kotlinx.coroutines.channels.BroadcastChannel
|
||||||
import kotlinx.coroutines.channels.Channel
|
import kotlinx.coroutines.channels.Channel
|
@ -1,9 +1,9 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.exposed
|
package dev.inmo.postssystem.core.exposed
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.content.ContentId
|
import dev.inmo.postssystem.core.content.ContentId
|
||||||
import com.insanusmokrassar.postssystem.core.generatePostId
|
import dev.inmo.postssystem.core.generatePostId
|
||||||
import com.insanusmokrassar.postssystem.core.post.*
|
import dev.inmo.postssystem.core.post.*
|
||||||
import com.insanusmokrassar.postssystem.core.post.repo.PostsRepo
|
import dev.inmo.postssystem.core.post.repo.PostsRepo
|
||||||
import com.soywiz.klock.*
|
import com.soywiz.klock.*
|
||||||
import dev.inmo.micro_utils.pagination.*
|
import dev.inmo.micro_utils.pagination.*
|
||||||
import kotlinx.coroutines.channels.BroadcastChannel
|
import kotlinx.coroutines.channels.BroadcastChannel
|
@ -1,7 +1,7 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.exposed.content
|
package dev.inmo.postssystem.core.exposed.content
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.content.BinaryContent
|
import dev.inmo.postssystem.core.content.BinaryContent
|
||||||
import com.insanusmokrassar.postssystem.core.content.ContentId
|
import dev.inmo.postssystem.core.content.ContentId
|
||||||
import dev.inmo.micro_utils.mime_types.mimeType
|
import dev.inmo.micro_utils.mime_types.mimeType
|
||||||
import org.jetbrains.exposed.sql.*
|
import org.jetbrains.exposed.sql.*
|
||||||
import org.jetbrains.exposed.sql.statements.api.ExposedBlob
|
import org.jetbrains.exposed.sql.statements.api.ExposedBlob
|
@ -1,7 +1,7 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.exposed.content
|
package dev.inmo.postssystem.core.exposed.content
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.content.Content
|
import dev.inmo.postssystem.core.content.Content
|
||||||
import com.insanusmokrassar.postssystem.core.content.ContentId
|
import dev.inmo.postssystem.core.content.ContentId
|
||||||
|
|
||||||
interface ContentHolderRepo<T : Content> {
|
interface ContentHolderRepo<T : Content> {
|
||||||
suspend fun getContent(id: ContentId) : T?
|
suspend fun getContent(id: ContentId) : T?
|
@ -1,7 +1,7 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.exposed.content
|
package dev.inmo.postssystem.core.exposed.content
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.content.ContentId
|
import dev.inmo.postssystem.core.content.ContentId
|
||||||
import com.insanusmokrassar.postssystem.core.content.SpecialContent
|
import dev.inmo.postssystem.core.content.SpecialContent
|
||||||
import org.jetbrains.exposed.sql.*
|
import org.jetbrains.exposed.sql.*
|
||||||
import org.jetbrains.exposed.sql.transactions.transaction
|
import org.jetbrains.exposed.sql.transactions.transaction
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.exposed.content
|
package dev.inmo.postssystem.core.exposed.content
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.content.ContentId
|
import dev.inmo.postssystem.core.content.ContentId
|
||||||
import com.insanusmokrassar.postssystem.core.content.TextContent
|
import dev.inmo.postssystem.core.content.TextContent
|
||||||
import org.jetbrains.exposed.sql.*
|
import org.jetbrains.exposed.sql.*
|
||||||
import org.jetbrains.exposed.sql.transactions.transaction
|
import org.jetbrains.exposed.sql.transactions.transaction
|
||||||
|
|
@ -1,6 +1,6 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.exposed
|
package dev.inmo.postssystem.core.exposed
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.content.TextContent
|
import dev.inmo.postssystem.core.content.TextContent
|
||||||
import kotlinx.coroutines.runBlocking
|
import kotlinx.coroutines.runBlocking
|
||||||
import org.jetbrains.exposed.sql.Database
|
import org.jetbrains.exposed.sql.Database
|
||||||
import org.jetbrains.exposed.sql.transactions.transactionManager
|
import org.jetbrains.exposed.sql.transactions.transactionManager
|
@ -1,6 +1,6 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.exposed
|
package dev.inmo.postssystem.core.exposed
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.post.SimplePost
|
import dev.inmo.postssystem.core.post.SimplePost
|
||||||
import kotlinx.coroutines.runBlocking
|
import kotlinx.coroutines.runBlocking
|
||||||
import org.jetbrains.exposed.sql.Database
|
import org.jetbrains.exposed.sql.Database
|
||||||
import org.jetbrains.exposed.sql.transactions.transactionManager
|
import org.jetbrains.exposed.sql.transactions.transactionManager
|
@ -17,7 +17,7 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
project.version = "$core_version"
|
project.version = "$core_version"
|
||||||
project.group = "com.insanusmokrassar"
|
project.group = "$group_name"
|
||||||
|
|
||||||
apply from: "publish.gradle"
|
apply from: "publish.gradle"
|
||||||
|
|
||||||
|
@ -27,11 +27,11 @@ publishing {
|
|||||||
pom {
|
pom {
|
||||||
description = "Exposed realisation for PostsSystem Core"
|
description = "Exposed realisation for PostsSystem Core"
|
||||||
name = "PostsSystem Core Exposed realization"
|
name = "PostsSystem Core Exposed realization"
|
||||||
url = "https://git.insanusmokrassar.com/PostsSystem/Core/"
|
url = "https://git.inmo.dev/PostsSystem/Core/"
|
||||||
|
|
||||||
scm {
|
scm {
|
||||||
developerConnection = "scm:git:[fetch=]https://git.insanusmokrassar.com/PostsSystem/Core/.git[push=]https://git.insanusmokrassar.com/PostsSystem/Core/.git"
|
developerConnection = "scm:git:[fetch=]https://git.inmo.dev/PostsSystem/Core/.git[push=]https://git.inmo.dev/PostsSystem/Core/.git"
|
||||||
url = "https://git.insanusmokrassar.com/PostsSystem/Core/.git"
|
url = "https://git.inmo.dev/PostsSystem/Core/.git"
|
||||||
}
|
}
|
||||||
|
|
||||||
developers {
|
developers {
|
||||||
@ -48,7 +48,7 @@ publishing {
|
|||||||
|
|
||||||
license {
|
license {
|
||||||
name = "Apache Software License 2.0"
|
name = "Apache Software License 2.0"
|
||||||
url = "https://git.insanusmokrassar.com/PostsSystem/Core/src/master/LICENSE"
|
url = "https://git.inmo.dev/PostsSystem/Core/src/master/LICENSE"
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.ktor.client.content
|
package dev.inmo.postssystem.core.ktor.client.content
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.content.api.*
|
import dev.inmo.postssystem.core.content.api.*
|
||||||
import com.insanusmokrassar.postssystem.core.ktor.contentRootRoute
|
import dev.inmo.postssystem.core.ktor.contentRootRoute
|
||||||
import io.ktor.client.HttpClient
|
import io.ktor.client.HttpClient
|
||||||
import io.ktor.client.features.websocket.WebSockets
|
import io.ktor.client.features.websocket.WebSockets
|
||||||
|
|
@ -1,9 +1,9 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.ktor.client.content
|
package dev.inmo.postssystem.core.ktor.client.content
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.content.ContentId
|
import dev.inmo.postssystem.core.content.ContentId
|
||||||
import com.insanusmokrassar.postssystem.core.content.RegisteredContent
|
import dev.inmo.postssystem.core.content.RegisteredContent
|
||||||
import com.insanusmokrassar.postssystem.core.content.api.ReadContentRepo
|
import dev.inmo.postssystem.core.content.api.ReadContentRepo
|
||||||
import com.insanusmokrassar.postssystem.core.ktor.*
|
import dev.inmo.postssystem.core.ktor.*
|
||||||
import dev.inmo.micro_utils.ktor.client.uniget
|
import dev.inmo.micro_utils.ktor.client.uniget
|
||||||
import dev.inmo.micro_utils.ktor.common.includeQueryParams
|
import dev.inmo.micro_utils.ktor.common.includeQueryParams
|
||||||
import dev.inmo.micro_utils.ktor.common.standardKtorSerialFormat
|
import dev.inmo.micro_utils.ktor.common.standardKtorSerialFormat
|
@ -1,8 +1,8 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.ktor.client.content
|
package dev.inmo.postssystem.core.ktor.client.content
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.content.*
|
import dev.inmo.postssystem.core.content.*
|
||||||
import com.insanusmokrassar.postssystem.core.content.api.WriteContentRepo
|
import dev.inmo.postssystem.core.content.api.WriteContentRepo
|
||||||
import com.insanusmokrassar.postssystem.core.ktor.*
|
import dev.inmo.postssystem.core.ktor.*
|
||||||
import dev.inmo.micro_utils.ktor.client.*
|
import dev.inmo.micro_utils.ktor.client.*
|
||||||
import io.ktor.client.HttpClient
|
import io.ktor.client.HttpClient
|
||||||
import kotlinx.coroutines.flow.Flow
|
import kotlinx.coroutines.flow.Flow
|
@ -1,7 +1,7 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.ktor.client.post
|
package dev.inmo.postssystem.core.ktor.client.post
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.ktor.postsRootRoute
|
import dev.inmo.postssystem.core.ktor.postsRootRoute
|
||||||
import com.insanusmokrassar.postssystem.core.post.repo.*
|
import dev.inmo.postssystem.core.post.repo.*
|
||||||
import io.ktor.client.HttpClient
|
import io.ktor.client.HttpClient
|
||||||
import io.ktor.client.features.websocket.WebSockets
|
import io.ktor.client.features.websocket.WebSockets
|
||||||
|
|
@ -1,10 +1,10 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.ktor.client.post
|
package dev.inmo.postssystem.core.ktor.client.post
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.content.ContentId
|
import dev.inmo.postssystem.core.content.ContentId
|
||||||
import com.insanusmokrassar.postssystem.core.ktor.*
|
import dev.inmo.postssystem.core.ktor.*
|
||||||
import com.insanusmokrassar.postssystem.core.post.PostId
|
import dev.inmo.postssystem.core.post.PostId
|
||||||
import com.insanusmokrassar.postssystem.core.post.RegisteredPost
|
import dev.inmo.postssystem.core.post.RegisteredPost
|
||||||
import com.insanusmokrassar.postssystem.core.post.repo.ReadPostsRepo
|
import dev.inmo.postssystem.core.post.repo.ReadPostsRepo
|
||||||
import com.soywiz.klock.DateTime
|
import com.soywiz.klock.DateTime
|
||||||
import dev.inmo.micro_utils.ktor.client.uniget
|
import dev.inmo.micro_utils.ktor.client.uniget
|
||||||
import dev.inmo.micro_utils.ktor.common.asFromToUrlPart
|
import dev.inmo.micro_utils.ktor.common.asFromToUrlPart
|
@ -1,8 +1,8 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.ktor.client.post
|
package dev.inmo.postssystem.core.ktor.client.post
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.ktor.*
|
import dev.inmo.postssystem.core.ktor.*
|
||||||
import com.insanusmokrassar.postssystem.core.post.*
|
import dev.inmo.postssystem.core.post.*
|
||||||
import com.insanusmokrassar.postssystem.core.post.repo.WritePostsRepo
|
import dev.inmo.postssystem.core.post.repo.WritePostsRepo
|
||||||
import dev.inmo.micro_utils.ktor.client.*
|
import dev.inmo.micro_utils.ktor.client.*
|
||||||
import io.ktor.client.HttpClient
|
import io.ktor.client.HttpClient
|
||||||
import io.ktor.client.features.websocket.WebSockets
|
import io.ktor.client.features.websocket.WebSockets
|
@ -17,7 +17,7 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
project.version = "$core_version"
|
project.version = "$core_version"
|
||||||
project.group = "com.insanusmokrassar"
|
project.group = "$group_name"
|
||||||
|
|
||||||
apply from: "publish.gradle"
|
apply from: "publish.gradle"
|
||||||
|
|
||||||
|
@ -27,11 +27,11 @@ publishing {
|
|||||||
pom {
|
pom {
|
||||||
description = "Exposed realisation for PostsSystem Core"
|
description = "Exposed realisation for PostsSystem Core"
|
||||||
name = "PostsSystem Core Exposed realization"
|
name = "PostsSystem Core Exposed realization"
|
||||||
url = "https://git.insanusmokrassar.com/PostsSystem/Core/"
|
url = "https://git.inmo.dev/PostsSystem/Core/"
|
||||||
|
|
||||||
scm {
|
scm {
|
||||||
developerConnection = "scm:git:[fetch=]https://git.insanusmokrassar.com/PostsSystem/Core/.git[push=]https://git.insanusmokrassar.com/PostsSystem/Core/.git"
|
developerConnection = "scm:git:[fetch=]https://git.inmo.dev/PostsSystem/Core/.git[push=]https://git.inmo.dev/PostsSystem/Core/.git"
|
||||||
url = "https://git.insanusmokrassar.com/PostsSystem/Core/.git"
|
url = "https://git.inmo.dev/PostsSystem/Core/.git"
|
||||||
}
|
}
|
||||||
|
|
||||||
developers {
|
developers {
|
||||||
@ -48,7 +48,7 @@ publishing {
|
|||||||
|
|
||||||
license {
|
license {
|
||||||
name = "Apache Software License 2.0"
|
name = "Apache Software License 2.0"
|
||||||
url = "https://git.insanusmokrassar.com/PostsSystem/Core/src/master/LICENSE"
|
url = "https://git.inmo.dev/PostsSystem/Core/src/master/LICENSE"
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,11 +0,0 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.ktor
|
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.post.Post
|
|
||||||
import com.insanusmokrassar.postssystem.core.post.PostId
|
|
||||||
import kotlinx.serialization.Serializable
|
|
||||||
|
|
||||||
@Serializable
|
|
||||||
data class UpdatePostObject(
|
|
||||||
val postId: PostId,
|
|
||||||
val post: Post
|
|
||||||
)
|
|
@ -1,4 +1,4 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.ktor
|
package dev.inmo.postssystem.core.ktor
|
||||||
|
|
||||||
const val contentRootRoute = "content"
|
const val contentRootRoute = "content"
|
||||||
|
|
@ -1,4 +1,4 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.ktor
|
package dev.inmo.postssystem.core.ktor
|
||||||
|
|
||||||
const val postsRootRoute = "post"
|
const val postsRootRoute = "post"
|
||||||
|
|
@ -1,9 +1,9 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.ktor
|
package dev.inmo.postssystem.core.ktor
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.content.ContentId
|
import dev.inmo.postssystem.core.content.ContentId
|
||||||
import com.insanusmokrassar.postssystem.core.content.RegisteredContent
|
import dev.inmo.postssystem.core.content.RegisteredContent
|
||||||
import com.insanusmokrassar.postssystem.core.post.PostId
|
import dev.inmo.postssystem.core.post.PostId
|
||||||
import com.insanusmokrassar.postssystem.core.post.RegisteredPost
|
import dev.inmo.postssystem.core.post.RegisteredPost
|
||||||
import dev.inmo.micro_utils.pagination.PaginationResult
|
import dev.inmo.micro_utils.pagination.PaginationResult
|
||||||
import kotlinx.serialization.builtins.*
|
import kotlinx.serialization.builtins.*
|
||||||
|
|
11
core/ktor/common/src/commonMain/kotlin/dev/inmo/postssystem/core/ktor/UpdatePostObject.kt
Normal file
11
core/ktor/common/src/commonMain/kotlin/dev/inmo/postssystem/core/ktor/UpdatePostObject.kt
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
package dev.inmo.postssystem.core.ktor
|
||||||
|
|
||||||
|
import dev.inmo.postssystem.core.post.Post
|
||||||
|
import dev.inmo.postssystem.core.post.PostId
|
||||||
|
import kotlinx.serialization.Serializable
|
||||||
|
|
||||||
|
@Serializable
|
||||||
|
data class UpdatePostObject(
|
||||||
|
val postId: PostId,
|
||||||
|
val post: Post
|
||||||
|
)
|
@ -16,7 +16,7 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
project.version = "$core_version"
|
project.version = "$core_version"
|
||||||
project.group = "com.insanusmokrassar"
|
project.group = "$group_name"
|
||||||
|
|
||||||
apply plugin: "java-library"
|
apply plugin: "java-library"
|
||||||
apply plugin: "kotlin"
|
apply plugin: "kotlin"
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.ktor.server.content
|
package dev.inmo.postssystem.core.ktor.server.content
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.content.api.ContentRepo
|
import dev.inmo.postssystem.core.content.api.ContentRepo
|
||||||
import com.insanusmokrassar.postssystem.core.ktor.contentRootRoute
|
import dev.inmo.postssystem.core.ktor.contentRootRoute
|
||||||
import dev.inmo.micro_utils.ktor.server.configurators.ApplicationRoutingConfigurator
|
import dev.inmo.micro_utils.ktor.server.configurators.ApplicationRoutingConfigurator
|
||||||
import io.ktor.routing.Route
|
import io.ktor.routing.Route
|
||||||
import io.ktor.routing.route
|
import io.ktor.routing.route
|
@ -1,9 +1,9 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.ktor.server.content
|
package dev.inmo.postssystem.core.ktor.server.content
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.content.ContentId
|
import dev.inmo.postssystem.core.content.ContentId
|
||||||
import com.insanusmokrassar.postssystem.core.content.RegisteredContent
|
import dev.inmo.postssystem.core.content.RegisteredContent
|
||||||
import com.insanusmokrassar.postssystem.core.content.api.ReadContentRepo
|
import dev.inmo.postssystem.core.content.api.ReadContentRepo
|
||||||
import com.insanusmokrassar.postssystem.core.ktor.*
|
import dev.inmo.postssystem.core.ktor.*
|
||||||
import dev.inmo.micro_utils.ktor.server.configurators.ApplicationRoutingConfigurator
|
import dev.inmo.micro_utils.ktor.server.configurators.ApplicationRoutingConfigurator
|
||||||
import dev.inmo.micro_utils.ktor.server.getParameterOrSendError
|
import dev.inmo.micro_utils.ktor.server.getParameterOrSendError
|
||||||
import dev.inmo.micro_utils.ktor.server.unianswer
|
import dev.inmo.micro_utils.ktor.server.unianswer
|
@ -1,8 +1,8 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.ktor.server.content
|
package dev.inmo.postssystem.core.ktor.server.content
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.content.*
|
import dev.inmo.postssystem.core.content.*
|
||||||
import com.insanusmokrassar.postssystem.core.content.api.WriteContentRepo
|
import dev.inmo.postssystem.core.content.api.WriteContentRepo
|
||||||
import com.insanusmokrassar.postssystem.core.ktor.*
|
import dev.inmo.postssystem.core.ktor.*
|
||||||
import dev.inmo.micro_utils.ktor.server.*
|
import dev.inmo.micro_utils.ktor.server.*
|
||||||
import dev.inmo.micro_utils.ktor.server.configurators.ApplicationRoutingConfigurator
|
import dev.inmo.micro_utils.ktor.server.configurators.ApplicationRoutingConfigurator
|
||||||
import io.ktor.application.call
|
import io.ktor.application.call
|
@ -1,7 +1,7 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.ktor.server.post
|
package dev.inmo.postssystem.core.ktor.server.post
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.ktor.postsRootRoute
|
import dev.inmo.postssystem.core.ktor.postsRootRoute
|
||||||
import com.insanusmokrassar.postssystem.core.post.repo.PostsRepo
|
import dev.inmo.postssystem.core.post.repo.PostsRepo
|
||||||
import dev.inmo.micro_utils.ktor.server.configurators.ApplicationRoutingConfigurator
|
import dev.inmo.micro_utils.ktor.server.configurators.ApplicationRoutingConfigurator
|
||||||
import io.ktor.routing.Route
|
import io.ktor.routing.Route
|
||||||
import io.ktor.routing.route
|
import io.ktor.routing.route
|
@ -1,12 +1,12 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.ktor.server.post
|
package dev.inmo.postssystem.core.ktor.server.post
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.MAX_DATE
|
import dev.inmo.postssystem.core.MAX_DATE
|
||||||
import com.insanusmokrassar.postssystem.core.MIN_DATE
|
import dev.inmo.postssystem.core.MIN_DATE
|
||||||
import com.insanusmokrassar.postssystem.core.content.ContentId
|
import dev.inmo.postssystem.core.content.ContentId
|
||||||
import com.insanusmokrassar.postssystem.core.ktor.*
|
import dev.inmo.postssystem.core.ktor.*
|
||||||
import com.insanusmokrassar.postssystem.core.post.PostId
|
import dev.inmo.postssystem.core.post.PostId
|
||||||
import com.insanusmokrassar.postssystem.core.post.RegisteredPost
|
import dev.inmo.postssystem.core.post.RegisteredPost
|
||||||
import com.insanusmokrassar.postssystem.core.post.repo.ReadPostsRepo
|
import dev.inmo.postssystem.core.post.repo.ReadPostsRepo
|
||||||
import dev.inmo.micro_utils.ktor.server.*
|
import dev.inmo.micro_utils.ktor.server.*
|
||||||
import dev.inmo.micro_utils.ktor.server.configurators.ApplicationRoutingConfigurator
|
import dev.inmo.micro_utils.ktor.server.configurators.ApplicationRoutingConfigurator
|
||||||
import dev.inmo.micro_utils.pagination.extractPagination
|
import dev.inmo.micro_utils.pagination.extractPagination
|
@ -1,8 +1,8 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.ktor.server.post
|
package dev.inmo.postssystem.core.ktor.server.post
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.ktor.*
|
import dev.inmo.postssystem.core.ktor.*
|
||||||
import com.insanusmokrassar.postssystem.core.post.*
|
import dev.inmo.postssystem.core.post.*
|
||||||
import com.insanusmokrassar.postssystem.core.post.repo.WritePostsRepo
|
import dev.inmo.postssystem.core.post.repo.WritePostsRepo
|
||||||
import dev.inmo.micro_utils.ktor.server.*
|
import dev.inmo.micro_utils.ktor.server.*
|
||||||
import dev.inmo.micro_utils.ktor.server.configurators.ApplicationRoutingConfigurator
|
import dev.inmo.micro_utils.ktor.server.configurators.ApplicationRoutingConfigurator
|
||||||
import io.ktor.application.call
|
import io.ktor.application.call
|
@ -17,3 +17,4 @@ microutils_version=0.4.5
|
|||||||
javax_activation_version=1.1.1
|
javax_activation_version=1.1.1
|
||||||
|
|
||||||
core_version=0.6.0
|
core_version=0.6.0
|
||||||
|
group_name=dev.inmo
|
||||||
|
@ -17,7 +17,7 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
project.version = "$core_version"
|
project.version = "$core_version"
|
||||||
project.group = "com.insanusmokrassar"
|
project.group = "$group_name"
|
||||||
|
|
||||||
apply from: "./publish.gradle"
|
apply from: "./publish.gradle"
|
||||||
|
|
||||||
|
@ -27,11 +27,11 @@ publishing {
|
|||||||
pom {
|
pom {
|
||||||
description = "Publishing subsystem with necessary functionality related to publish mechanism"
|
description = "Publishing subsystem with necessary functionality related to publish mechanism"
|
||||||
name = "PostsSystem Core Publishing subsystem"
|
name = "PostsSystem Core Publishing subsystem"
|
||||||
url = "https://git.insanusmokrassar.com/PostsSystem/Core/"
|
url = "https://git.inmo.dev/PostsSystem/Core/"
|
||||||
|
|
||||||
scm {
|
scm {
|
||||||
developerConnection = "scm:git:[fetch=]https://git.insanusmokrassar.com/PostsSystem/Core/.git[push=]https://git.insanusmokrassar.com/PostsSystem/Core/.git"
|
developerConnection = "scm:git:[fetch=]https://git.inmo.dev/PostsSystem/Core/.git[push=]https://git.inmo.dev/PostsSystem/Core/.git"
|
||||||
url = "https://git.insanusmokrassar.com/PostsSystem/Core/.git"
|
url = "https://git.inmo.dev/PostsSystem/Core/.git"
|
||||||
}
|
}
|
||||||
|
|
||||||
developers {
|
developers {
|
||||||
@ -48,7 +48,7 @@ publishing {
|
|||||||
|
|
||||||
license {
|
license {
|
||||||
name = "Apache Software License 2.0"
|
name = "Apache Software License 2.0"
|
||||||
url = "https://git.insanusmokrassar.com/PostsSystem/Core/src/master/LICENSE"
|
url = "https://git.inmo.dev/PostsSystem/Core/src/master/LICENSE"
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,5 +0,0 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.publishing
|
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.post.PostId
|
|
||||||
|
|
||||||
typealias PostKeyGenerator = suspend (PostId, TriggerId) -> TriggerControlKey
|
|
5
publishing/api/src/commonMain/kotlin/dev/inmo/postssystem/core/publishing/PostKeyGenerator.kt
Normal file
5
publishing/api/src/commonMain/kotlin/dev/inmo/postssystem/core/publishing/PostKeyGenerator.kt
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
package dev.inmo.postssystem.core.publishing
|
||||||
|
|
||||||
|
import dev.inmo.postssystem.core.post.PostId
|
||||||
|
|
||||||
|
typealias PostKeyGenerator = suspend (PostId, TriggerId) -> TriggerControlKey
|
@ -1,6 +1,6 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.publishing
|
package dev.inmo.postssystem.core.publishing
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.post.PostId
|
import dev.inmo.postssystem.core.post.PostId
|
||||||
|
|
||||||
typealias PublishingKeyReceiverGetter = suspend (TriggerId) -> PublishingKeyReceiver?
|
typealias PublishingKeyReceiverGetter = suspend (TriggerId) -> PublishingKeyReceiver?
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.publishing
|
package dev.inmo.postssystem.core.publishing
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.post.PostId
|
import dev.inmo.postssystem.core.post.PostId
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.repos.PublishingKeysRepo
|
import dev.inmo.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
|
||||||
import kotlinx.coroutines.flow.Flow
|
import kotlinx.coroutines.flow.Flow
|
@ -1,8 +1,8 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.publishing
|
package dev.inmo.postssystem.core.publishing
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.post.repo.PostsRepo
|
import dev.inmo.postssystem.core.post.repo.PostsRepo
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.repos.PublishedPostsWriteRepo
|
import dev.inmo.postssystem.core.publishing.repos.PublishedPostsWriteRepo
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.repos.PublishingKeysRepo
|
import dev.inmo.postssystem.core.publishing.repos.PublishingKeysRepo
|
||||||
|
|
||||||
class PublishingService(
|
class PublishingService(
|
||||||
private val postsRepo: PostsRepo,
|
private val postsRepo: PostsRepo,
|
@ -1,10 +1,10 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.publishing
|
package dev.inmo.postssystem.core.publishing
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.post.PostId
|
import dev.inmo.postssystem.core.post.PostId
|
||||||
import com.insanusmokrassar.postssystem.core.post.RegisteredPost
|
import dev.inmo.postssystem.core.post.RegisteredPost
|
||||||
import com.insanusmokrassar.postssystem.core.post.repo.PostsRepo
|
import dev.inmo.postssystem.core.post.repo.PostsRepo
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.repos.PublishedPostsWriteRepo
|
import dev.inmo.postssystem.core.publishing.repos.PublishedPostsWriteRepo
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.repos.PublishingKeysRepo
|
import dev.inmo.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
|
||||||
import kotlinx.coroutines.flow.Flow
|
import kotlinx.coroutines.flow.Flow
|
@ -1,4 +1,4 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.publishing
|
package dev.inmo.postssystem.core.publishing
|
||||||
|
|
||||||
typealias TriggerId = String
|
typealias TriggerId = String
|
||||||
|
|
@ -1,9 +1,9 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.publishing.repos
|
package dev.inmo.postssystem.core.publishing.repos
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.post.PostId
|
import dev.inmo.postssystem.core.post.PostId
|
||||||
import com.insanusmokrassar.postssystem.core.post.RegisteredPost
|
import dev.inmo.postssystem.core.post.RegisteredPost
|
||||||
import com.insanusmokrassar.postssystem.core.post.repo.PostsRepo
|
import dev.inmo.postssystem.core.post.repo.PostsRepo
|
||||||
import com.insanusmokrassar.postssystem.core.post.repo.ReadPostsRepo
|
import dev.inmo.postssystem.core.post.repo.ReadPostsRepo
|
||||||
import kotlinx.coroutines.flow.Flow
|
import kotlinx.coroutines.flow.Flow
|
||||||
|
|
||||||
interface PublishedPostsReadRepo : ReadPostsRepo
|
interface PublishedPostsReadRepo : ReadPostsRepo
|
@ -1,7 +1,7 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.publishing.repos
|
package dev.inmo.postssystem.core.publishing.repos
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.post.PostId
|
import dev.inmo.postssystem.core.post.PostId
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.TriggerControlKey
|
import dev.inmo.postssystem.core.publishing.TriggerControlKey
|
||||||
|
|
||||||
interface ReadPublishingKeysRepo {
|
interface ReadPublishingKeysRepo {
|
||||||
suspend fun getPostIdByTriggerControlKey(
|
suspend fun getPostIdByTriggerControlKey(
|
@ -16,7 +16,7 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
project.version = "$core_version"
|
project.version = "$core_version"
|
||||||
project.group = "com.insanusmokrassar"
|
project.group = "$group_name"
|
||||||
|
|
||||||
apply plugin: "java-library"
|
apply plugin: "java-library"
|
||||||
apply plugin: "kotlin"
|
apply plugin: "kotlin"
|
||||||
|
@ -27,11 +27,11 @@ publishing {
|
|||||||
pom {
|
pom {
|
||||||
description = "Exposed realisation for PostsSystem Core Publishing subsystem"
|
description = "Exposed realisation for PostsSystem Core Publishing subsystem"
|
||||||
name = "PostsSystem Core Publishing Exposed realization"
|
name = "PostsSystem Core Publishing Exposed realization"
|
||||||
url = "https://git.insanusmokrassar.com/PostsSystem/Core/"
|
url = "https://git.inmo.dev/PostsSystem/Core/"
|
||||||
|
|
||||||
scm {
|
scm {
|
||||||
developerConnection = "scm:git:[fetch=]https://git.insanusmokrassar.com/PostsSystem/Core/.git[push=]https://git.insanusmokrassar.com/PostsSystem/Core/.git"
|
developerConnection = "scm:git:[fetch=]https://git.inmo.dev/PostsSystem/Core/.git[push=]https://git.inmo.dev/PostsSystem/Core/.git"
|
||||||
url = "https://git.insanusmokrassar.com/PostsSystem/Core/.git"
|
url = "https://git.inmo.dev/PostsSystem/Core/.git"
|
||||||
}
|
}
|
||||||
|
|
||||||
developers {
|
developers {
|
||||||
@ -48,7 +48,7 @@ publishing {
|
|||||||
|
|
||||||
license {
|
license {
|
||||||
name = "Apache Software License 2.0"
|
name = "Apache Software License 2.0"
|
||||||
url = "https://git.insanusmokrassar.com/PostsSystem/Core/src/master/LICENSE"
|
url = "https://git.inmo.dev/PostsSystem/Core/src/master/LICENSE"
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
package com.insanusmokrassar.postssystem.core.publishing.exposed
|
package dev.inmo.postssystem.core.publishing.exposed
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.post.PostId
|
import dev.inmo.postssystem.core.post.PostId
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.TriggerControlKey
|
import dev.inmo.postssystem.core.publishing.TriggerControlKey
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.repos.PublishingKeysRepo
|
import dev.inmo.postssystem.core.publishing.repos.PublishingKeysRepo
|
||||||
import org.jetbrains.exposed.sql.*
|
import org.jetbrains.exposed.sql.*
|
||||||
import org.jetbrains.exposed.sql.transactions.transaction
|
import org.jetbrains.exposed.sql.transactions.transaction
|
||||||
|
|
@ -17,9 +17,7 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
project.version = "$core_version"
|
project.version = "$core_version"
|
||||||
project.group = "com.insanusmokrassar"
|
project.group = "$group_name"
|
||||||
|
|
||||||
apply from: "publish.gradle"
|
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
mavenLocal()
|
mavenLocal()
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
package com.insanusmokrassar.postssystem.publishing.ktor.client
|
package dev.inmo.postssystem.publishing.ktor.client
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.repos.*
|
import dev.inmo.postssystem.core.publishing.repos.*
|
||||||
import com.insanusmokrassar.postssystem.publishing.ktor.publishingKeysRootRoute
|
import dev.inmo.postssystem.publishing.ktor.publishingKeysRootRoute
|
||||||
import io.ktor.client.HttpClient
|
import io.ktor.client.HttpClient
|
||||||
import io.ktor.client.features.websocket.WebSockets
|
import io.ktor.client.features.websocket.WebSockets
|
||||||
|
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
package com.insanusmokrassar.postssystem.publishing.ktor.client
|
package dev.inmo.postssystem.publishing.ktor.client
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.post.PostId
|
import dev.inmo.postssystem.core.post.PostId
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.TriggerControlKey
|
import dev.inmo.postssystem.core.publishing.TriggerControlKey
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.repos.ReadPublishingKeysRepo
|
import dev.inmo.postssystem.core.publishing.repos.ReadPublishingKeysRepo
|
||||||
import com.insanusmokrassar.postssystem.publishing.ktor.getPostIdByTriggerControlKeyRoute
|
import dev.inmo.postssystem.publishing.ktor.getPostIdByTriggerControlKeyRoute
|
||||||
import com.insanusmokrassar.postssystem.publishing.ktor.getTriggerControlKeyByPostIdRoute
|
import dev.inmo.postssystem.publishing.ktor.getTriggerControlKeyByPostIdRoute
|
||||||
import dev.inmo.micro_utils.ktor.client.uniget
|
import dev.inmo.micro_utils.ktor.client.uniget
|
||||||
import dev.inmo.micro_utils.ktor.common.buildStandardUrl
|
import dev.inmo.micro_utils.ktor.common.buildStandardUrl
|
||||||
import io.ktor.client.HttpClient
|
import io.ktor.client.HttpClient
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
package com.insanusmokrassar.postssystem.publishing.ktor.client
|
package dev.inmo.postssystem.publishing.ktor.client
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.post.PostId
|
import dev.inmo.postssystem.core.post.PostId
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.TriggerControlKey
|
import dev.inmo.postssystem.core.publishing.TriggerControlKey
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.repos.WritePublishingKeysRepo
|
import dev.inmo.postssystem.core.publishing.repos.WritePublishingKeysRepo
|
||||||
import com.insanusmokrassar.postssystem.publishing.ktor.*
|
import dev.inmo.postssystem.publishing.ktor.*
|
||||||
import dev.inmo.micro_utils.ktor.client.BodyPair
|
import dev.inmo.micro_utils.ktor.client.BodyPair
|
||||||
import dev.inmo.micro_utils.ktor.client.unipost
|
import dev.inmo.micro_utils.ktor.client.unipost
|
||||||
import dev.inmo.micro_utils.ktor.common.buildStandardUrl
|
import dev.inmo.micro_utils.ktor.common.buildStandardUrl
|
||||||
|
@ -17,7 +17,7 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
project.version = "$core_version"
|
project.version = "$core_version"
|
||||||
project.group = "com.insanusmokrassar"
|
project.group = "$group_name"
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
mavenLocal()
|
mavenLocal()
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
package com.insanusmokrassar.postssystem.publishing.ktor
|
package dev.inmo.postssystem.publishing.ktor
|
||||||
|
|
||||||
const val publishingKeysRootRoute = "publishingKeys"
|
const val publishingKeysRootRoute = "publishingKeys"
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
package com.insanusmokrassar.postssystem.publishing.ktor
|
package dev.inmo.postssystem.publishing.ktor
|
||||||
|
|
||||||
//const val getPostIdByTriggerControlKeyRoute = "getPostIdByTriggerControlKey"
|
//const val getPostIdByTriggerControlKeyRoute = "getPostIdByTriggerControlKey"
|
||||||
const val registerTriggerForPostRoute = "registerTriggerForPost"
|
const val registerTriggerForPostRoute = "registerTriggerForPost"
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
package com.insanusmokrassar.postssystem.publishing.ktor
|
package dev.inmo.postssystem.publishing.ktor
|
||||||
|
|
||||||
const val triggerPostingRoute = "triggerPosting"
|
const val triggerPostingRoute = "triggerPosting"
|
@ -1,7 +1,7 @@
|
|||||||
package com.insanusmokrassar.postssystem.publishing.ktor
|
package dev.inmo.postssystem.publishing.ktor
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.post.PostId
|
import dev.inmo.postssystem.core.post.PostId
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.TriggerControlKey
|
import dev.inmo.postssystem.core.publishing.TriggerControlKey
|
||||||
import kotlinx.serialization.builtins.SetSerializer
|
import kotlinx.serialization.builtins.SetSerializer
|
||||||
import kotlinx.serialization.builtins.serializer
|
import kotlinx.serialization.builtins.serializer
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
package com.insanusmokrassar.postssystem.publishing.ktor
|
package dev.inmo.postssystem.publishing.ktor
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.post.PostId
|
import dev.inmo.postssystem.core.post.PostId
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.TriggerControlKey
|
import dev.inmo.postssystem.core.publishing.TriggerControlKey
|
||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
|
|
||||||
@Serializable
|
@Serializable
|
||||||
|
@ -16,7 +16,7 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
project.version = "$core_version"
|
project.version = "$core_version"
|
||||||
project.group = "com.insanusmokrassar"
|
project.group = "$group_name"
|
||||||
|
|
||||||
apply plugin: "java-library"
|
apply plugin: "java-library"
|
||||||
apply plugin: "kotlin"
|
apply plugin: "kotlin"
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
package com.insanusmokrassar.postssystem.publishing.ktor.server
|
package dev.inmo.postssystem.publishing.ktor.server
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.repos.PublishingKeysRepo
|
import dev.inmo.postssystem.core.publishing.repos.PublishingKeysRepo
|
||||||
import com.insanusmokrassar.postssystem.publishing.ktor.publishingKeysRootRoute
|
import dev.inmo.postssystem.publishing.ktor.publishingKeysRootRoute
|
||||||
import dev.inmo.micro_utils.ktor.server.configurators.ApplicationRoutingConfigurator
|
import dev.inmo.micro_utils.ktor.server.configurators.ApplicationRoutingConfigurator
|
||||||
import io.ktor.routing.Route
|
import io.ktor.routing.Route
|
||||||
import io.ktor.routing.route
|
import io.ktor.routing.route
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
package com.insanusmokrassar.postssystem.publishing.ktor.server
|
package dev.inmo.postssystem.publishing.ktor.server
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.post.PostId
|
import dev.inmo.postssystem.core.post.PostId
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.TriggerControlKey
|
import dev.inmo.postssystem.core.publishing.TriggerControlKey
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.repos.ReadPublishingKeysRepo
|
import dev.inmo.postssystem.core.publishing.repos.ReadPublishingKeysRepo
|
||||||
import com.insanusmokrassar.postssystem.publishing.ktor.getPostIdByTriggerControlKeyRoute
|
import dev.inmo.postssystem.publishing.ktor.getPostIdByTriggerControlKeyRoute
|
||||||
import com.insanusmokrassar.postssystem.publishing.ktor.getTriggerControlKeyByPostIdRoute
|
import dev.inmo.postssystem.publishing.ktor.getTriggerControlKeyByPostIdRoute
|
||||||
import dev.inmo.micro_utils.ktor.server.configurators.ApplicationRoutingConfigurator
|
import dev.inmo.micro_utils.ktor.server.configurators.ApplicationRoutingConfigurator
|
||||||
import dev.inmo.micro_utils.ktor.server.getParameterOrSendError
|
import dev.inmo.micro_utils.ktor.server.getParameterOrSendError
|
||||||
import dev.inmo.micro_utils.ktor.server.unianswer
|
import dev.inmo.micro_utils.ktor.server.unianswer
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
package com.insanusmokrassar.postssystem.publishing.ktor.server
|
package dev.inmo.postssystem.publishing.ktor.server
|
||||||
|
|
||||||
import com.insanusmokrassar.postssystem.core.post.PostId
|
import dev.inmo.postssystem.core.post.PostId
|
||||||
import com.insanusmokrassar.postssystem.core.publishing.repos.WritePublishingKeysRepo
|
import dev.inmo.postssystem.core.publishing.repos.WritePublishingKeysRepo
|
||||||
import com.insanusmokrassar.postssystem.publishing.ktor.*
|
import dev.inmo.postssystem.publishing.ktor.*
|
||||||
import dev.inmo.micro_utils.ktor.server.unianswer
|
import dev.inmo.micro_utils.ktor.server.unianswer
|
||||||
import dev.inmo.micro_utils.ktor.server.uniload
|
import dev.inmo.micro_utils.ktor.server.uniload
|
||||||
import io.ktor.application.call
|
import io.ktor.application.call
|
||||||
|
Reference in New Issue
Block a user