Example usage for com.amazonaws.services.ec2.model DescribeReservedInstancesOfferingsRequest getFilters

List of usage examples for com.amazonaws.services.ec2.model DescribeReservedInstancesOfferingsRequest getFilters

Introduction

In this page you can find the example usage for com.amazonaws.services.ec2.model DescribeReservedInstancesOfferingsRequest getFilters.

Prototype


public java.util.List<Filter> getFilters() 

Source Link

Document

One or more filters.

Usage

From source file:com.netflix.edda.EddaEc2Client.java

License:Apache License

public DescribeReservedInstancesOfferingsResult describeReservedInstancesOfferings(
        DescribeReservedInstancesOfferingsRequest request) {
    validateEmpty("Filter", request.getFilters());
    validateEmpty("AvailabilityZone", request.getAvailabilityZone());
    validateEmpty("IncludeMarketplace", request.getIncludeMarketplace());
    validateEmpty("InstanceTenancy", request.getInstanceTenancy());
    validateEmpty("InstanceType", request.getInstanceType());
    validateEmpty("OfferingType", request.getOfferingType());
    validateEmpty("ProductDescription", request.getProductDescription());

    TypeReference<List<ReservedInstancesOffering>> ref = new TypeReference<List<ReservedInstancesOffering>>() {
    };/* www.jav a2  s.c  om*/
    String url = config.url() + "/api/v2/aws/reservedInstancesOfferings;_expand";
    try {
        List<ReservedInstancesOffering> reservedInstancesOfferings = parse(ref, doGet(url));

        List<String> ids = request.getReservedInstancesOfferingIds();
        if (shouldFilter(ids)) {
            List<ReservedInstancesOffering> rs = new ArrayList<ReservedInstancesOffering>();
            for (ReservedInstancesOffering r : reservedInstancesOfferings) {
                if (matches(ids, r.getReservedInstancesOfferingId()))
                    rs.add(r);
            }
            reservedInstancesOfferings = rs;
        }
        return new DescribeReservedInstancesOfferingsResult()
                .withReservedInstancesOfferings(reservedInstancesOfferings);
    } catch (IOException e) {
        throw new AmazonClientException("Faled to parse " + url, e);
    }
}