List of usage examples for com.amazonaws.services.ec2.model DescribeAvailabilityZonesRequest DescribeAvailabilityZonesRequest
DescribeAvailabilityZonesRequest
From source file:com.cloudera.director.aws.ec2.EC2InstanceTemplateConfigurationValidator.java
License:Apache License
/** * Validates the configured availability zone. * * @param client the EC2 client * @param configuration the configuration to be validated * @param accumulator the exception condition accumulator * @param localizationContext the localization context *///from w w w .j av a2 s. co m @VisibleForTesting void checkAvailabilityZone(AmazonEC2Client client, Configured configuration, PluginExceptionConditionAccumulator accumulator, LocalizationContext localizationContext) { String zoneName = configuration.getConfigurationValue(AVAILABILITY_ZONE, localizationContext); if (zoneName != null) { LOG.info(">> Describing zone '{}'", zoneName); try { DescribeAvailabilityZonesResult result = client .describeAvailabilityZones(new DescribeAvailabilityZonesRequest().withZoneNames(zoneName)); checkCount(accumulator, AVAILABILITY_ZONE, localizationContext, "Availability zone", result.getAvailabilityZones()); } catch (AmazonServiceException e) { if (e.getErrorCode().equals(INVALID_PARAMETER_VALUE) && e.getMessage().contains(INVALID_AVAILABILITY_ZONE)) { addError(accumulator, AVAILABILITY_ZONE, localizationContext, null, INVALID_AVAILABILITY_ZONE_MSG, zoneName); } else { throw Throwables.propagate(e); } } } }
From source file:com.vmware.photon.controller.model.adapters.awsadapter.AWSEndpointAdapterService.java
License:Open Source License
private BiConsumer<AuthCredentialsServiceState, BiConsumer<ServiceErrorResponse, Throwable>> validate( EndpointConfigRequest body) {//from ww w . j ava2 s. c om return (credentials, callback) -> { String regionId = body.endpointProperties.get(REGION_KEY); AmazonEC2AsyncClient client = AWSUtils.getAsyncClient(credentials, regionId, this.clientManager.getExecutor(getHost())); // make a call to validate credentials client.describeAvailabilityZonesAsync(new DescribeAvailabilityZonesRequest(), new AsyncHandler<DescribeAvailabilityZonesRequest, DescribeAvailabilityZonesResult>() { @Override public void onError(Exception e) { if (e instanceof AmazonServiceException) { AmazonServiceException ase = (AmazonServiceException) e; if (ase.getStatusCode() == STATUS_CODE_UNAUTHORIZED) { ServiceErrorResponse r = Utils.toServiceErrorResponse(e); r.statusCode = STATUS_CODE_UNAUTHORIZED; callback.accept(r, e); } return; } callback.accept(null, e); } @Override public void onSuccess(DescribeAvailabilityZonesRequest request, DescribeAvailabilityZonesResult describeAvailabilityZonesResult) { callback.accept(null, null); } }); }; }
From source file:com.vmware.photon.controller.model.adapters.awsadapter.AWSInstanceService.java
License:Open Source License
private void validateAWSCredentials(final AWSAllocation aws) { if (aws.computeRequest.isMockRequest) { aws.awsOperation.complete();/* w ww. j a va2s .c o m*/ return; } aws.amazonEC2Client = this.clientManager.getOrCreateEC2Client(aws.parentAuth, getRequestRegionId(aws), this, aws.computeRequest.taskReference, false); // make a call to validate credentials aws.amazonEC2Client.describeAvailabilityZonesAsync(new DescribeAvailabilityZonesRequest(), new AsyncHandler<DescribeAvailabilityZonesRequest, DescribeAvailabilityZonesResult>() { @Override public void onError(Exception e) { if (e instanceof AmazonServiceException) { AmazonServiceException ase = (AmazonServiceException) e; if (ase.getStatusCode() == STATUS_CODE_UNAUTHORIZED) { ServiceErrorResponse r = Utils.toServiceErrorResponse(e); r.statusCode = STATUS_CODE_UNAUTHORIZED; aws.awsOperation.fail(e, r); } return; } aws.awsOperation.fail(e); } @Override public void onSuccess(DescribeAvailabilityZonesRequest request, DescribeAvailabilityZonesResult describeAvailabilityZonesResult) { aws.awsOperation.complete(); } }); }
From source file:eu.optimis.interopt.provider.aws.AmazonClient.java
License:Apache License
private List<AvailabilityZone> describeAZs(String endpoint, AmazonEC2 ec2) { ec2.setEndpoint(endpoint);//from w ww. ja va 2 s . c o m List<Filter> filters = new LinkedList<Filter>(); List<String> states = new LinkedList<String>(); states.add("available"); filters.add(new Filter("state", states)); DescribeAvailabilityZonesRequest req = new DescribeAvailabilityZonesRequest(); req.setFilters(filters); return (ArrayList<AvailabilityZone>) ec2.describeAvailabilityZones(req).getAvailabilityZones(); }
From source file:jp.aws.test.ec2.EC2Instance.java
License:Apache License
/** * ?/* www . j av a 2 s . com*/ * * @return * @note - "any"=???????????? */ public List<String> getAvailabilityZones() { List<String> itemList = new ArrayList<String>(); DescribeAvailabilityZonesRequest request = new DescribeAvailabilityZonesRequest(); DescribeAvailabilityZonesResult describeAvailabilityZonesResult = this.clientManager.ec2() .describeAvailabilityZones(request); List<AvailabilityZone> availabilityZones = describeAvailabilityZonesResult.getAvailabilityZones(); itemList.add("any"); for (AvailabilityZone az : availabilityZones) { itemList.add(az.getZoneName()); } return itemList; }
From source file:jp.primecloud.auto.aws.typica.EucaEc2Client.java
License:Open Source License
@Override public DescribeAvailabilityZonesResult describeAvailabilityZones() { return describeAvailabilityZones(new DescribeAvailabilityZonesRequest()); }
From source file:jp.primecloud.auto.process.aws.AwsCommonProcess.java
License:Open Source License
public List<AvailabilityZone> describeAvailabilityZones(AwsProcessClient awsProcessClient) { DescribeAvailabilityZonesRequest request = new DescribeAvailabilityZonesRequest(); DescribeAvailabilityZonesResult result = awsProcessClient.getEc2Client().describeAvailabilityZones(request); List<AvailabilityZone> availabilityZones = result.getAvailabilityZones(); return availabilityZones; }
From source file:jp.primecloud.auto.service.impl.AwsDescribeServiceImpl.java
License:Open Source License
/** * {@inheritDoc}//from w w w . j a va 2s . co m */ @Override public List<AvailabilityZone> getAvailabilityZones(Long userNo, Long platformNo) { // ? AwsProcessClient awsProcessClient = awsProcessClientFactory.createAwsProcessClient(userNo, platformNo); DescribeAvailabilityZonesRequest request = new DescribeAvailabilityZonesRequest(); DescribeAvailabilityZonesResult result = awsProcessClient.getEc2Client().describeAvailabilityZones(request); List<AvailabilityZone> availabilityZones = result.getAvailabilityZones(); // Collections.sort(availabilityZones, Comparators.COMPARATOR_AVAILABILITY_ZONE); return availabilityZones; }
From source file:org.apache.stratos.aws.extension.AWSHelper.java
License:Apache License
public List<String> getAvailabilityZonesFromRegion(final String region) { DescribeAvailabilityZonesRequest availabilityZonesReq = new DescribeAvailabilityZonesRequest(); List<Filter> availabilityZoneFilters = new ArrayList<Filter>(); availabilityZoneFilters.add(new Filter("region-name", new ArrayList<String>() { {//ww w. jav a2 s. c o m add(region); } })); availabilityZoneFilters.add(new Filter("state", new ArrayList<String>() { { add("available"); } })); ec2Client.setEndpoint(String.format(Constants.EC2_ENDPOINT_URL_FORMAT, region)); DescribeAvailabilityZonesResult availabilityZonesRes = null; try { availabilityZonesRes = ec2Client.describeAvailabilityZones(availabilityZonesReq); } catch (AmazonServiceException e) { log.error(e.getMessage(), e); } catch (AmazonClientException e) { log.error(e.getMessage(), e); } List<String> availabilityZones = null; if (availabilityZonesRes != null) { availabilityZones = new ArrayList<>(); for (AvailabilityZone zone : availabilityZonesRes.getAvailabilityZones()) { availabilityZones.add(zone.getZoneName()); } } else { log.error("Unable to retrieve the active availability zones for region " + region); } return availabilityZones; }
From source file:org.excalibur.service.aws.ec2.EC2.java
License:Open Source License
private Zone getZoneByName(String zoneName) { checkState(!isNullOrEmpty(zoneName)); try {//w w w . ja v a2 s. c om DescribeAvailabilityZonesResult zones = ec2_.describeAvailabilityZones( new DescribeAvailabilityZonesRequest().withZoneNames(zoneName).withFilters( new Filter().withName("region-name").withValues(credentials_.getRegion().getName()))); if (zones != null && zones.getAvailabilityZones().size() == 1) { //available | impaired | unavailable AvailabilityZone availabilityZone = zones.getAvailabilityZones().get(0); return new Zone().setName(availabilityZone.getZoneName()).setRegion(credentials_.getRegion()) .setStatus(availabilityZone.getState()); } } catch (AmazonClientException exception) { LOG.debug("Invalid zone [{}]! Error message: [{}]", zoneName, exception.getMessage(), exception); } return null; }