try {
String jobId = client.getLoadBalancerClient().createLoadBalancerRuleForPublicIP(ip.getId(),
Algorithm.LEASTCONN, prefix, 22, 22);
assertTrue(jobComplete.apply(jobId));
AsyncJob<LoadBalancerRule> asyncJob = client.getAsyncJobClient().getAsyncJob(jobId);
LoadBalancerRule result = asyncJob.getResult();
rule = result;
} catch (IllegalStateException e) {
// very likely an ip conflict, so retry;
attempts++;
}