}
}
public void testRebootInstance() throws EC2Exception {
List<Instance> ec2Instances = client.runInstances(amiID, 1, null, null, null, null, null, null);
Instance instance = ec2Instances.get(0);
// Wait till the instance is running
while (!instance.getCurrentState().equals(InstanceState.RUNNING)) {
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
instance = client.describeInstance(instance.getInstanceId());
}
// Now reboot it
boolean result = client.rebootInstances(new String[]{instance.getInstanceId()});
assertTrue(result);
instance = client.describeInstance(instance.getInstanceId());
System.out.println("STATE=" + instance.getCurrentState());
// Finally shut it down
List<Instance> instances =
client.terminateInstances(new String[]{instance.getInstanceId()});
assertEquals(instances.size(), 1);
assertEquals(instances.get(0).getCurrentState(), InstanceState.SHUTTING_DOWN);
}