List of usage examples for com.amazonaws.services.sqs AmazonSQS listQueues
ListQueuesResult listQueues(String queueNamePrefix);
From source file:com.streamsets.pipeline.stage.origin.sqs.SqsConsumer.java
License:Apache License
@Override protected List<ConfigIssue> init() { List<ConfigIssue> issues = super.init(); if (conf.region == AwsRegion.OTHER && (conf.endpoint == null || conf.endpoint.isEmpty())) { issues.add(getContext().createConfigIssue(Groups.SQS.name(), SQS_CONFIG_PREFIX + "endpoint", Errors.SQS_01));//ww w .j ava 2s .co m return issues; } // Propagate StringBuilder size to the service getContext().getService(DataFormatParserService.class).setStringBuilderPoolSize(getNumberOfThreads()); try { clientConfiguration = AWSUtil.getClientConfiguration(conf.proxyConfig); } catch (StageException e) { issues.add(getContext().createConfigIssue(Groups.SQS.name(), SQS_CONFIG_PREFIX + "proxyConfig", Errors.SQS_10, e.getMessage(), e)); return issues; } try { credentials = AWSUtil.getCredentialsProvider(conf.awsConfig); } catch (StageException e) { issues.add(getContext().createConfigIssue(Groups.SQS.name(), SQS_CONFIG_PREFIX + "awsConfig", Errors.SQS_11, e.getMessage(), e)); return issues; } AmazonSQS validationClient = AmazonSQSClientBuilder.standard().withRegion(conf.region.getId()) .withClientConfiguration(clientConfiguration).withCredentials(credentials).build(); for (int i = 0; i < conf.queuePrefixes.size(); i++) { final String queueNamePrefix = conf.queuePrefixes.get(i); ListQueuesResult result = validationClient.listQueues(new ListQueuesRequest(queueNamePrefix)); if (LOG.isDebugEnabled()) { LOG.debug("ListQueuesResult for prefix {}: {}", queueNamePrefix, result); } if (result.getQueueUrls().size() == 0) { //TODO: set index in issue when API-138 is implemented issues.add(getContext().createConfigIssue(Groups.SQS.name(), SQS_CONFIG_PREFIX + "queuePrefixes", Errors.SQS_02, queueNamePrefix)); } result.getQueueUrls().forEach(url -> queueUrlToPrefix.put(url, queueNamePrefix)); } if (queueUrlToPrefix.isEmpty()) { issues.add(getContext().createConfigIssue(Groups.SQS.name(), SQS_CONFIG_PREFIX + "queuePrefixes", Errors.SQS_09)); } return issues; }