Class HazelcastTopicEventCluster

  • All Implemented Interfaces:
    TopicEventCluster<com.atlassian.confluence.impl.cluster.hazelcast.event.HazelcastTopicEvent,​com.hazelcast.core.Member>

    public final class HazelcastTopicEventCluster
    extends Object
    implements TopicEventCluster<com.atlassian.confluence.impl.cluster.hazelcast.event.HazelcastTopicEvent,​com.hazelcast.core.Member>
    An implementation of TopicEventCluster representing the Hazelcast cluster.
    Since:
    8.3
    • Constructor Detail

      • HazelcastTopicEventCluster

        public HazelcastTopicEventCluster​(com.hazelcast.core.HazelcastInstance hazelcast)
    • Method Detail

      • initialise

        public void initialise​(BiConsumer<com.hazelcast.core.Member,​com.atlassian.confluence.impl.cluster.hazelcast.event.HazelcastTopicEvent> eventListener,
                               BiConsumer<com.hazelcast.core.Member,​UUID> ackListener,
                               Consumer<com.hazelcast.core.Member> nodeRemovedListener)
        Description copied from interface: TopicEventCluster
        Initialise the cluster with the given listeners.
        Specified by:
        initialise in interface TopicEventCluster<com.atlassian.confluence.impl.cluster.hazelcast.event.HazelcastTopicEvent,​com.hazelcast.core.Member>
        Parameters:
        eventListener - The listener that will consume events received from the cluster
        ackListener - The listener that will receive event acknowledgements from the cluster
        nodeRemovedListener - The listener that will receive notifications of cluster nodes being removed
      • getOtherClusterMembers

        public Set<com.hazelcast.core.Member> getOtherClusterMembers()
        Specified by:
        getOtherClusterMembers in interface TopicEventCluster<com.atlassian.confluence.impl.cluster.hazelcast.event.HazelcastTopicEvent,​com.hazelcast.core.Member>
      • publishEvent

        public void publishEvent​(com.atlassian.confluence.impl.cluster.hazelcast.event.HazelcastTopicEvent event)
        Specified by:
        publishEvent in interface TopicEventCluster<com.atlassian.confluence.impl.cluster.hazelcast.event.HazelcastTopicEvent,​com.hazelcast.core.Member>
      • publishAck

        public void publishAck​(UUID ack)
        Specified by:
        publishAck in interface TopicEventCluster<com.atlassian.confluence.impl.cluster.hazelcast.event.HazelcastTopicEvent,​com.hazelcast.core.Member>
      • wrapEvent

        public com.atlassian.confluence.impl.cluster.hazelcast.event.HazelcastTopicEvent wrapEvent​(Object event)
        Specified by:
        wrapEvent in interface TopicEventCluster<com.atlassian.confluence.impl.cluster.hazelcast.event.HazelcastTopicEvent,​com.hazelcast.core.Member>