package com.sequenceiq.samples.core.service;
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.services.ec2.model.*;
import java.util.List;
/**
* This service communicates with the AWS backend and can be used to describe,
* run, stop and terminate AWS EC2 instances.
*/
public interface InstanceService {
List<Reservation> describeInstances(AWSCredentials credentials);
RunInstancesResult runInstances(AWSCredentials credentials, String amiId, String keyName, String securityGroup, String gist);
StopInstancesResult stopInstances(AWSCredentials credentials, String... instanceId);
TerminateInstancesResult terminateInstances(AWSCredentials credentials, String... instanceId);
StartInstancesResult startInstances(AWSCredentials credentials, String... instanceId);
}