package com.google.gwt.dist.util.arg; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import com.google.gwt.dist.Node; import com.google.gwt.dist.impl.NodeImpl; import com.google.gwt.dist.util.options.OptionNodes; import com.google.gwt.util.tools.ArgHandler; /** * Argument handler for nodes parameter. */ public class ArgHandlerNodes extends ArgHandler { private final OptionNodes option; public ArgHandlerNodes(OptionNodes option) { this.option = option; } @Override public String getPurpose() { return "Specify nodes to be used for compilation"; } @Override public String getTag() { return "-nodes"; } @Override public String[] getTagArgs() { return new String[] { "nodes" }; } @Override public int handle(String[] args, int startIndex) { List<Node> nodes = new ArrayList<Node>(); for (String s : Arrays.asList(args[startIndex + 1].split(";"))) { String[] temp = s.split(":"); nodes.add(new NodeImpl(temp[0], Integer.parseInt(temp[1]))); } option.setNodes(nodes); return 1; } @Override public boolean isRequired() { return true; } }