Removed usage of deprecated ClusterCommunicationService APIs
Change-Id: Id306dadad48d1bad7b3fbde3a40ba3e0fdac4cbc
diff --git a/core/store/dist/src/main/java/org/onosproject/store/group/impl/DistributedGroupStore.java b/core/store/dist/src/main/java/org/onosproject/store/group/impl/DistributedGroupStore.java
index cd42b17..2c682a1 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/group/impl/DistributedGroupStore.java
+++ b/core/store/dist/src/main/java/org/onosproject/store/group/impl/DistributedGroupStore.java
@@ -60,8 +60,6 @@
import org.onosproject.net.group.StoredGroupEntry;
import org.onosproject.store.AbstractStore;
import org.onosproject.store.cluster.messaging.ClusterCommunicationService;
-import org.onosproject.store.cluster.messaging.ClusterMessage;
-import org.onosproject.store.cluster.messaging.ClusterMessageHandler;
import org.onosproject.store.service.MultiValuedTimestamp;
import org.onosproject.store.serializers.DeviceIdSerializer;
import org.onosproject.store.serializers.KryoNamespaces;
@@ -198,10 +196,11 @@
newFixedThreadPool(MESSAGE_HANDLER_THREAD_POOL_SIZE,
groupedThreads("onos/store/group",
"message-handlers"));
- clusterCommunicator.
- addSubscriber(GroupStoreMessageSubjects.REMOTE_GROUP_OP_REQUEST,
- new ClusterGroupMsgHandler(),
- messageHandlingExecutor);
+
+ clusterCommunicator.addSubscriber(GroupStoreMessageSubjects.REMOTE_GROUP_OP_REQUEST,
+ kryoBuilder.build()::deserialize,
+ this::process,
+ messageHandlingExecutor);
log.debug("Creating EC map groupstorekeymap");
EventuallyConsistentMapBuilder<GroupStoreKeyMapKey, StoredGroupEntry>
@@ -970,45 +969,27 @@
}
}
}
- /**
- * Message handler to receive messages from group subsystems of
- * other cluster members.
- */
- private final class ClusterGroupMsgHandler
- implements ClusterMessageHandler {
- @Override
- public void handle(ClusterMessage message) {
- if (message.subject().equals(
- GroupStoreMessageSubjects.REMOTE_GROUP_OP_REQUEST)) {
- GroupStoreMessage groupOp = kryoBuilder.
- build().deserialize(message.payload());
- log.debug("received remote group operation {} request for device {}",
- groupOp.type(),
- groupOp.deviceId());
- if (mastershipService.
- getLocalRole(groupOp.deviceId()) !=
- MastershipRole.MASTER) {
- log.warn("ClusterGroupMsgHandler: This node is not "
- + "MASTER for device {}", groupOp.deviceId());
- return;
- }
- if (groupOp.type() == GroupStoreMessage.Type.ADD) {
- storeGroupDescriptionInternal(groupOp.groupDesc());
- } else if (groupOp.type() == GroupStoreMessage.Type.UPDATE) {
- updateGroupDescriptionInternal(groupOp.deviceId(),
- groupOp.appCookie(),
- groupOp.updateType(),
- groupOp.updateBuckets(),
- groupOp.newAppCookie());
- } else if (groupOp.type() == GroupStoreMessage.Type.DELETE) {
- deleteGroupDescriptionInternal(groupOp.deviceId(),
- groupOp.appCookie());
- }
- } else {
- log.warn("ClusterGroupMsgHandler: Unknown remote message type {}",
- message.subject());
- }
- }
+
+ private void process(GroupStoreMessage groupOp) {
+ log.debug("Received remote group operation {} request for device {}",
+ groupOp.type(),
+ groupOp.deviceId());
+ if (!mastershipService.isLocalMaster(groupOp.deviceId())) {
+ log.warn("This node is not MASTER for device {}", groupOp.deviceId());
+ return;
+ }
+ if (groupOp.type() == GroupStoreMessage.Type.ADD) {
+ storeGroupDescriptionInternal(groupOp.groupDesc());
+ } else if (groupOp.type() == GroupStoreMessage.Type.UPDATE) {
+ updateGroupDescriptionInternal(groupOp.deviceId(),
+ groupOp.appCookie(),
+ groupOp.updateType(),
+ groupOp.updateBuckets(),
+ groupOp.newAppCookie());
+ } else if (groupOp.type() == GroupStoreMessage.Type.DELETE) {
+ deleteGroupDescriptionInternal(groupOp.deviceId(),
+ groupOp.appCookie());
+ }
}
/**