package tw.com.pictures; import tw.com.exceptions.CfnAssistException; import tw.com.pictures.dot.CommonElements; import tw.com.pictures.dot.Recorder; public interface Diagram extends CommonElements { ChildDiagram createSubDiagram(String uniqueId, String label) throws CfnAssistException; void addTitle(String title); void render(Recorder recorder); void addRouteTable(String uniqueId, String label) throws CfnAssistException; void addConnectionBetween(String uniqueIdA, String uniqueIdB); void addPublicIPAddress(String unqiueId, String label) throws CfnAssistException; void addLoadBalancer(String unqiueId, String label) throws CfnAssistException; void associateWithSubDiagram(String unqiueId, String clusterId, HasDiagramId childDiagram); void addConnectionFromSubDiagram(String start, String end, HasDiagramId childDigram, String label) throws CfnAssistException; void addConnectionToSubDiagram(String start, String end, HasDiagramId childDigram, String label) throws CfnAssistException; void addBlockedConnectionFromSubDiagram(String start, String end, HasDiagramId childDigram, String label) throws CfnAssistException; void addBlockedConnectionToSubDiagram(String start, String end, HasDiagramId childDigram, String label) throws CfnAssistException; void addDBInstance(String rdsId, String label) throws CfnAssistException; void addACL(String uniqueId, String label) throws CfnAssistException; void addCidr(String uniqueId, String label) throws CfnAssistException; void associate(String uniqueIdA, String uniqueIdB); void addRouteToInstance(String instanceId, String routeTableId, SubnetDiagramBuilder subnetDiagramBuilder, String cidr) throws CfnAssistException; }