Enum Class DistributedClusterStateUpdater.MutatingCommand

java.lang.Object
java.lang.Enum<DistributedClusterStateUpdater.MutatingCommand>
org.apache.solr.cloud.DistributedClusterStateUpdater.MutatingCommand
All Implemented Interfaces:
Serializable, Comparable<DistributedClusterStateUpdater.MutatingCommand>, Constable
Enclosing class:
DistributedClusterStateUpdater

public static enum DistributedClusterStateUpdater.MutatingCommand extends Enum<DistributedClusterStateUpdater.MutatingCommand>
Naming of enum instances are the mutator object name (e.g. Cluster for ClusterStateMutator or Collection for CollectionMutator) followed by the method name of the mutator. For example SliceAddReplica represents SliceMutator.addReplica(org.apache.solr.common.cloud.ClusterState, org.apache.solr.common.cloud.ZkNodeProps).

Even though the various mutator classes do not implement any common interface, luckily their constructors and methods take the same set of parameters so all can be called from the enum method buildWriteCommand(SolrCloudManager, ClusterState, ZkNodeProps).

Given that OverseerAction.DOWNNODE is different (it returns a list of write commands and impacts more than one collection), it is handled specifically in DistributedClusterStateUpdater.CollectionNodeDownChangeCalculator.executeNodeDownStateUpdate(java.lang.String, org.apache.solr.common.cloud.ZkStateReader).