package tw.com.pictures;
import java.util.HashMap;
import java.util.Map;
import tw.com.exceptions.CfnAssistException;
import com.amazonaws.services.ec2.model.Subnet;
public class SubnetDiagrams {
private Diagram parentDiagram;
private Map<String, ChildDiagram> childDiagrams = new HashMap<String, ChildDiagram>(); // subnetId -> diagram
public ChildDiagram addDiagramFor(Subnet subnet) throws CfnAssistException {
String subnetName = AmazonVPCFacade.getNameFromTags(subnet.getTags());
String subnetLabel = formSubnetLabel(subnet, subnetName);
String subnetId = subnet.getSubnetId();
ChildDiagram childDiagram = parentDiagram.createSubDiagram(subnetId, subnetLabel);
childDiagrams.put(subnetId,childDiagram);
return childDiagram;
}
public static String formSubnetLabel(Subnet subnet, String tagName) {
String name = subnet.getSubnetId();
if (!tagName.isEmpty()) {
name = tagName;
}
return String.format("%s [%s]\n(%s)", name, subnet.getSubnetId(), subnet.getCidrBlock());
}
}