package core.aws.task.vpc;
import com.amazonaws.services.ec2.model.CreateTagsRequest;
import core.aws.client.AWS;
import core.aws.env.Context;
import core.aws.resource.vpc.InternetGateway;
import core.aws.task.ec2.EC2TagHelper;
import core.aws.workflow.Action;
import core.aws.workflow.Task;
/**
* @author neo
*/
@Action("create-internet-gateway")
public class CreateInternetGatewayTask extends Task<InternetGateway> {
public CreateInternetGatewayTask(InternetGateway internetGateway) {
super(internetGateway);
}
@Override
public void execute(Context context) throws Exception {
resource.remoteInternetGatewayId = AWS.vpc.createInternetGateway(resource.vpc.remoteVPC.getVpcId()).getInternetGatewayId();
EC2TagHelper tagHelper = new EC2TagHelper(context.env);
AWS.ec2.createTags(new CreateTagsRequest()
.withResources(resource.remoteInternetGatewayId)
.withTags(tagHelper.env(), tagHelper.resourceId(resource.id), tagHelper.name(resource.id)));
}
}