package com.netflix.priam.agent.commands; import com.google.common.collect.Sets; import com.netflix.priam.agent.NodeStatus; import com.netflix.priam.agent.process.AgentProcess; import com.netflix.priam.agent.process.ProcessMetaData; import com.netflix.priam.agent.process.SimpleProcessMetaData; import java.util.Arrays; import java.util.Set; public class CommandRepair implements AgentProcess { @Override public void performCommand(NodeStatus nodeTool, String[] arguments) throws Exception { Set<String> argumentsSet = Sets.newHashSet(Arrays.asList(arguments)); boolean sequential = argumentsSet.contains("sequential"); boolean localDataCenterOnly = argumentsSet.contains("local-dc-only"); nodeTool.repair(sequential, localDataCenterOnly); } @Override public ProcessMetaData getMetaData() { return new SimpleProcessMetaData("Calls nodeTool.repair(sequential, localDataCenterOnly). If arguments contains \"sequential\", sequential is set to true. localDataCenterOnly is true if arguments contains \"local-dc-only\"."); } }