public void list() throws Exception {
   for (String regionId : api.getConfiguredRegions()) {
     SecurityGroupApi securityGroupApi = api.getSecurityGroupApi(regionId).get();
     Set<? extends SecurityGroup> securityGroupsList = securityGroupApi.list().toSet();
     assertNotNull(securityGroupsList);
   }
 }
 public void createGetAndDeleteSecurityGroup() throws Exception {
   for (String regionId : api.getConfiguredRegions()) {
     SecurityGroupApi securityGroupApi = api.getSecurityGroupApi(regionId).get();
     SecurityGroup securityGroup = null;
     String id;
     try {
       securityGroup =
           securityGroupApi.createWithDescription(SECURITY_GROUP_NAME, "test security group");
       assertNotNull(securityGroup);
       id = securityGroup.getId();
       SecurityGroup theGroup = securityGroupApi.get(id);
       assertNotNull(theGroup);
     } finally {
       if (securityGroup != null) {
         securityGroupApi.delete(securityGroup.getId());
       }
     }
   }
 }
  public void createAndDeleteSecurityGroupRule() throws Exception {
    for (String regionId : api.getConfiguredRegions()) {
      SecurityGroupApi securityGroupApi = api.getSecurityGroupApi(regionId).get();
      SecurityGroup securityGroup = null;

      try {
        securityGroup =
            securityGroupApi.createWithDescription(SECURITY_GROUP_NAME, "test security group");
        assertNotNull(securityGroup);

        for (int port : ImmutableSet.of(22, 8080)) {
          SecurityGroupRule rule =
              securityGroupApi.createRuleAllowingCidrBlock(
                  securityGroup.getId(),
                  Ingress.builder().ipProtocol(IpProtocol.TCP).fromPort(port).toPort(port).build(),
                  "0.0.0.0/0");
          assertNotNull(rule);

          SecurityGroupRule rule2 =
              securityGroupApi.createRuleAllowingSecurityGroupId(
                  securityGroup.getId(),
                  Ingress.builder().ipProtocol(IpProtocol.TCP).fromPort(port).toPort(port).build(),
                  securityGroup.getId());

          assertNotNull(rule2);
        }
        securityGroup = securityGroupApi.get(securityGroup.getId());

      } finally {
        if (securityGroup != null) {
          securityGroupApi.delete(securityGroup.getId());
        }
      }
    }
  }