/** Sends a {@link MigrationEvent} to registered listeners with status {@code status}. */ void sendMigrationEvent(final MigrationStatus status) { final int partitionId = getPartitionId(); final NodeEngine nodeEngine = getNodeEngine(); final Member localMember = nodeEngine.getLocalMember(); final MigrationEvent event = new MigrationEvent(partitionId, null, localMember, status); final EventService eventService = nodeEngine.getEventService(); final Collection<EventRegistration> registrations = eventService.getRegistrations(SERVICE_NAME, MIGRATION_EVENT_TOPIC); eventService.publishEvent(SERVICE_NAME, registrations, event, partitionId); }
/** Sends a {@link MigrationEvent} to registered listeners with status {@code status}. */ void sendMigrationEvent(final MigrationStatus status) { final int partitionId = getPartitionId(); final NodeEngine nodeEngine = getNodeEngine(); final Member localMember = nodeEngine.getLocalMember(); final MigrationEvent event = new MigrationEvent(partitionId, null, localMember, status); final EventService eventService = nodeEngine.getEventService(); final Collection<EventRegistration> registrations = eventService.getRegistrations(SERVICE_NAME, MIGRATION_EVENT_TOPIC); eventService.publishEvent(SERVICE_NAME, registrations, event, partitionId); }
/** Sends a {@link MigrationEvent} to the registered event listeners. */ void sendMigrationEvent(final MigrationInfo migrationInfo, final MigrationEvent.MigrationStatus status) { if (migrationInfo.getSourceCurrentReplicaIndex() != 0 && migrationInfo.getDestinationNewReplicaIndex() != 0) { // only fire events for 0th replica migrations return; } ClusterServiceImpl clusterService = node.getClusterService(); MemberImpl current = clusterService.getMember(migrationInfo.getSourceAddress()); MemberImpl newOwner = clusterService.getMember(migrationInfo.getDestinationAddress()); MigrationEvent event = new MigrationEvent(migrationInfo.getPartitionId(), current, newOwner, status); EventService eventService = nodeEngine.getEventService(); Collection<EventRegistration> registrations = eventService.getRegistrations(SERVICE_NAME, MIGRATION_EVENT_TOPIC); eventService.publishEvent(SERVICE_NAME, registrations, event, event.getPartitionId()); }
/** Sends a {@link MigrationEvent} to the registered event listeners. */ void sendMigrationEvent(final MigrationInfo migrationInfo, final MigrationEvent.MigrationStatus status) { if (migrationInfo.getSourceCurrentReplicaIndex() != 0 && migrationInfo.getDestinationNewReplicaIndex() != 0) { // only fire events for 0th replica migrations return; } ClusterServiceImpl clusterService = node.getClusterService(); MemberImpl current = clusterService.getMember(migrationInfo.getSource()); MemberImpl newOwner = clusterService.getMember(migrationInfo.getDestination()); MigrationEvent event = new MigrationEvent(migrationInfo.getPartitionId(), current, newOwner, status); EventService eventService = nodeEngine.getEventService(); Collection<EventRegistration> registrations = eventService.getRegistrations(SERVICE_NAME, MIGRATION_EVENT_TOPIC); eventService.publishEvent(SERVICE_NAME, registrations, event, event.getPartitionId()); }