package backtype.storm.command; import java.security.InvalidParameterException; import java.util.Map; import backtype.storm.generated.KillOptions; import backtype.storm.utils.NimbusClient; import backtype.storm.utils.Utils; /** * Kill topology * * @author longda * */ public class kill_topology { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub if (args == null || args.length == 0) { throw new InvalidParameterException("Should input topology name"); } String topologyName = args[0]; NimbusClient client = null; try { Map conf = Utils.readStormConfig(); client = NimbusClient.getConfiguredClient(conf); if (args.length == 1) { client.getClient().killTopology(topologyName); } else { int delaySeconds = Integer.parseInt(args[1]); KillOptions options = new KillOptions(); options.set_wait_secs(delaySeconds); client.getClient().killTopologyWithOpts(topologyName, options); } System.out.println("Successfully submit command kill " + topologyName); } catch (Exception e) { System.out.println(e.getMessage()); e.printStackTrace(); throw new RuntimeException(e); } finally { if (client != null) { client.close(); } } } }