Removed verbose errors for schema definition
This commit is contained in:
parent
5197be80f0
commit
f228bd9769
@ -0,0 +1,23 @@
|
|||||||
|
package ru.landgrafhomyak.db.skeleton1.api.errors
|
||||||
|
|
||||||
|
import kotlinx.coroutines.CopyableThrowable
|
||||||
|
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
||||||
|
import ru.landgrafhomyak.db.skeleton1.api.ReflectionApi
|
||||||
|
|
||||||
|
@OptIn(ExperimentalCoroutinesApi::class)
|
||||||
|
@ReflectionApi
|
||||||
|
public open class InternalDriverException : RuntimeException, CopyableThrowable<InternalDriverException> {
|
||||||
|
public constructor() : super()
|
||||||
|
public constructor(message: String) : super(message)
|
||||||
|
public constructor(message: String, cause: Throwable) : super(message, cause)
|
||||||
|
public constructor(cause: Throwable) : super(cause)
|
||||||
|
public constructor(message: String?, cause: Throwable?, @Suppress("unused", "LocalVariableName") _marker: Unit) : super(message, cause)
|
||||||
|
|
||||||
|
|
||||||
|
override fun createCopy(): InternalDriverException? {
|
||||||
|
if (this::class !== InternalDriverException::class)
|
||||||
|
return null
|
||||||
|
|
||||||
|
return InternalDriverException(this.message, this.cause, Unit)
|
||||||
|
}
|
||||||
|
}
|
@ -1,12 +1,22 @@
|
|||||||
package ru.landgrafhomyak.db.skeleton1.api.errors
|
package ru.landgrafhomyak.db.skeleton1.api.errors
|
||||||
|
|
||||||
|
import kotlinx.coroutines.CopyableThrowable
|
||||||
|
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.ReflectionApi
|
import ru.landgrafhomyak.db.skeleton1.api.ReflectionApi
|
||||||
|
|
||||||
|
@OptIn(ExperimentalCoroutinesApi::class)
|
||||||
@ReflectionApi
|
@ReflectionApi
|
||||||
public abstract class SchemaDefinitionException : RuntimeException {
|
public open class SchemaDefinitionException : RuntimeException, CopyableThrowable<SchemaDefinitionException> {
|
||||||
public constructor() : super()
|
public constructor() : super()
|
||||||
public constructor(message: String) : super(message)
|
public constructor(message: String) : super(message)
|
||||||
public constructor(message: String, cause: Throwable) : super(message, cause)
|
public constructor(message: String, cause: Throwable) : super(message, cause)
|
||||||
public constructor(cause: Throwable) : super(cause)
|
public constructor(cause: Throwable) : super(cause)
|
||||||
public constructor(message: String?, cause: Throwable?, @Suppress("unused", "LocalVariableName") _marker: Unit) : super(message, cause)
|
public constructor(message: String?, cause: Throwable?, @Suppress("unused", "LocalVariableName") _marker: Unit) : super(message, cause)
|
||||||
|
|
||||||
|
override fun createCopy(): SchemaDefinitionException? {
|
||||||
|
if (this::class !== SchemaDefinitionException::class)
|
||||||
|
return null
|
||||||
|
|
||||||
|
return SchemaDefinitionException(this.message, this.cause, Unit)
|
||||||
|
}
|
||||||
}
|
}
|
@ -1,61 +0,0 @@
|
|||||||
package ru.landgrafhomyak.db.skeleton1.api.errors.definition
|
|
||||||
|
|
||||||
import kotlin.jvm.JvmStatic
|
|
||||||
import kotlinx.coroutines.CopyableThrowable
|
|
||||||
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.ReflectionApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.DriverMetainfo
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.errors.SchemaDefinitionException
|
|
||||||
|
|
||||||
@ReflectionApi
|
|
||||||
@OptIn(ExperimentalCoroutinesApi::class)
|
|
||||||
public class EntityNotImplementedException : SchemaDefinitionException, CopyableThrowable<EntityNotImplementedException> {
|
|
||||||
public val provider: Any
|
|
||||||
public val driver: DriverMetainfo<*, *, *, *, *, *, *, *, *, *>
|
|
||||||
|
|
||||||
public constructor(provider: Any, driver: DriverMetainfo<*, *, *, *, *, *, *, *, *, *>) : super(formatMessage(provider, driver)) {
|
|
||||||
this.provider = provider
|
|
||||||
this.driver = driver
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(provider: Any, driver: DriverMetainfo<*, *, *, *, *, *, *, *, *, *>, customMessage: String) : super(customMessage) {
|
|
||||||
this.provider = provider
|
|
||||||
this.driver = driver
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(provider: Any, driver: DriverMetainfo<*, *, *, *, *, *, *, *, *, *>, customMessage: String, cause: Throwable) : super(customMessage, cause) {
|
|
||||||
this.provider = provider
|
|
||||||
this.driver = driver
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(provider: Any, driver: DriverMetainfo<*, *, *, *, *, *, *, *, *, *>, cause: Throwable) : super(formatMessage(provider, driver), cause) {
|
|
||||||
this.provider = provider
|
|
||||||
this.driver = driver
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(
|
|
||||||
provider: Any, driver: DriverMetainfo<*, *, *, *, *, *, *, *, *, *>,
|
|
||||||
message: String?, cause: Throwable?,
|
|
||||||
@Suppress("unused", "LocalVariableName") _marker: Unit
|
|
||||||
) : super(message, cause, _marker) {
|
|
||||||
this.provider = provider
|
|
||||||
this.driver = driver
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun createCopy(): EntityNotImplementedException? {
|
|
||||||
return EntityNotImplementedException(
|
|
||||||
provider = this.provider,
|
|
||||||
driver = this.driver,
|
|
||||||
message = this.message,
|
|
||||||
cause = this.cause,
|
|
||||||
_marker = Unit
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
public companion object {
|
|
||||||
@JvmStatic
|
|
||||||
public fun formatMessage(
|
|
||||||
provider: Any, driver: DriverMetainfo<*, *, *, *, *, *, *, *, *, *>
|
|
||||||
): String = "$provider doesn't provides implementation for driver $driver"
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,60 +0,0 @@
|
|||||||
package ru.landgrafhomyak.db.skeleton1.api.errors.definition
|
|
||||||
|
|
||||||
import kotlin.jvm.JvmStatic
|
|
||||||
import kotlinx.coroutines.CopyableThrowable
|
|
||||||
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.ReflectionApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.errors.SchemaDefinitionException
|
|
||||||
|
|
||||||
@ReflectionApi
|
|
||||||
@OptIn(ExperimentalCoroutinesApi::class)
|
|
||||||
public class ExportedEntitiesNotImportedException : SchemaDefinitionException, CopyableThrowable<ExportedEntitiesNotImportedException> {
|
|
||||||
public val sourceScope: Any
|
|
||||||
public val entities: Collection<Any>
|
|
||||||
|
|
||||||
public constructor(sourceScope: Any, entities: Collection<Any>) : super(formatMessage(sourceScope, entities)) {
|
|
||||||
this.sourceScope = sourceScope
|
|
||||||
this.entities = entities
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(sourceScope: Any, entities: Collection<Any>, customMessage: String) : super(customMessage) {
|
|
||||||
this.sourceScope = sourceScope
|
|
||||||
this.entities = entities
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(sourceScope: Any, entities: Collection<Any>, customMessage: String, cause: Throwable) : super(customMessage, cause) {
|
|
||||||
this.sourceScope = sourceScope
|
|
||||||
this.entities = entities
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(sourceScope: Any, entities: Collection<Any>, cause: Throwable) : super(formatMessage(sourceScope, entities), cause) {
|
|
||||||
this.sourceScope = sourceScope
|
|
||||||
this.entities = entities
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(
|
|
||||||
sourceScope: Any, entities: Collection<Any>,
|
|
||||||
message: String?, cause: Throwable?,
|
|
||||||
@Suppress("unused", "LocalVariableName") _marker: Unit
|
|
||||||
) : super(message, cause, _marker) {
|
|
||||||
this.sourceScope = sourceScope
|
|
||||||
this.entities = entities
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun createCopy(): ExportedEntitiesNotImportedException? {
|
|
||||||
return ExportedEntitiesNotImportedException(
|
|
||||||
sourceScope = this.sourceScope,
|
|
||||||
entities = this.entities,
|
|
||||||
message = this.message,
|
|
||||||
cause = this.cause,
|
|
||||||
_marker = Unit
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
public companion object {
|
|
||||||
@JvmStatic
|
|
||||||
public fun formatMessage(
|
|
||||||
sourceScope: Any, entities: Collection<Any>,
|
|
||||||
): String = "Entities exported from $sourceScope wasn't imported to any other scope: ${entities.joinToString()}"
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,47 +0,0 @@
|
|||||||
package ru.landgrafhomyak.db.skeleton1.api.errors.definition
|
|
||||||
|
|
||||||
import kotlinx.coroutines.CopyableThrowable
|
|
||||||
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.ReflectionApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.errors.SchemaDefinitionException
|
|
||||||
|
|
||||||
@ReflectionApi
|
|
||||||
@OptIn(ExperimentalCoroutinesApi::class)
|
|
||||||
public class IncorrectNameException : SchemaDefinitionException, CopyableThrowable<IncorrectNameException> {
|
|
||||||
public val name: String
|
|
||||||
|
|
||||||
public constructor(name: String) : super(name) {
|
|
||||||
this.name = name
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(name: String, customMessage: String) : super(customMessage) {
|
|
||||||
this.name = name
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(name: String, customMessage: String, cause: Throwable) : super(customMessage, cause) {
|
|
||||||
this.name = name
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(name: String, cause: Throwable) : super(name, cause) {
|
|
||||||
this.name = name
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(
|
|
||||||
name: String,
|
|
||||||
message: String?,
|
|
||||||
cause: Throwable?,
|
|
||||||
@Suppress("unused", "LocalVariableName") _marker: Unit
|
|
||||||
) : super(message, cause, _marker) {
|
|
||||||
this.name = name
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
override fun createCopy(): IncorrectNameException? {
|
|
||||||
return IncorrectNameException(
|
|
||||||
name = this.name,
|
|
||||||
message = this.message,
|
|
||||||
cause = this.cause,
|
|
||||||
_marker = Unit
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,68 +0,0 @@
|
|||||||
package ru.landgrafhomyak.db.skeleton1.api.errors.definition
|
|
||||||
|
|
||||||
import kotlin.jvm.JvmStatic
|
|
||||||
import kotlinx.coroutines.CopyableThrowable
|
|
||||||
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.ReflectionApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.errors.SchemaDefinitionException
|
|
||||||
|
|
||||||
@ReflectionApi
|
|
||||||
@OptIn(ExperimentalCoroutinesApi::class)
|
|
||||||
public class NameConflictException : SchemaDefinitionException, CopyableThrowable<NameConflictException> {
|
|
||||||
public val scope: Any
|
|
||||||
public val nameOwner: Any
|
|
||||||
public val name: String
|
|
||||||
|
|
||||||
public constructor(scope: Any, nameOwner: Any, name: String) : super(formatMessage(scope, nameOwner, name)) {
|
|
||||||
this.scope = scope
|
|
||||||
this.nameOwner = nameOwner
|
|
||||||
this.name = name
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(scope: Any, nameOwner: Any, name: String, customMessage: String) : super(customMessage) {
|
|
||||||
this.scope = scope
|
|
||||||
this.nameOwner = nameOwner
|
|
||||||
this.name = name
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(scope: Any, nameOwner: Any, name: String, customMessage: String, cause: Throwable) : super(customMessage, cause) {
|
|
||||||
this.scope = scope
|
|
||||||
this.nameOwner = nameOwner
|
|
||||||
this.name = name
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public constructor(scope: Any, nameOwner: Any, name: String, cause: Throwable) : super(formatMessage(scope, nameOwner, name), cause) {
|
|
||||||
this.scope = scope
|
|
||||||
this.nameOwner = nameOwner
|
|
||||||
this.name = name
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(
|
|
||||||
scope: Any, nameOwner: Any, name: String,
|
|
||||||
message: String?, cause: Throwable?,
|
|
||||||
@Suppress("unused", "LocalVariableName") _marker: Unit
|
|
||||||
) : super(message, cause, _marker) {
|
|
||||||
this.scope = scope
|
|
||||||
this.nameOwner = nameOwner
|
|
||||||
this.name = name
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun createCopy(): NameConflictException? {
|
|
||||||
return NameConflictException(
|
|
||||||
scope = this.scope,
|
|
||||||
nameOwner = this.nameOwner,
|
|
||||||
name = this.name,
|
|
||||||
message = this.message,
|
|
||||||
cause = this.cause,
|
|
||||||
_marker = Unit
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
public companion object {
|
|
||||||
@JvmStatic
|
|
||||||
public fun formatMessage(
|
|
||||||
scope: Any, nameOwner: Any, name: String,
|
|
||||||
): String = "Name '${name}' already taken by $nameOwner inside $scope"
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,54 +0,0 @@
|
|||||||
package ru.landgrafhomyak.db.skeleton1.api.errors.definition
|
|
||||||
|
|
||||||
import kotlin.jvm.JvmStatic
|
|
||||||
import kotlinx.coroutines.CopyableThrowable
|
|
||||||
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.ReflectionApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.errors.SchemaDefinitionException
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.module.Namespace
|
|
||||||
|
|
||||||
@ReflectionApi
|
|
||||||
@OptIn(ExperimentalCoroutinesApi::class)
|
|
||||||
public class NamespaceAlreadyBusyException : SchemaDefinitionException, CopyableThrowable<NamespaceAlreadyBusyException> {
|
|
||||||
public val namespace: Namespace<*>
|
|
||||||
|
|
||||||
public constructor(namespace: Namespace<*>) : super(formatMessage(namespace)) {
|
|
||||||
this.namespace = namespace
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(namespace: Namespace<*>, customMessage: String) : super(customMessage) {
|
|
||||||
this.namespace = namespace
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(namespace: Namespace<*>, customMessage: String, cause: Throwable) : super(customMessage, cause) {
|
|
||||||
this.namespace = namespace
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(namespace: Namespace<*>, cause: Throwable) : super(formatMessage(namespace), cause) {
|
|
||||||
this.namespace = namespace
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(
|
|
||||||
namespace: Namespace<*>,
|
|
||||||
message: String?, cause: Throwable?,
|
|
||||||
@Suppress("unused", "LocalVariableName") _marker: Unit
|
|
||||||
) : super(message, cause, _marker) {
|
|
||||||
this.namespace = namespace
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun createCopy(): NamespaceAlreadyBusyException? {
|
|
||||||
return NamespaceAlreadyBusyException(
|
|
||||||
namespace = this.namespace,
|
|
||||||
message = this.message,
|
|
||||||
cause = this.cause,
|
|
||||||
_marker = Unit
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
public companion object {
|
|
||||||
@JvmStatic
|
|
||||||
public fun formatMessage(
|
|
||||||
namespace: Namespace<*>
|
|
||||||
): String = "Namespace ${namespace.name} is busy: attempt to allocate something in namespace captured by module or attempt to substitute module to non-empty namespace"
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,54 +0,0 @@
|
|||||||
package ru.landgrafhomyak.db.skeleton1.api.errors.definition
|
|
||||||
|
|
||||||
import kotlin.jvm.JvmStatic
|
|
||||||
import kotlinx.coroutines.CopyableThrowable
|
|
||||||
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.ReflectionApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.errors.SchemaDefinitionException
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.table.Table
|
|
||||||
|
|
||||||
@ReflectionApi
|
|
||||||
@OptIn(ExperimentalCoroutinesApi::class)
|
|
||||||
public class TableWithoutColumnsException : SchemaDefinitionException, CopyableThrowable<TableWithoutColumnsException> {
|
|
||||||
public val table: Table<*, *>
|
|
||||||
|
|
||||||
public constructor(table: Table<*, *>) : super(formatMessage(table)) {
|
|
||||||
this.table = table
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(table: Table<*, *>, customMessage: String) : super(customMessage) {
|
|
||||||
this.table = table
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(table: Table<*, *>, customMessage: String, cause: Throwable) : super(customMessage, cause) {
|
|
||||||
this.table = table
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(table: Table<*, *>, cause: Throwable) : super(formatMessage(table), cause) {
|
|
||||||
this.table = table
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(
|
|
||||||
table: Table<*, *>,
|
|
||||||
message: String?, cause: Throwable?,
|
|
||||||
@Suppress("unused", "LocalVariableName") _marker: Unit
|
|
||||||
) : super(message, cause, _marker) {
|
|
||||||
this.table = table
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun createCopy(): TableWithoutColumnsException? {
|
|
||||||
return TableWithoutColumnsException(
|
|
||||||
table = this.table,
|
|
||||||
message = this.message,
|
|
||||||
cause = this.cause,
|
|
||||||
_marker = Unit
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
public companion object {
|
|
||||||
@JvmStatic
|
|
||||||
public fun formatMessage(
|
|
||||||
table: Table<*, *>,
|
|
||||||
): String = "Table $table doesn't have columns"
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,34 +0,0 @@
|
|||||||
package ru.landgrafhomyak.db.skeleton1.api.errors.definition
|
|
||||||
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.ReflectionApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.errors.SchemaDefinitionException
|
|
||||||
|
|
||||||
@ReflectionApi
|
|
||||||
public abstract class UnboundParameterException : SchemaDefinitionException {
|
|
||||||
public val constructor: Any
|
|
||||||
|
|
||||||
public constructor(constructor: Any) : super() {
|
|
||||||
this.constructor = constructor
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(constructor: Any, customMessage: String) : super(customMessage) {
|
|
||||||
this.constructor = constructor
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(constructor: Any, customMessage: String, cause: Throwable) : super(customMessage, cause) {
|
|
||||||
this.constructor = constructor
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(constructor: Any, cause: Throwable) : super(cause) {
|
|
||||||
this.constructor = constructor
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(
|
|
||||||
constructor: Any,
|
|
||||||
message: String?, cause: Throwable?,
|
|
||||||
@Suppress("unused", "LocalVariableName") _marker: Unit
|
|
||||||
) : super(message, cause, _marker) {
|
|
||||||
this.constructor = constructor
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,61 +0,0 @@
|
|||||||
package ru.landgrafhomyak.db.skeleton1.api.errors.definition
|
|
||||||
|
|
||||||
import kotlin.jvm.JvmStatic
|
|
||||||
import kotlinx.coroutines.CopyableThrowable
|
|
||||||
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.ReflectionApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.errors.SchemaDefinitionException
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.module.Module
|
|
||||||
|
|
||||||
@ReflectionApi
|
|
||||||
@OptIn(ExperimentalCoroutinesApi::class)
|
|
||||||
public class UnknownVersionException : SchemaDefinitionException, CopyableThrowable<UnknownVersionException> {
|
|
||||||
public val template: Module.Template<*>
|
|
||||||
public val version: String
|
|
||||||
|
|
||||||
public constructor(template: Module.Template<*>, version: String) : super(formatMessage(template, version)) {
|
|
||||||
this.template = template
|
|
||||||
this.version = version
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(template: Module.Template<*>, version: String, customMessage: String) : super(customMessage) {
|
|
||||||
this.template = template
|
|
||||||
this.version = version
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(template: Module.Template<*>, version: String, customMessage: String, cause: Throwable) : super(customMessage, cause) {
|
|
||||||
this.template = template
|
|
||||||
this.version = version
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(template: Module.Template<*>, version: String, cause: Throwable) : super(formatMessage(template, version), cause) {
|
|
||||||
this.template = template
|
|
||||||
this.version = version
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(
|
|
||||||
template: Module.Template<*>, version: String,
|
|
||||||
message: String?, cause: Throwable?,
|
|
||||||
@Suppress("unused", "LocalVariableName") _marker: Unit
|
|
||||||
) : super(message, cause, _marker) {
|
|
||||||
this.template = template
|
|
||||||
this.version = version
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun createCopy(): UnknownVersionException? {
|
|
||||||
return UnknownVersionException(
|
|
||||||
template = this.template,
|
|
||||||
version = this.version,
|
|
||||||
message = this.message,
|
|
||||||
cause = this.cause,
|
|
||||||
_marker = Unit
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
public companion object {
|
|
||||||
@JvmStatic
|
|
||||||
public fun formatMessage(
|
|
||||||
template: Module.Template<*>, version: String
|
|
||||||
): String = "Template $template doesn't knows version '${version}'"
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,62 +0,0 @@
|
|||||||
package ru.landgrafhomyak.db.skeleton1.api.errors.definition
|
|
||||||
|
|
||||||
import kotlin.jvm.JvmStatic
|
|
||||||
import kotlinx.coroutines.CopyableThrowable
|
|
||||||
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.ReflectionApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.errors.SchemaDefinitionException
|
|
||||||
|
|
||||||
@ReflectionApi
|
|
||||||
@OptIn(ExperimentalCoroutinesApi::class)
|
|
||||||
public class UnreferencedEntityAtUpgradeException : SchemaDefinitionException, CopyableThrowable<UnreferencedEntityAtUpgradeException> {
|
|
||||||
public val oldScope: Any
|
|
||||||
public val unprocessedEntities: Collection<Any>
|
|
||||||
|
|
||||||
public constructor(oldScope: Any, unprocessedEntities: Collection<Any>) : super(formatMessage(oldScope, unprocessedEntities)) {
|
|
||||||
this.oldScope = oldScope
|
|
||||||
this.unprocessedEntities = unprocessedEntities
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(oldScope: Any, unprocessedEntities: Collection<Any>, customMessage: String) : super(customMessage) {
|
|
||||||
this.oldScope = oldScope
|
|
||||||
this.unprocessedEntities = unprocessedEntities
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(oldScope: Any, unprocessedEntities: Collection<Any>, customMessage: String, cause: Throwable) : super(customMessage, cause) {
|
|
||||||
this.oldScope = oldScope
|
|
||||||
this.unprocessedEntities = unprocessedEntities
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public constructor(oldScope: Any, unprocessedEntities: Collection<Any>, cause: Throwable) : super(formatMessage(oldScope, unprocessedEntities), cause) {
|
|
||||||
this.oldScope = oldScope
|
|
||||||
this.unprocessedEntities = unprocessedEntities
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(
|
|
||||||
oldScope: Any, unprocessedEntities: Collection<Any>,
|
|
||||||
message: String?, cause: Throwable?,
|
|
||||||
@Suppress("unused", "LocalVariableName") _marker: Unit
|
|
||||||
) : super(message, cause, _marker) {
|
|
||||||
this.oldScope = oldScope
|
|
||||||
this.unprocessedEntities = unprocessedEntities
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun createCopy(): UnreferencedEntityAtUpgradeException? {
|
|
||||||
return UnreferencedEntityAtUpgradeException(
|
|
||||||
oldScope = this.oldScope,
|
|
||||||
unprocessedEntities = this.unprocessedEntities,
|
|
||||||
message = this.message,
|
|
||||||
cause = this.cause,
|
|
||||||
_marker = Unit
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
public companion object {
|
|
||||||
@JvmStatic
|
|
||||||
public fun formatMessage(
|
|
||||||
scope: Any,
|
|
||||||
entities: Collection<Any>,
|
|
||||||
): String = "While upgrading $scope following entities wasn't referenced: ${entities.joinToString()}"
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,75 +0,0 @@
|
|||||||
package ru.landgrafhomyak.db.skeleton1.api.errors.definition
|
|
||||||
|
|
||||||
import kotlin.jvm.JvmStatic
|
|
||||||
import kotlinx.coroutines.CopyableThrowable
|
|
||||||
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.ReflectionApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.errors.SchemaDefinitionException
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.module.Module
|
|
||||||
|
|
||||||
@ReflectionApi
|
|
||||||
@OptIn(ExperimentalCoroutinesApi::class)
|
|
||||||
public class VersionDuplicationException : SchemaDefinitionException, CopyableThrowable<VersionDuplicationException> {
|
|
||||||
public val template: Module.Template<*>
|
|
||||||
public val versionOwner: Module<*>
|
|
||||||
public val newModule: Module<*>
|
|
||||||
public val version: String
|
|
||||||
|
|
||||||
public constructor(template: Module.Template<*>, versionOwner: Module<*>, newModule: Module<*>, version: String) : super(formatMessage(template, versionOwner, newModule, version)) {
|
|
||||||
this.template = template
|
|
||||||
this.versionOwner = versionOwner
|
|
||||||
this.newModule = newModule
|
|
||||||
this.version = version
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(template: Module.Template<*>, versionOwner: Module<*>, newModule: Module<*>, version: String, customMessage: String) : super(customMessage) {
|
|
||||||
this.template = template
|
|
||||||
this.versionOwner = versionOwner
|
|
||||||
this.newModule = newModule
|
|
||||||
this.version = version
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(template: Module.Template<*>, versionOwner: Module<*>, newModule: Module<*>, version: String, customMessage: String, cause: Throwable) : super(customMessage, cause) {
|
|
||||||
this.template = template
|
|
||||||
this.versionOwner = versionOwner
|
|
||||||
this.newModule = newModule
|
|
||||||
this.version = version
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(template: Module.Template<*>, versionOwner: Module<*>, newModule: Module<*>, version: String, cause: Throwable) : super(formatMessage(template, versionOwner, newModule, version), cause) {
|
|
||||||
this.template = template
|
|
||||||
this.versionOwner = versionOwner
|
|
||||||
this.newModule = newModule
|
|
||||||
this.version = version
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(
|
|
||||||
template: Module.Template<*>, versionOwner: Module<*>, newModule: Module<*>, version: String,
|
|
||||||
message: String?, cause: Throwable?,
|
|
||||||
@Suppress("unused", "LocalVariableName") _marker: Unit
|
|
||||||
) : super(message, cause, _marker) {
|
|
||||||
this.template = template
|
|
||||||
this.versionOwner = versionOwner
|
|
||||||
this.newModule = newModule
|
|
||||||
this.version = version
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun createCopy(): VersionDuplicationException? {
|
|
||||||
return VersionDuplicationException(
|
|
||||||
template = this.template,
|
|
||||||
versionOwner = this.versionOwner,
|
|
||||||
newModule = this.newModule,
|
|
||||||
version = this.version,
|
|
||||||
message = this.message,
|
|
||||||
cause = this.cause,
|
|
||||||
_marker = Unit
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
public companion object {
|
|
||||||
@JvmStatic
|
|
||||||
public fun formatMessage(
|
|
||||||
template: Module.Template<*>, versionOwner: Module<*>, newModule: Module<*>, version: String
|
|
||||||
): String = "Version '${version}' already associated with $versionOwner and $newModule provided by $template has the same version (circular upgrades are prohibited)"
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,67 +0,0 @@
|
|||||||
package ru.landgrafhomyak.db.skeleton1.api.errors.definition
|
|
||||||
|
|
||||||
import kotlin.jvm.JvmStatic
|
|
||||||
import kotlinx.coroutines.CopyableThrowable
|
|
||||||
import kotlinx.coroutines.ExperimentalCoroutinesApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.ReflectionApi
|
|
||||||
import ru.landgrafhomyak.db.skeleton1.api.errors.SchemaDefinitionException
|
|
||||||
|
|
||||||
@ReflectionApi
|
|
||||||
@OptIn(ExperimentalCoroutinesApi::class)
|
|
||||||
public class WrongScopeException : SchemaDefinitionException, CopyableThrowable<WrongScopeException> {
|
|
||||||
public val wrongObject: Any
|
|
||||||
public val currentScope: Any
|
|
||||||
public val correctScope: Any
|
|
||||||
|
|
||||||
public constructor(wrongObject: Any, currentScope: Any, correctScope: Any) : super(formatMessage(wrongObject, currentScope, correctScope)) {
|
|
||||||
this.wrongObject = wrongObject
|
|
||||||
this.currentScope = currentScope
|
|
||||||
this.correctScope = correctScope
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(wrongObject: Any, currentScope: Any, correctScope: Any, customMessage: String) : super(customMessage) {
|
|
||||||
this.wrongObject = wrongObject
|
|
||||||
this.currentScope = currentScope
|
|
||||||
this.correctScope = correctScope
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(wrongObject: Any, currentScope: Any, correctScope: Any, customMessage: String, cause: Throwable) : super(customMessage, cause) {
|
|
||||||
this.wrongObject = wrongObject
|
|
||||||
this.currentScope = currentScope
|
|
||||||
this.correctScope = correctScope
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(wrongObject: Any, currentScope: Any, correctScope: Any, cause: Throwable) : super(formatMessage(wrongObject, currentScope, correctScope), cause) {
|
|
||||||
this.wrongObject = wrongObject
|
|
||||||
this.currentScope = currentScope
|
|
||||||
this.correctScope = correctScope
|
|
||||||
}
|
|
||||||
|
|
||||||
public constructor(
|
|
||||||
wrongObject: Any, currentScope: Any, correctScope: Any,
|
|
||||||
message: String?, cause: Throwable?,
|
|
||||||
@Suppress("unused", "LocalVariableName") _marker: Unit
|
|
||||||
) : super(message, cause, _marker) {
|
|
||||||
this.wrongObject = wrongObject
|
|
||||||
this.currentScope = currentScope
|
|
||||||
this.correctScope = correctScope
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun createCopy(): WrongScopeException? {
|
|
||||||
return WrongScopeException(
|
|
||||||
wrongObject = this.wrongObject,
|
|
||||||
currentScope = this.currentScope,
|
|
||||||
correctScope = this.correctScope,
|
|
||||||
message = this.message,
|
|
||||||
cause = this.cause,
|
|
||||||
_marker = Unit
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
public companion object {
|
|
||||||
@JvmStatic
|
|
||||||
public fun formatMessage(
|
|
||||||
wrongObject: Any, currentScope: Any, correctScope: Any
|
|
||||||
): String = "Entity $wrongObject passed to wrong scope $currentScope (must be $correctScope)"
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user