This is an automated email from the ASF dual-hosted git repository.
zhangliang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
The following commit(s) were added to refs/heads/master by this push:
new e786afeb797 Move ClusterEventSubscriberRegistry to mode-core module
(#34064)
e786afeb797 is described below
commit e786afeb79758e5926fb6fa578cf4816fcb9b7d4
Author: Liang Zhang <[email protected]>
AuthorDate: Sun Dec 15 11:01:19 2024 +0800
Move ClusterEventSubscriberRegistry to mode-core module (#34064)
* Refactor RuleItemManager
* Refactor RuleItemManager
* Move ClusterEventSubscriberRegistry to mode-core module
---
.../cluster/ClusterContextManagerBuilder.java | 4 +--
.../event/ClusterEventSubscriberRegistry.java} | 6 ++---
.../event/ClusterEventSubscriberRegistryTest.java} | 31 ++++++++++------------
3 files changed, 19 insertions(+), 22 deletions(-)
diff --git
a/mode/type/cluster/core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/ClusterContextManagerBuilder.java
b/mode/type/cluster/core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/ClusterContextManagerBuilder.java
index c942b31c0fc..ebe7b89f7a9 100644
---
a/mode/type/cluster/core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/ClusterContextManagerBuilder.java
+++
b/mode/type/cluster/core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/ClusterContextManagerBuilder.java
@@ -27,7 +27,7 @@ import
org.apache.shardingsphere.infra.spi.ShardingSphereServiceLoader;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import org.apache.shardingsphere.infra.util.eventbus.EventBusContext;
import org.apache.shardingsphere.metadata.persist.MetaDataPersistService;
-import org.apache.shardingsphere.mode.event.subsciber.EventSubscriberRegistry;
+import
org.apache.shardingsphere.mode.manager.cluster.event.ClusterEventSubscriberRegistry;
import org.apache.shardingsphere.mode.lock.GlobalLockContext;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.mode.manager.ContextManagerBuilder;
@@ -79,7 +79,7 @@ public final class ClusterContextManagerBuilder implements
ContextManagerBuilder
contextManager.getPersistServiceFacade().getComputeNodePersistService().registerOnline(computeNodeInstanceContext.getInstance());
contextManager.getComputeNodeInstanceContext().getAllClusterInstances().addAll(contextManager.getPersistServiceFacade().getComputeNodePersistService().loadAllComputeNodeInstances());
new DataChangedEventListenerRegistry(contextManager,
getDatabaseNames(param,
contextManager.getPersistServiceFacade().getMetaDataPersistService())).register();
- EventSubscriberRegistry eventSubscriberRegistry = new
EventSubscriberRegistry(contextManager.getComputeNodeInstanceContext().getEventBusContext());
+ ClusterEventSubscriberRegistry eventSubscriberRegistry = new
ClusterEventSubscriberRegistry(contextManager.getComputeNodeInstanceContext().getEventBusContext());
eventSubscriberRegistry.register(ShardingSphereServiceLoader.getServiceInstances(DeliverEventSubscriberFactory.class).stream()
.map(each -> each.create(repository,
contextManager.getComputeNodeInstanceContext().getEventBusContext())).collect(Collectors.toList()));
eventSubscriberRegistry.register(new
ClusterDispatchEventSubscriberRegistry(contextManager).getSubscribers());
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/event/subsciber/EventSubscriberRegistry.java
b/mode/type/cluster/core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/event/ClusterEventSubscriberRegistry.java
similarity index 89%
copy from
mode/core/src/main/java/org/apache/shardingsphere/mode/event/subsciber/EventSubscriberRegistry.java
copy to
mode/type/cluster/core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/event/ClusterEventSubscriberRegistry.java
index 137896a6810..5fdff6c4de8 100644
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/event/subsciber/EventSubscriberRegistry.java
+++
b/mode/type/cluster/core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/event/ClusterEventSubscriberRegistry.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.mode.event.subsciber;
+package org.apache.shardingsphere.mode.manager.cluster.event;
import lombok.RequiredArgsConstructor;
import org.apache.shardingsphere.infra.util.eventbus.EventBusContext;
@@ -24,10 +24,10 @@ import
org.apache.shardingsphere.infra.util.eventbus.EventSubscriber;
import java.util.Collection;
/**
- * Event subscriber registry.
+ * Cluster event subscriber registry.
*/
@RequiredArgsConstructor
-public final class EventSubscriberRegistry {
+public final class ClusterEventSubscriberRegistry {
private final EventBusContext eventBusContext;
diff --git
a/mode/core/src/main/java/org/apache/shardingsphere/mode/event/subsciber/EventSubscriberRegistry.java
b/mode/type/cluster/core/src/test/java/org/apache/shardingsphere/mode/manager/cluster/event/ClusterEventSubscriberRegistryTest.java
similarity index 59%
rename from
mode/core/src/main/java/org/apache/shardingsphere/mode/event/subsciber/EventSubscriberRegistry.java
rename to
mode/type/cluster/core/src/test/java/org/apache/shardingsphere/mode/manager/cluster/event/ClusterEventSubscriberRegistryTest.java
index 137896a6810..17ff210230c 100644
---
a/mode/core/src/main/java/org/apache/shardingsphere/mode/event/subsciber/EventSubscriberRegistry.java
+++
b/mode/type/cluster/core/src/test/java/org/apache/shardingsphere/mode/manager/cluster/event/ClusterEventSubscriberRegistryTest.java
@@ -15,28 +15,25 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.mode.event.subsciber;
+package org.apache.shardingsphere.mode.manager.cluster.event;
-import lombok.RequiredArgsConstructor;
import org.apache.shardingsphere.infra.util.eventbus.EventBusContext;
import org.apache.shardingsphere.infra.util.eventbus.EventSubscriber;
+import org.junit.jupiter.api.Test;
-import java.util.Collection;
+import java.util.Collections;
-/**
- * Event subscriber registry.
- */
-@RequiredArgsConstructor
-public final class EventSubscriberRegistry {
-
- private final EventBusContext eventBusContext;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
+
+class ClusterEventSubscriberRegistryTest {
- /**
- * Register subscribers.
- *
- * @param subscribers to be registered subscribers
- */
- public void register(final Collection<EventSubscriber> subscribers) {
- subscribers.forEach(eventBusContext::register);
+ @Test
+ void assertRegister() {
+ EventBusContext eventBusContext = mock(EventBusContext.class);
+ ClusterEventSubscriberRegistry registry = new
ClusterEventSubscriberRegistry(eventBusContext);
+ EventSubscriber subscriber = mock(EventSubscriber.class);
+ registry.register(Collections.singleton(subscriber));
+ verify(eventBusContext).register(subscriber);
}
}