Search in sources :

Example 11 with Filter

use of software.amazon.awssdk.services.ec2.model.Filter in project photon-model by vmware.

the class AWSNetworkStateEnumerationAdapterService method getInternetGatewayInformation.

/**
 * Gets the Internet gateways that are attached to the VPCs that were discovered during the
 * enumeration process.
 */
private void getInternetGatewayInformation(AWSNetworkStateCreationContext context, AWSNetworkStateCreationStage next) {
    DescribeInternetGatewaysRequest internetGatewayRequest = new DescribeInternetGatewaysRequest();
    List<String> vpcList = new ArrayList<>(context.vpcs.keySet());
    Filter filter = new Filter(AWS_ATTACHMENT_VPC_FILTER, vpcList);
    internetGatewayRequest.getFilters().add(filter);
    AWSInternetGatewayAsyncHandler asyncHandler = new AWSInternetGatewayAsyncHandler(next, context);
    context.amazonEC2Client.describeInternetGatewaysAsync(internetGatewayRequest, asyncHandler);
}
Also used : Filter(com.amazonaws.services.ec2.model.Filter) ArrayList(java.util.ArrayList) DescribeInternetGatewaysRequest(com.amazonaws.services.ec2.model.DescribeInternetGatewaysRequest)

Example 12 with Filter

use of software.amazon.awssdk.services.ec2.model.Filter in project photon-model by vmware.

the class AWSNetworkClient method getMainRouteTable.

/**
 * Get the main route table for a given VPC
 */
public RouteTable getMainRouteTable(String vpcId) {
    // build filter list
    List<Filter> filters = new ArrayList<>();
    filters.add(AWSUtils.getFilter(AWSUtils.AWS_FILTER_VPC_ID, vpcId));
    filters.add(AWSUtils.getFilter(AWS_MAIN_ROUTE_ASSOCIATION, "true"));
    DescribeRouteTablesRequest req = new DescribeRouteTablesRequest().withFilters(filters);
    DescribeRouteTablesResult res = this.client.describeRouteTables(req);
    List<RouteTable> routeTables = res.getRouteTables();
    return routeTables.isEmpty() ? null : routeTables.get(0);
}
Also used : RouteTable(com.amazonaws.services.ec2.model.RouteTable) DescribeRouteTablesRequest(com.amazonaws.services.ec2.model.DescribeRouteTablesRequest) Filter(com.amazonaws.services.ec2.model.Filter) ArrayList(java.util.ArrayList) DescribeRouteTablesResult(com.amazonaws.services.ec2.model.DescribeRouteTablesResult)

Example 13 with Filter

use of software.amazon.awssdk.services.ec2.model.Filter in project photon-model by vmware.

the class AWSSecurityGroupClient method getSecurityGroups.

public List<SecurityGroup> getSecurityGroups(List<String> names, String vpcId) {
    DescribeSecurityGroupsRequest req = new DescribeSecurityGroupsRequest();
    req.withFilters(new Filter(AWS_GROUP_NAME_FILTER, names));
    if (vpcId != null) {
        req.withFilters(new Filter(AWS_VPC_ID_FILTER, Collections.singletonList(vpcId)));
    }
    DescribeSecurityGroupsResult groups = this.client.describeSecurityGroups(req);
    return groups != null ? groups.getSecurityGroups() : Collections.emptyList();
}
Also used : DescribeSecurityGroupsRequest(com.amazonaws.services.ec2.model.DescribeSecurityGroupsRequest) Filter(com.amazonaws.services.ec2.model.Filter) DescribeSecurityGroupsResult(com.amazonaws.services.ec2.model.DescribeSecurityGroupsResult)

Example 14 with Filter

use of software.amazon.awssdk.services.ec2.model.Filter in project photon-model by vmware.

the class AWSSecurityGroupClient method getDefaultSecurityGroup.

public SecurityGroup getDefaultSecurityGroup(String vpcId) {
    SecurityGroup cellGroup = null;
    DescribeSecurityGroupsRequest req = new DescribeSecurityGroupsRequest().withFilters(new Filter("group-name", Collections.singletonList(DEFAULT_SECURITY_GROUP_NAME)));
    if (vpcId != null) {
        req.withFilters(new Filter("vpc-id", Collections.singletonList(vpcId)));
    }
    DescribeSecurityGroupsResult cellGroups = this.client.describeSecurityGroups(req);
    if (cellGroups != null && !cellGroups.getSecurityGroups().isEmpty()) {
        cellGroup = cellGroups.getSecurityGroups().get(0);
    }
    return cellGroup;
}
Also used : DescribeSecurityGroupsRequest(com.amazonaws.services.ec2.model.DescribeSecurityGroupsRequest) Filter(com.amazonaws.services.ec2.model.Filter) SecurityGroup(com.amazonaws.services.ec2.model.SecurityGroup) DescribeSecurityGroupsResult(com.amazonaws.services.ec2.model.DescribeSecurityGroupsResult)

Example 15 with Filter

use of software.amazon.awssdk.services.ec2.model.Filter in project photon-model by vmware.

the class AWSSecurityGroupClient method getSecurityGroup.

public SecurityGroup getSecurityGroup(String name, String vpcId) {
    SecurityGroup cellGroup = null;
    DescribeSecurityGroupsRequest req = new DescribeSecurityGroupsRequest().withFilters(new Filter("group-name", Collections.singletonList(name)));
    if (vpcId != null) {
        req.withFilters(new Filter("vpc-id", Collections.singletonList(vpcId)));
    }
    DescribeSecurityGroupsResult cellGroups = this.client.describeSecurityGroups(req);
    if (cellGroups != null && !cellGroups.getSecurityGroups().isEmpty()) {
        cellGroup = cellGroups.getSecurityGroups().get(0);
    }
    return cellGroup;
}
Also used : DescribeSecurityGroupsRequest(com.amazonaws.services.ec2.model.DescribeSecurityGroupsRequest) Filter(com.amazonaws.services.ec2.model.Filter) SecurityGroup(com.amazonaws.services.ec2.model.SecurityGroup) DescribeSecurityGroupsResult(com.amazonaws.services.ec2.model.DescribeSecurityGroupsResult)

Aggregations

Filter (com.amazonaws.services.ec2.model.Filter)69 ArrayList (java.util.ArrayList)23 DescribeInstancesRequest (com.amazonaws.services.ec2.model.DescribeInstancesRequest)20 DescribeImagesRequest (com.amazonaws.services.ec2.model.DescribeImagesRequest)16 List (java.util.List)16 DescribeSubnetsRequest (com.amazonaws.services.ec2.model.DescribeSubnetsRequest)15 Instance (com.amazonaws.services.ec2.model.Instance)15 Reservation (com.amazonaws.services.ec2.model.Reservation)15 DescribeImagesResult (com.amazonaws.services.ec2.model.DescribeImagesResult)14 DescribeInstancesResult (com.amazonaws.services.ec2.model.DescribeInstancesResult)13 DescribeSubnetsResult (com.amazonaws.services.ec2.model.DescribeSubnetsResult)13 HashMap (java.util.HashMap)12 Vpc (com.amazonaws.services.ec2.model.Vpc)11 DescribeSecurityGroupsRequest (com.amazonaws.services.ec2.model.DescribeSecurityGroupsRequest)10 Tag (com.amazonaws.services.ec2.model.Tag)10 Map (java.util.Map)10 DescribeSecurityGroupsResult (com.amazonaws.services.ec2.model.DescribeSecurityGroupsResult)9 AmazonEC2AsyncClient (com.amazonaws.services.ec2.AmazonEC2AsyncClient)8 Utils (com.vmware.xenon.common.Utils)8 AWSUtils.getAWSNonTerminatedInstancesFilter (com.vmware.photon.controller.model.adapters.awsadapter.AWSUtils.getAWSNonTerminatedInstancesFilter)6