diff --git a/console-framework-client-api/src/main/java/io/axoniq/console/framework/api/clientIdentification.kt b/console-framework-client-api/src/main/java/io/axoniq/console/framework/api/clientIdentification.kt index 70806ae..af90e38 100644 --- a/console-framework-client-api/src/main/java/io/axoniq/console/framework/api/clientIdentification.kt +++ b/console-framework-client-api/src/main/java/io/axoniq/console/framework/api/clientIdentification.kt @@ -116,6 +116,7 @@ data class CommandBusInformation( val handlerInterceptors: List = emptyList(), val dispatchInterceptors: List = emptyList(), val messageSerializer: SerializerInformation?, + val multiTenant: Boolean? = false, ) data class QueryBusInformation( @@ -127,6 +128,7 @@ data class QueryBusInformation( val dispatchInterceptors: List = emptyList(), val messageSerializer: SerializerInformation?, val serializer: SerializerInformation?, + val multiTenant: Boolean = false, ) data class EventStoreInformation( @@ -137,6 +139,7 @@ data class EventStoreInformation( val eventSerializer: SerializerInformation?, val snapshotSerializer: SerializerInformation?, val approximateSize: Long? = null, + val multiTenant: Boolean = false, ) @@ -149,6 +152,7 @@ data class EventProcessorInformation( val streamingInformation: StreamingEventProcessorInformation? = null, val trackingInformation: TrackingEventProcessorInformation? = null, val pooledStreamingInformation: PooledStreamingEventProcessorInformation? = null, + val multiTenant: Boolean = false, @Deprecated("Deprecated since version 1.6.0 due to new processor structure") val messageSourceType: String? = null, diff --git a/console-framework-client/src/main/java/io/axoniq/console/framework/client/SetupPayloadCreator.kt b/console-framework-client/src/main/java/io/axoniq/console/framework/client/SetupPayloadCreator.kt index 5ae1975..66badd8 100644 --- a/console-framework-client/src/main/java/io/axoniq/console/framework/client/SetupPayloadCreator.kt +++ b/console-framework-client/src/main/java/io/axoniq/console/framework/client/SetupPayloadCreator.kt @@ -73,7 +73,8 @@ class SetupPayloadCreator( commonProcessorInformation = commonProcessorInformation(processor), subscribingProcessorInformation = SubscribingProcessorInformation( processingStrategy = processor.getPropertyType("processingStrategy") - ) + ), + multiTenant = processor.javaClass.name == MULTI_TENANT_PROCESSOR_CLASS ) } @@ -257,6 +258,7 @@ class SetupPayloadCreator( dispatchInterceptors = dispatchInterceptors, messageSerializer = messageSerializer, serializer = serializer, + multiTenant = bus.javaClass.name == MULTI_TENANT_QUERY_BUS_CLASS, ) } @@ -275,7 +277,8 @@ class SetupPayloadCreator( dispatchInterceptors = dispatchInterceptors, eventSerializer = bus.getPropertyValue("storageEngine")?.getSerializerType("eventSerializer"), snapshotSerializer = bus.getPropertyValue("storageEngine")?.getSerializerType("snapshotSerializer"), - approximateSize = getApproximateSize(bus) + approximateSize = getApproximateSize(bus), + multiTenant = bus.javaClass.name == MULTI_TENANT_EVENT_STORE_CLASS, ) } @@ -322,7 +325,8 @@ class SetupPayloadCreator( context = context, handlerInterceptors = handlerInterceptors, dispatchInterceptors = dispatchInterceptors, - messageSerializer = serializer + messageSerializer = serializer, + multiTenant = bus.javaClass.name == MULTI_TENANT_COMMAND_BUS_CLASS, ) } @@ -380,6 +384,13 @@ class SetupPayloadCreator( } return SerializerInformation(serializer::class.java.name, false) } + + companion object { + private const val MULTI_TENANT_COMMAND_BUS_CLASS = "org.axonframework.extensions.multitenancy.components.commandhandeling.MultiTenantCommandBus" + private const val MULTI_TENANT_QUERY_BUS_CLASS = "org.axonframework.extensions.multitenancy.components.queryhandeling.MultiTenantQueryBus" + private const val MULTI_TENANT_EVENT_STORE_CLASS = "org.axonframework.extensions.multitenancy.components.eventstore.MultiTenantEventStore" + private const val MULTI_TENANT_PROCESSOR_CLASS = "org.axonframework.extensions.multitenancy.components.eventhandeling.MultiTenantEventProcessor" + } } diff --git a/console-framework-client/src/main/java/io/axoniq/console/framework/eventprocessor/ProcessorReportCreator.kt b/console-framework-client/src/main/java/io/axoniq/console/framework/eventprocessor/ProcessorReportCreator.kt index 4eea5ed..58ad698 100644 --- a/console-framework-client/src/main/java/io/axoniq/console/framework/eventprocessor/ProcessorReportCreator.kt +++ b/console-framework-client/src/main/java/io/axoniq/console/framework/eventprocessor/ProcessorReportCreator.kt @@ -30,7 +30,7 @@ class ProcessorReportCreator( private val metricsRegistry: ProcessorMetricsRegistry, ) { companion object { - const val MULTI_TENANT_PROCESSOR_CLASS = "org.axonframework.extensions.multitenancy.components.eventhandeling.MultiTenantEventProcessor" + private const val MULTI_TENANT_PROCESSOR_CLASS = "org.axonframework.extensions.multitenancy.components.eventhandeling.MultiTenantEventProcessor" } fun createReport() = ProcessorStatusReport(