public interface

ClusterManager

implements NameResolver LockFactory
com.atlassian.confluence.cluster.ClusterManager
Known Indirect Subclasses

Summary

Public Methods
abstract void configure(ClusterConfig config)
Set a new cluster configuration.
abstract ClusterInformation getClusterInformation()
Get information about the running cluster.
abstract ClusterInvariants getClusterInvariants()
Get all attributes of the server that must be consistent between cluster nodes.
abstract ClusteredLock getClusteredLock(String key)
Get a distributed lock -- getting the lock does *not* imply that it has been acquired.
abstract FifoBuffer getFifoBuffer(String name)
Get a distributed FIFO buffer
abstract Map<IntegerNodeStatus> getNodeStatuses()
Gets status information from all members of the cluster.
abstract Map getNodeStatusesForCluster()
This method is deprecated. since 3.1 leaks Coherence classes, do not use.
abstract int getPermittedClusterNodes()
abstract Serializable getPublishedObject(String key)
Retrieve an object which another node in the cluster has shared, return null if no such object exists
abstract ClusterNodeInformation getThisNodeInformation()

Get the identity of this node in the cluster.

abstract boolean isClusterSupported()
Check whether this Confluence distribution is capable of running in a cluster.
abstract boolean isClustered()
abstract boolean isConfigured()
abstract void publishEvent(ConfluenceEvent event)
Publish an event as a ClusterEventWrapper to other nodes
abstract void publishObject(String key, Serializable object)
Share an object to the cluster under a particular key
abstract void reconfigure(ClusterConfig config)
Set a new cluster configuration and cycle the service
abstract void startCluster()
Start the clustering service
abstract void stopCluster()
Stop the clustering service
[Expand]
Inherited Methods
From interface com.atlassian.confluence.cluster.NameResolver
From interface com.atlassian.confluence.concurrent.LockFactory

Public Methods

public abstract void configure (ClusterConfig config)

Set a new cluster configuration.

public abstract ClusterInformation getClusterInformation ()

Get information about the running cluster.

public abstract ClusterInvariants getClusterInvariants ()

Get all attributes of the server that must be consistent between cluster nodes.

Returns
  • the cluster invariants of this server
Throws
ClusterException if the invariants can not be gathered for some reason

public abstract ClusteredLock getClusteredLock (String key)

Get a distributed lock -- getting the lock does *not* imply that it has been acquired. Call tryLock() or lock() on the returned object to acquire the lock.

public abstract FifoBuffer getFifoBuffer (String name)

Get a distributed FIFO buffer

public abstract Map<IntegerNodeStatus> getNodeStatuses ()

Gets status information from all members of the cluster.

Returns
  • a map of node IDs to node statuses

public abstract Map getNodeStatusesForCluster ()

This method is deprecated.
since 3.1 leaks Coherence classes, do not use.

public abstract int getPermittedClusterNodes ()

Returns
  • the number of clustered nodes permitted by the license. Returns a value less than or equal to zero if clustering is not permitted.

public abstract Serializable getPublishedObject (String key)

Retrieve an object which another node in the cluster has shared, return null if no such object exists

Returns
  • a shared Object

public abstract ClusterNodeInformation getThisNodeInformation ()

Get the identity of this node in the cluster. ClusterNodeInformation implements equals().

Returns
  • the identity of this node in the cluster. May return null if the node is not in a cluster.

public abstract boolean isClusterSupported ()

Check whether this Confluence distribution is capable of running in a cluster. This differs from isClustered() in that it will return true if the code to support clustering is present, even if this instance does not have a clustered license or a current clustering configuration.

Returns
  • true if this Confluence installation is capable of running in a cluster

public abstract boolean isClustered ()

Returns
  • true if this instance is configured to allow clustering with other nodes

public abstract boolean isConfigured ()

Returns

public abstract void publishEvent (ConfluenceEvent event)

Publish an event as a ClusterEventWrapper to other nodes

public abstract void publishObject (String key, Serializable object)

Share an object to the cluster under a particular key

public abstract void reconfigure (ClusterConfig config)

Set a new cluster configuration and cycle the service

public abstract void startCluster ()

Start the clustering service

public abstract void stopCluster ()

Stop the clustering service